diff --git a/AutoConnect/AutoConnect.cs b/AutoConnect/AutoConnect.cs index ef48315..bb4d17a 100644 --- a/AutoConnect/AutoConnect.cs +++ b/AutoConnect/AutoConnect.cs @@ -42,7 +42,7 @@ namespace Miranda { } - protected override void AfterPluginInitialization() + /*protected override void AfterPluginInitialization() { base.AfterPluginInitialization(); } @@ -70,6 +70,6 @@ namespace Miranda public override object InitializeLifetimeService() { return base.InitializeLifetimeService(); - } + }*/ } } diff --git a/AutoConnect/AutoConnect.csproj b/AutoConnect/AutoConnect.csproj index 7e91266..100ad2a 100644 --- a/AutoConnect/AutoConnect.csproj +++ b/AutoConnect/AutoConnect.csproj @@ -29,6 +29,35 @@ TRACE prompt 4 + x86 + + + true + bin\x86\Debug\ + DEBUG;TRACE + full + x86 + ..\library\Managed\AutoConnect.dll.CodeAnalysisLog.xml + true + GlobalSuppressions.cs + prompt + MinimumRecommendedRules.ruleset + ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets + ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules + + + ..\library\Managed\ + TRACE + true + pdbonly + x86 + ..\library\Managed\AutoConnect.dll.CodeAnalysisLog.xml + true + GlobalSuppressions.cs + prompt + MinimumRecommendedRules.ruleset + ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\\Rule Sets + ;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\FxCop\\Rules diff --git a/Hyphen/Plugins/AssemblyProbe.cs b/Hyphen/Plugins/AssemblyProbe.cs new file mode 100644 index 0000000..f7a97b0 --- /dev/null +++ b/Hyphen/Plugins/AssemblyProbe.cs @@ -0,0 +1,29 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins +{ + public abstract class AssemblyProbe : RemoteObject + { + public abstract string[] FindAssemblies(); + } +} diff --git a/Hyphen/Plugins/Collections/ConfigurationValues.cs b/Hyphen/Plugins/Collections/ConfigurationValues.cs new file mode 100644 index 0000000..b3b034c --- /dev/null +++ b/Hyphen/Plugins/Collections/ConfigurationValues.cs @@ -0,0 +1,31 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.Serialization; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + [Serializable] + public class ConfigurationValues : Dictionary + { + public ConfigurationValues() : base(1) { } + protected ConfigurationValues(SerializationInfo info, StreamingContext context) : base(info, context) { } + } +} diff --git a/Hyphen/Plugins/Collections/ControlCollection.cs b/Hyphen/Plugins/Collections/ControlCollection.cs new file mode 100644 index 0000000..4e530cb --- /dev/null +++ b/Hyphen/Plugins/Collections/ControlCollection.cs @@ -0,0 +1,33 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + public sealed class ControlCollection : List + { + #region .ctors + + internal ControlCollection() : base(1) { } + + #endregion + } +} diff --git a/Hyphen/Plugins/Collections/CustomApiExportDescriptorCollection.cs b/Hyphen/Plugins/Collections/CustomApiExportDescriptorCollection.cs new file mode 100644 index 0000000..b4d48a8 --- /dev/null +++ b/Hyphen/Plugins/Collections/CustomApiExportDescriptorCollection.cs @@ -0,0 +1,29 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Hyphen.Mini.Custom; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + internal sealed class CustomApiExportDescriptorCollection : List + { + public CustomApiExportDescriptorCollection() : base() { } + } +} diff --git a/Hyphen/Plugins/Collections/EventHandleCollection.cs b/Hyphen/Plugins/Collections/EventHandleCollection.cs new file mode 100644 index 0000000..4589bf0 --- /dev/null +++ b/Hyphen/Plugins/Collections/EventHandleCollection.cs @@ -0,0 +1,34 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + [CLSCompliant(false)] + public sealed class EventHandleCollection : List + { + #region .ctors + + internal EventHandleCollection() : base(3) { } + + #endregion + } +} diff --git a/Hyphen/Plugins/Collections/HookDescriptorCollection.cs b/Hyphen/Plugins/Collections/HookDescriptorCollection.cs new file mode 100644 index 0000000..a37bd6a --- /dev/null +++ b/Hyphen/Plugins/Collections/HookDescriptorCollection.cs @@ -0,0 +1,55 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + internal sealed class HookDescriptorCollection : List, ITagSearchable + { + #region .ctors + + public HookDescriptorCollection() : base(3) { } + + #endregion + + #region Impl + + public new void Add(HookDescriptor item) + { + if (Contains(item)) return; + base.Add(item); + } + + public HookDescriptor Find(string name) + { + if (name == null) + throw new ArgumentNullException("name"); + + foreach (HookDescriptor descriptor in this) + if (descriptor.Name == name) + return descriptor; + + return null; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Collections/ITagSearchable.cs b/Hyphen/Plugins/Collections/ITagSearchable.cs new file mode 100644 index 0000000..a2f4df1 --- /dev/null +++ b/Hyphen/Plugins/Collections/ITagSearchable.cs @@ -0,0 +1,26 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + internal interface ITagSearchable + { + T Find(string tag); + } +} diff --git a/Hyphen/Plugins/Collections/MenuItemDeclarationCollection.cs b/Hyphen/Plugins/Collections/MenuItemDeclarationCollection.cs new file mode 100644 index 0000000..66e792a --- /dev/null +++ b/Hyphen/Plugins/Collections/MenuItemDeclarationCollection.cs @@ -0,0 +1,53 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + public sealed class MenuItemDeclarationCollection : List, ITagSearchable + { + #region .ctors + + internal MenuItemDeclarationCollection() : base(3) { } + + #endregion + + #region Impl + + public MenuItemDeclarationAttribute this[string tag] + { + get + { + return Find(tag); + } + } + + public MenuItemDeclarationAttribute Find(string tag) + { + foreach (MenuItemDeclarationAttribute item in this) + if (item.Tag.Equals(tag, StringComparison.Ordinal)) return item; + + return null; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Collections/MenuItemDeclarationReadOnlyCollection.cs b/Hyphen/Plugins/Collections/MenuItemDeclarationReadOnlyCollection.cs new file mode 100644 index 0000000..2e3beb7 --- /dev/null +++ b/Hyphen/Plugins/Collections/MenuItemDeclarationReadOnlyCollection.cs @@ -0,0 +1,58 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Collections.ObjectModel; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + public sealed class MenuItemDeclarationReadOnlyCollection : ReadOnlyCollection, ITagSearchable + { + #region .ctors + + internal MenuItemDeclarationReadOnlyCollection(MenuItemDeclarationCollection list) : base(list) { } + + #endregion + + #region Impl + + public MenuItemDeclarationAttribute this[string tag] + { + get + { + return Find(tag); + } + } + + public MenuItemDeclarationAttribute Find(string tag) + { + if (String.IsNullOrEmpty(tag)) + throw new ArgumentNullException("tag"); + + foreach (MenuItemDeclarationAttribute item in this) + if (tag.Equals(item.Tag, StringComparison.Ordinal)) + return item; + + return null; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Collections/ModuleCollection.cs b/Hyphen/Plugins/Collections/ModuleCollection.cs new file mode 100644 index 0000000..4f049db --- /dev/null +++ b/Hyphen/Plugins/Collections/ModuleCollection.cs @@ -0,0 +1,33 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Hyphen.Mini; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + public sealed class ModuleCollection : List + { + #region .ctors + + internal ModuleCollection() : base(1) { } + + #endregion + } +} diff --git a/Hyphen/Plugins/Collections/ModuleReadOnlyCollection.cs b/Hyphen/Plugins/Collections/ModuleReadOnlyCollection.cs new file mode 100644 index 0000000..b923e58 --- /dev/null +++ b/Hyphen/Plugins/Collections/ModuleReadOnlyCollection.cs @@ -0,0 +1,35 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Collections.ObjectModel; +using Virtuoso.Hyphen.Mini; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + public sealed class ModuleReadOnlyCollection : ReadOnlyCollection + { + #region .ctors + + internal ModuleReadOnlyCollection(ModuleCollection list) : base(list) { } + + #endregion + } +} diff --git a/Hyphen/Plugins/Collections/PluginDescriptorCollection.cs b/Hyphen/Plugins/Collections/PluginDescriptorCollection.cs new file mode 100644 index 0000000..ea898b4 --- /dev/null +++ b/Hyphen/Plugins/Collections/PluginDescriptorCollection.cs @@ -0,0 +1,77 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + /* DO NOT USE FIND... OR CONTAINS... METHODS THAT ACCEPT A TYPE INSTANCE FROM ANOTHER APPDOMAIN, + * YOU MAY LEAK ITS ASSEMBLY TO THAT DOMAIN. */ + public sealed class PluginDescriptorCollection : List + { + #region .ctors + + internal PluginDescriptorCollection() : base(3) { } + + #endregion + + #region Find methods + + public PluginDescriptor FindDescriptorOf(MirandaPlugin plugin) + { + if (plugin == null) + throw new ArgumentNullException("plugin"); + + foreach (PluginDescriptor descriptor in this) + if (descriptor.Plugin == plugin) return descriptor; + + return null; + } + + public PluginDescriptor FindDescriptorOf(Type pluginType) + { + if (pluginType == null) + throw new ArgumentNullException("plugin"); + + if (!pluginType.IsSubclassOf(DefaultPluginManager.PluginType)) + return null; + + foreach (PluginDescriptor descriptor in this) + if (descriptor.Plugin.GetType() == pluginType) return descriptor; + + return null; + } + + #endregion + + #region Contains methods + + public bool ContainsDescriptorOf(MirandaPlugin plugin) + { + return (FindDescriptorOf(plugin) != null); + } + + public bool ContainsDescriptorOf(Type pluginType) + { + return (FindDescriptorOf(pluginType) != null); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Collections/PluginDescriptorReadOnlyCollection.cs b/Hyphen/Plugins/Collections/PluginDescriptorReadOnlyCollection.cs new file mode 100644 index 0000000..8bcf8c8 --- /dev/null +++ b/Hyphen/Plugins/Collections/PluginDescriptorReadOnlyCollection.cs @@ -0,0 +1,64 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Collections.ObjectModel; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + /* DO NOT USE FIND... OR CONTAINS... METHODS THAT ACCEPT A TYPE INSTANCE FROM ANOTHER APPDOMAIN, + * YOU MAY LEAK AN ASSEMBLY TO THAT DOMAIN. */ + public sealed class PluginDescriptorReadOnlyCollection : ReadOnlyCollection + { + #region .ctors + + internal PluginDescriptorReadOnlyCollection(PluginDescriptorCollection list) : base(list) { } + + #endregion + + #region Find methods + + public PluginDescriptor FindDescriptorOf(MirandaPlugin plugin) + { + return ((PluginDescriptorCollection)Items).FindDescriptorOf(plugin); + } + + public PluginDescriptor FindDescriptorOf(Type pluginType) + { + return ((PluginDescriptorCollection)Items).FindDescriptorOf(pluginType); + } + + #endregion + + #region Contains methods + + public bool ContainsDescriptorOf(MirandaPlugin plugin) + { + return ((PluginDescriptorCollection)Items).FindDescriptorOf(plugin) != null; + } + + public bool ContainsDescriptorOf(Type pluginType) + { + return ((PluginDescriptorCollection)Items).FindDescriptorOf(pluginType) != null; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Collections/ProtocolDictionary.cs b/Hyphen/Plugins/Collections/ProtocolDictionary.cs new file mode 100644 index 0000000..890431c --- /dev/null +++ b/Hyphen/Plugins/Collections/ProtocolDictionary.cs @@ -0,0 +1,53 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Runtime.Serialization; +using System.Diagnostics; + +namespace Virtuoso.Miranda.Plugins.Collections +{ + public sealed class ProtocolDictionary : Dictionary + { + #region .ctors + + internal ProtocolDictionary(int count) : base(count) { } + + #endregion + + #region Indexers + + public new Protocol this[string key] + { + get + { + bool notFound = (key == null || !ContainsKey(key)); + Debug.Assert(!notFound); + + if (notFound) + return Protocol.UnknownProtocol; + + return base[key]; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/ConfigurableMirandaPlugin.cs b/Hyphen/Plugins/ConfigurableMirandaPlugin.cs new file mode 100644 index 0000000..d8db843 --- /dev/null +++ b/Hyphen/Plugins/ConfigurableMirandaPlugin.cs @@ -0,0 +1,101 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Configuration.Forms.Controls; +using Virtuoso.Miranda.Plugins.Configuration.Forms; +using Virtuoso.Miranda.Plugins.Configuration; + +namespace Virtuoso.Miranda.Plugins +{ + public abstract class ConfigurableMirandaPlugin : MirandaPlugin, IConfigurablePluginBase where TConfiguration : PluginConfiguration + { + #region Fields + + private TConfiguration pluginConfiguration; + public TConfiguration PluginConfiguration + { + get { return pluginConfiguration; } + } + + private PluginConfiguration[] configuration; + PluginConfiguration[] IConfigurablePlugin.Configuration + { + get { return configuration ?? (configuration = new PluginConfiguration[] { pluginConfiguration }); } + } + + #endregion + + #region .ctors + + protected ConfigurableMirandaPlugin() { } + + #endregion + + #region Methods + + internal override void AfterPluginInitializationInternal() + { + pluginConfiguration = Infrastructure.PluginConfiguration.Load(); + base.AfterPluginInitializationInternal(); + } + + internal override void BeforePluginDisableInternal() + { + SaveConfiguration(); + base.BeforePluginDisableInternal(); + } + + internal override void BeforeMirandaShutdownInternal() + { + SaveConfiguration(); + base.BeforeMirandaShutdownInternal(); + } + + private void SaveConfiguration() + { + //if (pluginConfiguration.IsDirty) + pluginConfiguration.Save(); + } + + public void ResetConfiguration() + { + pluginConfiguration = Infrastructure.PluginConfiguration.GetDefaultConfiguration(); + } + + public void ReloadConfiguration() + { + pluginConfiguration = Infrastructure.PluginConfiguration.Load(); + } + + public abstract void PopulateConfiguration(CategoryCollection categories); + + #endregion + + #region Properties + + public override bool HasOptions + { + get { return true; } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/Category.cs b/Hyphen/Plugins/Configuration/Category.cs new file mode 100644 index 0000000..9c82a8c --- /dev/null +++ b/Hyphen/Plugins/Configuration/Category.cs @@ -0,0 +1,73 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Drawing; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + [Serializable] + public sealed class Category + { + #region Fields + + private string name, description; + private CategoryItemCollection items; + + #endregion + + #region .ctors + + public Category(string name, string description) + { + if (String.IsNullOrEmpty(name)) + throw new ArgumentNullException("name"); + + if (String.IsNullOrEmpty(description)) + throw new ArgumentNullException("description"); + + this.items = new CategoryItemCollection(); + this.name = name; + this.description = description; + } + + #endregion + + #region Properties + + public string Description + { + get { return description; } + } + + public string Name + { + get { return name; } + } + + public CategoryItemCollection Items + { + get { return items; } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/CategoryCollection.cs b/Hyphen/Plugins/Configuration/CategoryCollection.cs new file mode 100644 index 0000000..f0a9cd0 --- /dev/null +++ b/Hyphen/Plugins/Configuration/CategoryCollection.cs @@ -0,0 +1,33 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + [Serializable] + public sealed class CategoryCollection : List + { + #region .ctors + + public CategoryCollection() : base(1) { } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/CategoryItem.cs b/Hyphen/Plugins/Configuration/CategoryItem.cs new file mode 100644 index 0000000..3179786 --- /dev/null +++ b/Hyphen/Plugins/Configuration/CategoryItem.cs @@ -0,0 +1,133 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; +using System.Drawing; +using Virtuoso.Miranda.Plugins.Configuration.Forms.Controls; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + [Serializable] + public sealed class CategoryItem + { + #region Delegates + + public delegate void Command(CategoryItem item); + + #endregion + + #region Fields + + private string name, description; + private CategoryItemControl control; + private Type controlType; + private Image image; + + private bool isExpertOption; + + #endregion + + #region .ctors + + public CategoryItem(string name, string description, Command command) + : this(name, description) + { + if (command == null) + throw new ArgumentNullException("command"); + + control = new CategoryItemCommandControl(this, command); + } + + public CategoryItem(string name, string description, Type itemOptionsType) + : this(name, description) + { + if (itemOptionsType == null) + throw new ArgumentNullException("itemOptionsType"); + + if (!itemOptionsType.IsSubclassOf(typeof(CategoryItemControl))) + throw new ArgumentException("Type must derive from the CategoryItemOptionsControl class.", "itemOptionsType"); + + this.controlType = itemOptionsType; + } + + private CategoryItem(string name, string description) + { + if (String.IsNullOrEmpty(name)) + throw new ArgumentNullException("name"); + + if (String.IsNullOrEmpty(description)) + throw new ArgumentNullException("description"); + + this.name = name; + this.description = description; + } + + #endregion + + #region Properties + + public string Name + { + get { return name; } + } + + public string Description + { + get { return description; } + } + + public Image Image + { + get { return image; } + set { image = value; } + } + + internal CategoryItemControl Control + { + get + { + if (control == null) + { + control = (CategoryItemControl)Activator.CreateInstance(controlType, true); + control.Initialize(this); + } + + return control; + } + } + + internal bool ControlInitialized + { + get + { + return control != null; + } + } + + public bool IsExpertOption + { + get { return isExpertOption; } + set { isExpertOption = value; } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/CategoryItemCollection.cs b/Hyphen/Plugins/Configuration/CategoryItemCollection.cs new file mode 100644 index 0000000..ac60a16 --- /dev/null +++ b/Hyphen/Plugins/Configuration/CategoryItemCollection.cs @@ -0,0 +1,33 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + [Serializable] + public sealed class CategoryItemCollection : List + { + #region .ctors + + internal CategoryItemCollection() : base(1) { } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/ConfigurableEntityDescriptor.cs b/Hyphen/Plugins/Configuration/ConfigurableEntityDescriptor.cs new file mode 100644 index 0000000..d0d46af --- /dev/null +++ b/Hyphen/Plugins/Configuration/ConfigurableEntityDescriptor.cs @@ -0,0 +1,55 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + internal class ConfigurableEntityDescriptor + { + #region .ctors + + public ConfigurableEntityDescriptor(IConfigurablePlugin plugin) + { + if (plugin == null) + throw new ArgumentNullException("plugin"); + + this.plugin = plugin; + } + + #endregion + + #region Properties + + private IConfigurablePlugin plugin; + public IConfigurablePlugin Plugin + { + get { return plugin; } + } + + private CategoryCollection categories; + public CategoryCollection Categories + { + get { return categories; } + set { categories = value; } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/ConfigurationDialog.Designer.cs b/Hyphen/Plugins/Configuration/Forms/ConfigurationDialog.Designer.cs new file mode 100644 index 0000000..0f7f6e9 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/ConfigurationDialog.Designer.cs @@ -0,0 +1,178 @@ +namespace Virtuoso.Miranda.Plugins.Configuration.Forms +{ + partial class ConfigurationDialog + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigurationDialog)); + this.TopPanel = new System.Windows.Forms.Panel(); + this.RibbonPageSwitcher = new RibbonStyle.TabPageSwitcher(); + this.RibbonStrip = new RibbonStyle.TabStrip(); + this.BottomPanel = new System.Windows.Forms.Panel(); + this.CancelBTN = new System.Windows.Forms.Button(); + this.OkBTN = new System.Windows.Forms.Button(); + this.ControlPanel = new System.Windows.Forms.Panel(); + this.WelcomePanel = new Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader(); + this.TopPanel.SuspendLayout(); + this.BottomPanel.SuspendLayout(); + this.ControlPanel.SuspendLayout(); + this.SuspendLayout(); + // + // TopPanel + // + this.TopPanel.Controls.Add(this.RibbonPageSwitcher); + this.TopPanel.Controls.Add(this.RibbonStrip); + this.TopPanel.Dock = System.Windows.Forms.DockStyle.Top; + this.TopPanel.Location = new System.Drawing.Point(0, 0); + this.TopPanel.Name = "TopPanel"; + this.TopPanel.Size = new System.Drawing.Size(794, 127); + this.TopPanel.TabIndex = 0; + // + // RibbonPageSwitcher + // + this.RibbonPageSwitcher.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(191)))), ((int)(((byte)(219)))), ((int)(((byte)(255))))); + this.RibbonPageSwitcher.Dock = System.Windows.Forms.DockStyle.Fill; + this.RibbonPageSwitcher.Location = new System.Drawing.Point(0, 26); + this.RibbonPageSwitcher.Name = "RibbonPageSwitcher"; + this.RibbonPageSwitcher.SelectedTabStripPage = null; + this.RibbonPageSwitcher.Size = new System.Drawing.Size(794, 101); + this.RibbonPageSwitcher.TabIndex = 1; + this.RibbonPageSwitcher.TabStrip = this.RibbonStrip; + this.RibbonPageSwitcher.Text = "RibbonPageSwitcher"; + // + // RibbonStrip + // + this.RibbonStrip.AutoSize = false; + this.RibbonStrip.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(191)))), ((int)(((byte)(219)))), ((int)(((byte)(255))))); + this.RibbonStrip.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.RibbonStrip.Location = new System.Drawing.Point(0, 0); + this.RibbonStrip.Name = "RibbonStrip"; + this.RibbonStrip.Padding = new System.Windows.Forms.Padding(60, 3, 30, 0); + this.RibbonStrip.SelectedTab = null; + this.RibbonStrip.ShowItemToolTips = false; + this.RibbonStrip.Size = new System.Drawing.Size(794, 26); + this.RibbonStrip.TabIndex = 0; + this.RibbonStrip.TabOverlap = 0; + this.RibbonStrip.Text = "tabStrip1"; + // + // BottomPanel + // + this.BottomPanel.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(191)))), ((int)(((byte)(219)))), ((int)(((byte)(255))))); + this.BottomPanel.Controls.Add(this.CancelBTN); + this.BottomPanel.Controls.Add(this.OkBTN); + this.BottomPanel.Dock = System.Windows.Forms.DockStyle.Bottom; + this.BottomPanel.Location = new System.Drawing.Point(0, 529); + this.BottomPanel.Name = "BottomPanel"; + this.BottomPanel.Size = new System.Drawing.Size(794, 39); + this.BottomPanel.TabIndex = 1; + // + // CancelBTN + // + this.CancelBTN.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.CancelBTN.Location = new System.Drawing.Point(93, 7); + this.CancelBTN.Name = "CancelBTN"; + this.CancelBTN.Size = new System.Drawing.Size(75, 23); + this.CancelBTN.TabIndex = 0; + this.CancelBTN.Text = "Cancel"; + this.CancelBTN.UseVisualStyleBackColor = true; + this.CancelBTN.Click += new System.EventHandler(this.CancelBTN_Click); + // + // OkBTN + // + this.OkBTN.DialogResult = System.Windows.Forms.DialogResult.OK; + this.OkBTN.Location = new System.Drawing.Point(12, 7); + this.OkBTN.Name = "OkBTN"; + this.OkBTN.Size = new System.Drawing.Size(75, 23); + this.OkBTN.TabIndex = 0; + this.OkBTN.Text = "OK"; + this.OkBTN.UseVisualStyleBackColor = true; + this.OkBTN.Click += new System.EventHandler(this.OkBTN_Click); + // + // ControlPanel + // + this.ControlPanel.AutoScroll = true; + this.ControlPanel.Controls.Add(this.WelcomePanel); + this.ControlPanel.Dock = System.Windows.Forms.DockStyle.Fill; + this.ControlPanel.Location = new System.Drawing.Point(0, 127); + this.ControlPanel.Name = "ControlPanel"; + this.ControlPanel.Size = new System.Drawing.Size(794, 402); + this.ControlPanel.TabIndex = 2; + // + // WelcomePanel + // + this.WelcomePanel.BackColor = System.Drawing.Color.Transparent; + this.WelcomePanel.Color = System.Drawing.Color.FromArgb(((int)(((byte)(191)))), ((int)(((byte)(219)))), ((int)(((byte)(255))))); + this.WelcomePanel.Dock = System.Windows.Forms.DockStyle.Top; + this.WelcomePanel.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.WelcomePanel.HeaderFont = new System.Drawing.Font("Tahoma", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.WelcomePanel.HeaderText = " Select a tab and pick a section to configure..."; + this.WelcomePanel.Image = ((System.Drawing.Image)(resources.GetObject("WelcomePanel.Image"))); + this.WelcomePanel.Location = new System.Drawing.Point(0, 0); + this.WelcomePanel.MinimumSize = new System.Drawing.Size(300, 40); + this.WelcomePanel.Name = "WelcomePanel"; + this.WelcomePanel.Size = new System.Drawing.Size(794, 100); + this.WelcomePanel.TabIndex = 1; + // + // ConfigurationDialog + // + this.AcceptButton = this.OkBTN; + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BackColor = System.Drawing.SystemColors.Window; + this.CancelButton = this.CancelBTN; + this.ClientSize = new System.Drawing.Size(794, 568); + this.Controls.Add(this.ControlPanel); + this.Controls.Add(this.TopPanel); + this.Controls.Add(this.BottomPanel); + this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.MinimumSize = new System.Drawing.Size(800, 600); + this.Name = "ConfigurationDialog"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Hyphen Configuration Center"; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.ConfigurationDialog_FormClosing); + this.TopPanel.ResumeLayout(false); + this.BottomPanel.ResumeLayout(false); + this.ControlPanel.ResumeLayout(false); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Panel TopPanel; + private RibbonStyle.TabPageSwitcher RibbonPageSwitcher; + private RibbonStyle.TabStrip RibbonStrip; + private System.Windows.Forms.Button CancelBTN; + private System.Windows.Forms.Button OkBTN; + private System.Windows.Forms.Panel ControlPanel; + private System.Windows.Forms.Panel BottomPanel; + private Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader WelcomePanel; + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Configuration/Forms/ConfigurationDialog.cs b/Hyphen/Plugins/Configuration/Forms/ConfigurationDialog.cs new file mode 100644 index 0000000..d2ac0f8 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/ConfigurationDialog.cs @@ -0,0 +1,460 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Miranda.Plugins.Properties; +using Virtuoso.Miranda.Plugins.Configuration.Forms.Controls; +using RibbonStyle; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Collections; +using Virtuoso.Hyphen; +using Virtuoso.Hyphen.Mini; +using System.Collections.ObjectModel; +using Virtuoso.Miranda.Plugins.Forms; +using Virtuoso.Hyphen.Configuration; + +namespace Virtuoso.Miranda.Plugins.Configuration.Forms +{ + /// Casablanca + public sealed partial class ConfigurationDialog : SingletonDialog + { + #region Fields + + private bool Ok; + private List ConfigurableEntities; + + private const char PathSeparator = '/'; + + private string[] CurrentPath; + private string ConfigurationParameter; + + private CategoryCollection categories; + + #endregion + + #region .ctors + + private ConfigurationDialog() + { + InitializeComponent(); + ((RibbonStyle.TabStripProfessionalRenderer)RibbonStrip.Renderer).HaloColor = Color.FromArgb(254, 209, 94); + ((RibbonStyle.TabStripProfessionalRenderer)RibbonStrip.Renderer).BaseColor = Color.FromArgb(215, 227, 242); + + categories = new CategoryCollection(); + ConfigurableEntities = new List(5); + } + + public static void Present(bool modal) + { + Present(modal, null, null); + } + + public static void Present(bool modal, IConfigurablePlugin plugin) + { + Present(modal, plugin, null); + } + + public static void Present(bool modal, string path) + { + Present(modal, null, path); + } + + public static void Present(bool modal, IConfigurablePlugin plugin, string path) + { + ConfigurationDialog dialog = ConfigurationDialog.GetSingleton(false); + + if (dialog == null) + { + dialog = new ConfigurationDialog(); + + dialog.SetPath(path); + dialog.Populate(plugin); + } + + dialog.ShowSingleton(modal); + } + + #endregion + + #region UI Handlers + + private void OkBTN_Click(object sender, EventArgs e) + { + Ok = true; + Close(); + } + + private void CancelBTN_Click(object sender, EventArgs e) + { + Ok = false; + Close(); + } + + private void ConfigurationDialog_FormClosing(object sender, FormClosingEventArgs e) + { + if (Ok && !CanDismissActiveControl()) + { + e.Cancel = true; + return; + } + + foreach (ConfigurableEntityDescriptor descriptor in ConfigurableEntities) + ProcessChanges(descriptor, Ok); + + if (Ok) + Settings.Default.Save(); + } + + private void ProcessChanges(ConfigurableEntityDescriptor descriptor, bool save) + { + foreach (Category category in descriptor.Categories) + { + foreach (CategoryItem item in category.Items) + { + if (!item.ControlInitialized) + continue; + + CategoryItemControl control = item.Control; + + if (save && control.IsDirty) + control.Save(); + + control.Close(); + } + } + + if (save) + { + foreach (PluginConfiguration config in descriptor.Plugin.Configuration) + if (config != null) + config.Save(); + } + } + + #endregion + + #region Methods + + #region Create/Set path + + public static string CreatePath(IConfigurablePlugin plugin, string category, string item) + { + return CreatePath(plugin, category, item, null); + } + + public static string CreatePath(IConfigurablePlugin plugin, string category, string item, string parameter) + { + if (plugin == null) + throw new ArgumentNullException("plugin"); + + if (String.IsNullOrEmpty(category)) + throw new ArgumentNullException("category"); + + if (String.IsNullOrEmpty(item)) + throw new ArgumentNullException("item"); + + return String.Format("{1}{0}{2}{0}{3}{0}{4}", PathSeparator.ToString(), plugin.Name, category, item, (parameter ?? String.Empty)); + } + + private void SetPath(string path) + { + if (String.IsNullOrEmpty(path)) + return; + + CurrentPath = path.Split(PathSeparator); + + if (CurrentPath.Length != 4) + throw new ArgumentOutOfRangeException("path"); + + ConfigurationParameter = (String.IsNullOrEmpty(CurrentPath[3]) ? null : CurrentPath[3]); + } + + private bool CanNavigateTo(IConfigurablePlugin plugin, Category category) + { + if (plugin == null) + throw new ArgumentNullException("plugin"); + + if (category == null) + throw new ArgumentNullException("category"); + + if (CurrentPath == null) + return false; + + return (CurrentPath[0] == plugin.Name && CurrentPath[1] == category.Name); + } + + private bool CanNavigateTo(CategoryItem item) + { + if (item == null) + throw new ArgumentNullException("item"); + + if (CurrentPath == null) + return false; + + return CurrentPath[2] == item.Name; + } + + #endregion + + #region Entity population + + private void Populate(IConfigurablePlugin pluginToPopulate) + { + ConfigurableEntities.Clear(); + + RibbonPageSwitcher.SelectedTabStripPage = null; + RibbonStrip.Items.Clear(); + + if (pluginToPopulate == null) + { + PopulateHyphenConfiguration(); + + if (AppDomain.CurrentDomain.IsDefaultAppDomain()) + PopulateStandalonePlugins(); + else + PopulateIsolatedPlugins(); + } + else + { + ConfigurableEntities.Add(new ConfigurableEntityDescriptor(pluginToPopulate)); + Text += String.Format(" : {0}", pluginToPopulate.Name); + } + + PopulateItems(); + } + + private void PopulateItems() + { + CategoryCollection categories = null; + + for (int i = 0; i < ConfigurableEntities.Count; i++) + { + ConfigurableEntityDescriptor descriptor = ConfigurableEntities[i]; + TabStripPage page = CreateAndRegisterEntityPage(categories, descriptor.Plugin, i); + + descriptor.Categories = (categories = new CategoryCollection()); + descriptor.Plugin.PopulateConfiguration(categories); + + for (int j = 0; j < categories.Count; j++) + { + Category category = categories[j]; + + if (category == null) + continue; + + PopulateCategoryPanel(page, category, descriptor.Plugin, j); + } + } + } + + private void PopulateIsolatedPlugins() + { + PluginDescriptorReadOnlyCollection plugins = MirandaContext.Current.PluginManager.Plugins; + + try + { + SynchronizationHelper.BeginCollectionUpdate(plugins); + + foreach (PluginDescriptor descriptor in plugins) + if (descriptor.IsConfigurable) + ConfigurableEntities.Add(new ConfigurableEntityDescriptor((IConfigurablePlugin)descriptor.Plugin)); + } + finally + { + SynchronizationHelper.EndUpdate(plugins); + } + } + + private void PopulateStandalonePlugins() + { + ModuleReadOnlyCollection modules = ModuleManager.Singleton.RegisteredModules; + + try + { + SynchronizationHelper.BeginCollectionUpdate(modules); + + foreach (Module module in modules) + if (module.StandalonePlugin.Descriptor.IsConfigurable) + ConfigurableEntities.Add(new ConfigurableEntityDescriptor((IConfigurablePlugin)module.StandalonePlugin)); + } + finally + { + SynchronizationHelper.EndUpdate(modules); + } + } + + private void PopulateHyphenConfiguration() + { + if (AppDomain.CurrentDomain.IsDefaultAppDomain()) + ConfigurableEntities.Add(new ConfigurableEntityDescriptor(RuntimeConfigurator.Singleton)); + else + ConfigurableEntities.Add(new ConfigurableEntityDescriptor(PMConfigurator.Singleton)); + } + + #endregion + + #region Entity control creation + + private void PopulateCategoryPanel(TabStripPage entityPage, Category category, IConfigurablePlugin plugin, int index) + { + TabPanel categoryPanel = CreateCategoryPanel(category, index); + entityPage.Controls.Add(categoryPanel); + + if (CanNavigateTo(plugin, category)) + RibbonPageSwitcher.SelectedTabStripPage = entityPage; + + Point nextLocation = new Point(); + + foreach (CategoryItem item in category.Items) + { + RibbonButton btn = CreateButton(item, ref nextLocation); + categoryPanel.Controls.Add(btn); + + if (CanNavigateTo(item)) + RibbonButton_Click(btn, EventArgs.Empty); + } + } + + private RibbonButton CreateButton(CategoryItem item, ref Point nextLocation) + { + RibbonButton btn = new RibbonButton(); + btn.Text = item.Name; + + btn.ShowInfoTips = true; + btn.InfoTitle = item.Name; + btn.InfoComment = item.Description; + + if (item.Image == null) + item.Image = VisualResources.Image_64x67_Configuration; + + btn.img = item.Image; + btn.Size = btn.img.Size; + + if (nextLocation.IsEmpty) + nextLocation = new Point(-btn.Size.Width, 6); + + btn.img_on = Properties.Resources.RibbonHover; + btn.img_click = Properties.Resources.RibbonClick; + + nextLocation.Offset(btn.img.Size.Width + 5, 0); + btn.Location = nextLocation; + + btn.Tag = item; + btn.Click += RibbonButton_Click; + + return btn; + } + + private TabPanel CreateCategoryPanel(Category category, int index) + { + TabPanel categoryPanel = new TabPanel(); + + categoryPanel.BaseColor = System.Drawing.Color.FromArgb(215, 227, 242); + categoryPanel.BaseColorOn = System.Drawing.Color.FromArgb(233, 239, 248); + categoryPanel.Dock = System.Windows.Forms.DockStyle.Left; + categoryPanel.ForeColor = System.Drawing.SystemColors.Desktop; + categoryPanel.Location = new System.Drawing.Point(101, 3); + categoryPanel.Opacity = 255; + categoryPanel.Padding = new System.Windows.Forms.Padding(6, 3, 6, 0); + categoryPanel.AutoSize = true; + categoryPanel.AutoSizeMode = AutoSizeMode.GrowAndShrink; + categoryPanel.Speed = 1; + categoryPanel.TabIndex = index; + categoryPanel.Caption = category.Name; + + return categoryPanel; + } + + private TabStripPage CreateAndRegisterEntityPage(CategoryCollection categories, IConfigurablePlugin entity, int index) + { + TabStripPage entityPage = new TabStripPage(); + entityPage.BaseColor = System.Drawing.Color.FromArgb(215, 227, 242); + entityPage.BaseColorOn = System.Drawing.Color.FromArgb(215, 227, 242); + entityPage.Dock = System.Windows.Forms.DockStyle.Fill; + entityPage.Opacity = 255; + entityPage.Padding = new System.Windows.Forms.Padding(0, 3, 0, 0); + entityPage.Size = new System.Drawing.Size(784, 99); + entityPage.Speed = 1; + entityPage.TabIndex = index; + + RibbonPageSwitcher.Controls.Add(entityPage); + + Tab entityTab = new Tab(entity.Name); + entityTab.AutoSize = false; + entityTab.Checked = true; + entityTab.CheckState = CheckState.Checked; + entityTab.ForeColor = System.Drawing.Color.FromArgb(44, 90, 154); + entityTab.Margin = new Padding(6, 1, 0, 2); + entityTab.Size = new Size(73, 23); + entityTab.Text = entity.Name; + entityTab.TabStripPage = entityPage; + + if (entity is IInternalConfigurator) + entityTab.Image = VisualResources.Icon_16x16_Hyphen.ToBitmap(); + + RibbonStrip.Items.Add(entityTab); + + return entityPage; + } + + #endregion + + #region Entity control handling + + private bool CanDismissActiveControl() + { + if (ControlPanel.Controls.Count > 0 && ControlPanel.Controls[0] is CategoryItemControl) + return !((CategoryItemControl)ControlPanel.Controls[0]).OnHide(); + else + return true; + } + + private void RibbonButton_Click(object sender, EventArgs e) + { + RibbonButton btn = (RibbonButton)sender; + CategoryItem item = (CategoryItem)btn.Tag; + + bool firstTime = !item.ControlInitialized; + CategoryItemControl control = item.Control; + + control.OnSelected(); + + if (control.HasUI && !control.OnShow(firstTime)) + { + if (!CanDismissActiveControl()) + return; + + control.ConfigurationParameter = ConfigurationParameter; + ControlPanel.Controls.Clear(); + + control.Dock = DockStyle.Fill; + ControlPanel.Controls.Add(control); + } + } + + #endregion + + #endregion + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Configuration/Forms/ConfigurationDialog.resx b/Hyphen/Plugins/Configuration/Forms/ConfigurationDialog.resx new file mode 100644 index 0000000..0d98774 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/ConfigurationDialog.resx @@ -0,0 +1,222 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAACoAAAAvCAYAAACVDljoAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALEwAA + CxMBAJqcGAAAD8hJREFUaEPFmAlQVHeex1EzW5kcNVObydbEzGyyqWQcx52Z3cTNpmYn5tgkauKYSUw0 + 8YgSoxHFg1tBTjma5r6P5j7ECIrhBkHuhuZquoFumqZvupFbVPCi+7u//2s84pjAmK1dqj71f/14r/vz + /77/+ZZc08bPLPuJzeWlS5cZlyy10S95ZJnOxmbZiI0NWmyW2ChtzDenlj6975rN//efZTITV9T5uDUQ + /EDMxrRpsyHmpMUQ8jUMYR8Tb0AftgKG0Kf+T93NY8m4NZ6KaW0mrunP4pYy7LvCg1G4xVDwcLM/6A5z + A0E3CZNZGSy8XZoHg9Msg/yDdG4dlb/9X60ITFGYG4mB5VI85q5k4rI+CzO6MyQcbhW+LXr78/ckb30i + PK5CHHR8U8GbpeORmwPBfeZBfvmU2De+t8LhFw9VARgjcWskGubJeJgvJ8E8nYS5qQxc1mVTwoXf2yS+ + r6ksdH6o2f38w4kOkegwiY7HwUKSlkuJVqYo4Yk0XNFmY5ZL+L4m8YPJPri9s0pckfrj4UQNESQaBfNY + LMwkaJ5K4CTNk3FW+dE4SjwFE4os3FALfnTC09ITcw8nqqW2aIrE3GgMSTLBeFhYM5gg0dFYEqXz1DRm + dCT8kCnee98lid+NhxPV0CNdpKiwJOhHy06Ifa8/nKg6FDeHIqjnR8NCKXJwj9yappVozBoScDpmOySl + jhjr8L0jTD2aereVxSQ+3unzsImSqD4MczRMsUd993FbHzmTNI9E0aOPx8nIrWg4tR/CAnv0n3fFTB+N + q5wkNxQtSnSs3ftHJKoLxZwxghOzylkluWNWUmeb0cbhZMRW1J+y42j8Zj/JuuAGCXL0L050VOT1cKJm + ZQhuaENwi0RZendgkhejYCFJC7XhGU0scsOtiTJRVrafO4yxzgCoGrxRlLIX0X7bwfPcjSAvOw6+z17E + BdqiNN0O2mZfzMiCMdzq+ZCi1MZuaEh0KBxmEmMwQZYig0maaVKYUcciJ/zzO6K1J/ejIms/UkK+QFyI + MzKzUpGQfgoxGWcRnVmEyPRCRKTmIyY1D1k52UiJ9UJ+4j70nT96Y5+z70/+7g7Fprrraj5u6Un0Xrl5 + QQtNCGYaa2dUd0Uv5NohhbcFxw5+hJzsVMRnnkZkdgXSStqRX9+Lb4X9KKjrQXpJM0LSzsEzIh28uAzk + ncpFeuShuWd//dzKQ8f5//B3yd6Uk+gg9VhtKCyUHBPjMDCoOegZ4SQag+ywz8Ekg1w/wGG7zxAWHY/k + /GqUdagh1o9CbhpHn3EC0qEpSI2EaRoS4zTqe7RIK6zBUX4CYlJykJ6eUfb8c8+tsXMLfGTRsjdkQbjG + FhA0TJlJisHkzCxhXTgsujAqQzGrikZGyGcQBG3BgS83gB8WidCkPDRI1ZAZTOgzDEOqG0G3bpQYh1g3 + gS6iWz+JHuMkpFSR4sYOHPSNsoTEZlw+7uGR8fyLK59btOg1WSBoWgNIhkNDULqgdmuFkqbONkuJRhz/ + EPZfvI6oyHCEJWQi60w5pINKyPV69OgN6NEaIdFdJEhWMwaxljHOyfcax6AYHkNsfoVlm3OkPPd04fjW + rdu2fLh175OLkp3p8QdNa1ZBFYPkGOq7mKkNzypjcMT2dTjY7UBMcgZ1nNMoLCtG76AcMp0GvToterVW + WamO0tWaINEOk/QIYYKUElcYR1DVJbMcTqgt3+vK0yUnJ7eteXfDKqeAhCULyl6m1cyk2NcqNngPt4U1 + wTCrgnFNGY2tG1cjPIyHqPg0ZOflo6SiGH0Dcsh1g5BpVSSqQY9GA4lGS4nqCQNJGyntIWoeRgwYTRD2 + KS0RNaN5uzyTmiJj4g3r1q3dtcPe/dEFRacl/pjo8iFRPolasagYwXSOR0nzYBnkcaJbPnwdSclJiEvK + wclvcpF/7hTapCIIu1vR0NmCBrEIdV0iXOhsQ3VnByrbO1DV0YVqsQT1kl6I5Aoq+yypbdfTXZNri7yD + Ikw7v9iRsNvB52cLil6SnKC524vESGgeM4nNKXlgJeicWUkdThmFzz9Zi+i4eCQkpCMzh+b+s5kQy9sg + kXdCouhGj7IXUmUfJEo5uoiO/j6IZH0Q9kipEp1cJYrq68wZ7bNJMVXabOcTUXJPD49KZ7+oXy8oOtnl + i5F2T8zNyzFBbktBcLIkeUsRiNmBSGz79AOERcUiMy0PBQWZKCs/DZVGCqVaigFNDwa0fehXy9CvkRP9 + UGgUUOgGMEAodEqOuvY2c1bbldjs9kuJzoGJEhdn5yYH7/AXFhSd6PTBsOg4id3duN1UsMVGEGjTRgTi + pjwAs4oIEt2A0MgY5GScItE0lJbmYVDdBaWqCwMqMRRqCckxpCTcA7mGxDUyKLQyku2HykCioiZzbsd0 + xBnpTIx7aFrnwQP2zQfdeQuL0moGxhZ32l0G0sLCynW5FXaOcV12Alfl4fjs47WIjY9Ddko2CvJTUFF+ + Elp1OzQMTQdJMzopYTElLIZS002lFIOUtkrbC5VOhpqmSvMZ8aXQs11T0byE3I69e/ZU2bmeWPjRj3Z4 + w9B8jBO71scIwDVZAMkF4AYleUPuj9leP1zpC8FfP3gdyYJEZCQJcOZUCirLc6BTi4hWEhZBrRJBpW6D + msRVJK0iaTUJq0lYrSVhdTdqGovNJb3T/PwWQ1RsSq7sk48/zt7r6L3wzvRiuxf0TUdJjoT67nKNjhnX + 6fxMjx+me4Kx/q0/ICIyDMnx0TiTm4aqikwY1C3QMzQt88JWaS0JazUs6U6iC1ptN/r7m1HfVGS5oLga + LChpi09MTh16dfVqx31OXk8s2EaHRZ7QNbhxkjO990ATwSx9nqXF8ZVuXxrCArD5/T9i/94dSEsTIDdF + gKqSbJi0TRjSMJoJIYeBpBl6jYjKNhh0JEtp98tq0C4qRnO3+Nuc4vraID8/0TPLf/Wy0/Gghed8Y7MH + NHWuuNpzgray90DD1pVePq7KQjEt9oG05BAcaGba+N4riE+IQ1ZKAirPnISJJIe1jVQ230XbAiNHK0Gi + hEZRC6XsPFTyKog7y2jEKJvb/dm7Sev+smn5gmmyC/QN7tDUunL77cs0lTKucKU/rvaFQt/sjXPx25Do + vwkRnhux/aNX8OWOTUhNS0bpmSyY+tswTLIjekInpFKIUX0Lla1EG4d+sBba/iroBqohExfhQm0FBJHu + tAp7P8/DL2ThNJmopuEY1JTodPcJXKKplDE9D+tAimo3hLi9h5LUr5BFy7xAl/X4aC01ga+2orSiCPLu + WhjkzRijRMf1zZgwCDE51IpJYyvGSPqiphamwSroFZWQdhShtOwcBLFhyE/Yhb2bXw5dVJqcKEmq61ww + JfbDJE2ljCmCyXKiNW7gu76HUhItTLRFGn8LPA68g12fvAZPt304X1MBSXczlD11MAzUYlxbi8tDDZg2 + 1GJURSn2V6BfWglRaxWKSwpRWVaGrMwMtDclYfsHv+EtWlR1wY1L9H5RTraHDzntNnnO76I07Ssu1TPx + u5AbsQ3p/M9w2PYN7LfdiNgoPpqFzeiWtKFH0giJuAbdXdUQi2sham9CbV0tBPExCOEFITU1BU1NQtSc + P4+dG1dGk+hP5/lh54FqFyhrXChJ6tmd3hgnJmjuZ8dTkmD0VbogyOkdlKTs5kQZ1Tn7IKtyRdNpe26N + eth2DXZ/vgYH92yGj4czIkICEMH3h5+nC5z2b4XDnvdwaNca2G7+M9ycDyM5ORVtom4kxiRdPGTv8J9P + PPHE02TJxlL2zvXnBFujsgrc/euvcoTivBPG2n0wSmPqaJsXxhg0Y02IgyCtcEaA4zsoFnyJYpJl1NMO + dFjkA23DcUjLnFF70g6norcj2vsjBLm8D3+n9Qh220Ad8BN6Ajtp+7IP5el7aJ+1GV/veBfBPD6++aYA + HW29ZkFiVu26tev/REZstf/PxLPEL+fF/5FKtrL6qU1vuQNklQ64SHJszmdcJEbaPDEmDkB3mSP8Hf4b + RUxUsJtKJnqArmcV86PrfOl6X+gaPbn2zDofK4davGFq9eH+P0xlX6UrqrK+hs+R9TjqdgxhoWG4UNMA + YVPXHC8gooJkVhG/I1YQLxJs/mfy1llLWnoIfRVH2H4bphYPjmHiYutxjNKeXVzqgBNH3kZR8pdWSLQu + z5roKL3a+Q7t9HmeESrvQLImEu8udUJ+7E44ODnTdiYE/GA+Ojq6UVcjgrdnQP6K36x4m5ReJv6N+Ffi + 7hpAUnyIEnWkL/KEUejBYWK0ULLt/ugsOgy/w2/hW07SChM1tXrfFblPaoTSZonfj6beA430NBISk+F0 + +Avk5OSYo2NiLXravhQWVFx1cXRPWf7M8ndJ8DXiX77TRsVF9tQxHDEkPE6LE3eOIaG7Vbj9BDq+PQTf + Q2/hXNKXHEyYvXzgROdlHihGibPU74U1hd5yF1RWlCEu1AFbPv1wIiszC4LkFIyNTCIv99tLRw468knw + V9+RZB96LwRkySocSNCDFick2nSMg15hwyTyo9c2B+Fz8E0zEzxHFCbZooZ6PZfWvMjt8n4x9plV6F50 + TV5okg6hsUKAlS88JTly5IiW2qu5oOCsRa8zWk7lFlkSo5Ne/xtRdkJe4Ritb3Snxckx6OvdYGg4CkPj + Ma4ztJ49iJ1//WN7lPfmUzkR24w06Jurc+zMi5G6LWgkWSO1UYam0RvuxbMoKC3Ba6t+Xrd8+fLC5GTB + JR4v2NLY0GjRaoaQFJfZG86PWv1AWZIM19QfpSHnKPXgo5QuJUuiLST6yu/+SUA3vUms+a/VL6xmP0iV + uGktrQL3pnZb6v5yqMWLQvCET+EMKhvq8f6ffsl6e8CqVasaysvKERgQSEtD2nZLBm4lxWdVBQXwn3+g + rLr+6A41iWopTR09er3QG830LvTl3z6dzCTnhw7uXpL4vUkUcHy4LaDtdmls8Zmj5sJVgA1PTGxI+F1G + Wj24Ge867cHe+o9nc5csWbKPvi5006ZNPXl5ebd8vH0wMT5p6WrrteRkFOQ+UJSdVNe5baceb2bbE30z + taf8A/j3Fb9Iulfye2+2VuDt4fbgUG3jcdWQ0HvOIPSaY7JUUj/wwmCNE47sfDXzL2++4PfIsmWfkugG + Yu+TTz4Z5eXlrUgRpJgJy/jYpKXobOnUD/2WTWXGrrWSkkNmXbMnGk7vxx9eeirgB2/4nn+S9M+IjQM1 + R1P0TZ4X6fhGqeCLUbqcDeJsmlzx6KOPvrJ06dLf0/FHy5c/myAQCMZSU1NRU10DXiCvbMHf9T/yxmZt + k4elOd8O2zZvWLvgDYu4gESfTQn69G/a3YsvvvQY3b6SyT722GNh9vb21ba2tuH77eyfWcTX2th4Hnj7 + Rdc9f96/qIt//EVsXn+JePXxxx9fuX7d+0z+zt//AEhywl1gQKKoAAAAAElFTkSuQmCC + + + + + AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC/ooVVrpFy/wAAAACZfl//g2tQ/wAAAAB+ZEb/h2xPNgAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAt5x6mb6liv+9ooL/yLKa/7Wljf+qjXL/lH5j/49x + VJQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC9oYAwu5173bmdevDgzbn/8OTT/+bXxP/m0cH/1cOt/8Ks + k/+vknH8mH1f1I5zVTKTjY2ylpGR/2liYf9pYmH/fHBn/8WskP/u28v/9+nb/9S9qf+8pIf/vaWH/72h + hP/Muqb/ybWg/6eJbf+NclRJlpGR/9zVzv/w6eD/7uXb//Ts4//Rup3/9una/8ezmv/Hspz/9O3k/+/m + 3f/Qu6H/wquQ/8q6qf+lj3TwAAAAAH9xa3+IfXr/v7Ss/1hLR//OuJ//59W///Hg0P+UeVr/TD87/4h9 + eP9kWVT/wLau/72jhf/Qvaj/tZt9/56EZv8AAAAAg3hzgYZ6dv+IfXj/xK6V/864n//14tH/l3xd/4h9 + eP9dUU3/iH14/4Z6dv/DqIj/zr2p/7qcev+Yfl7kAAAAAAAAAABxZWExdGtpnXVsas3EqIv///Xl/9fG + sf+BaET/eG9r1HZsaqO+n4D/2Me0/9nKuf+skHH/AAAAAAAAAACelpT/j4N//5CBf/yql4P/0Lyf/+TP + vP//+ez/28m3/7GZe/+7oYT/1cGs/9zJuv/Ot5r/rJB0/6SIbnQAAAAAkYaC/8xRMP+2OiH/tzoh/7lE + K/++Ykf/2cGr//zu4f//9en/+OfX/9bGr//Jspn/v6GAhKqPbhMAAAAAAAAAAKCYlf7WYUL/yVA2/8hP + Nv/JUDX/yIJl/8uxkf/Himz/1Lyk/8+5nf/Aj3D/vKSL/7OegGMAAAAAAAAAAAAAAAC0sa7/4HFW/9Vf + R//VX0f/1V9H/9VfRv/VX0b/1V9G/8Gnhv/CqIv/0FY+/7SwrPsAAAAAAAAAAAAAAAAAAAAAwcLD/+mA + Z//gblb/4W5V/+BuVf/hbVb/4G1V/+FtVf/hbVb/4G1W/9xkTf/Vzsf0////AQAAAAAAAAAAAAAAAMHB + wv/uinL/6Hdg/+h3YP/od2D/6Hdg/+h3YP/od2D/6Hdg/+h3YP/lblf/187I9wAAAAAAAAAAAAAAAAAA + AADBwsP/7opy/+6Kcv/uinL/7opy/+6Kcv/uinL/7opy/+6Kcv/uinL/7opy/9XQyvsAAAAAAAAAAAAA + AAAAAAAAwcLD/8q+t/7Lua/0yrix7829tPTSxr362MzF/NnNxf/YzcX+2MzE+9jNxf3OzMn+AAAAAAAA + AAAAAAAA/JMAAPwDAADwAAAAAAAAAAABAAAAAAAAgAAAAMABAACAAAAAgAEAAIADAACABwAAgAMAAIAH + AACABwAAgAcAAA== + + + \ No newline at end of file diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemCommandControl.cs b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemCommandControl.cs new file mode 100644 index 0000000..cf895fc --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemCommandControl.cs @@ -0,0 +1,61 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Configuration.Forms.Controls +{ + internal sealed class CategoryItemCommandControl : CategoryItemControl + { + #region Fields + + private CategoryItem.Command Command; + + #endregion + + #region .ctors + + public CategoryItemCommandControl(CategoryItem item, CategoryItem.Command command) + { + if (command == null) + throw new ArgumentNullException("command"); + + this.Command = command; + } + + #endregion + + #region Overrides + + protected internal override void OnSelected() + { + Command(ParentItem); + } + + protected internal override bool HasUI + { + get + { + return false; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemControl.cs b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemControl.cs new file mode 100644 index 0000000..85ce23b --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemControl.cs @@ -0,0 +1,137 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Windows.Forms; +using System.Security; + +namespace Virtuoso.Miranda.Plugins.Configuration.Forms.Controls +{ + public partial class CategoryItemControl : UserControl + { + #region .ctors + + protected CategoryItemControl() + { + InitializeComponent(); + } + + private void InitializeComponent() + { + this.SuspendLayout(); + // + // CategoryItemControl + // + this.BackColor = System.Drawing.SystemColors.Window; + this.Font = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.Name = "CategoryItemControl"; + this.Size = new System.Drawing.Size(792, 400); + this.ResumeLayout(false); + + } + + #endregion + + #region Properties + + private bool dirty; + protected internal bool IsDirty + { + get { return dirty; } + set { dirty = value; } + } + + private CategoryItem parentItem; + internal CategoryItem ParentItem + { + get { return parentItem; } + } + + private string configurationParameter; + protected internal string ConfigurationParameter + { + get { return configurationParameter; } + internal set { configurationParameter = value; } + } + + #endregion + + #region Virtuals + + /// + /// Gets a value indicating whether the control has an UI to show. + /// + protected internal virtual bool HasUI { get { return true; } } + + /// + /// Occurs when a control is selected and before it is prepared to be shown. + /// + protected internal virtual void OnSelected() { } + + /// + /// Occurs when a control is about to be shown. The control is shown when the user clicks on its item. + /// + /// TRUE if the control is being requested for the first time; FALSE if it is requested repeatedly. + /// TRUE to cancel the display; FALSE to continue. + protected internal virtual bool OnShow(bool firstTime) { return false; } + + /// + /// Occurs when a control is about to be hidden. The control is hidden when the user clicks on another item. + /// + /// TRUE to cancel the dismissal; FALSE to continue. + protected internal virtual bool OnHide() { return false; } + + /// + /// Occurs when the user dismisses the configuration dialog via OK button and the control is dirty. The control should save its settings now. + /// + protected internal virtual void Save() { } + + /// + /// Occurs when the user dismisses the configuration dialog via OK or CANCEL button. + /// + protected internal virtual void Close() { } + + /// + /// Marks the control dirty. + /// + protected virtual void SetControlDirtyHandler(object sender, EventArgs e) + { + IsDirty = true; + } + + #endregion + + #region Methods + + internal void Initialize(CategoryItem parentItem) + { + this.parentItem = parentItem; + } + + protected void CloseDialog() + { + ParentForm.Close(); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemControl.resx b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemControl.resx new file mode 100644 index 0000000..a764f1c --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemControl.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + \ No newline at end of file diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemHeader.Designer.cs b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemHeader.Designer.cs new file mode 100644 index 0000000..e67a849 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemHeader.Designer.cs @@ -0,0 +1,94 @@ +using Virtuoso.Miranda.Plugins.Forms.Controls; +namespace Virtuoso.Miranda.Plugins.Configuration.Forms.Controls +{ + partial class CategoryItemHeader + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.ImagePBOX = new System.Windows.Forms.PictureBox(); + this.DescriptionLABEL = new System.Windows.Forms.Label(); + this.panel1 = new Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel(); + ((System.ComponentModel.ISupportInitialize)(this.ImagePBOX)).BeginInit(); + this.panel1.SuspendLayout(); + this.SuspendLayout(); + // + // ImagePBOX + // + this.ImagePBOX.Image = global::Virtuoso.Miranda.Plugins.Properties.Resources.Icon_256_32x32; + this.ImagePBOX.Location = new System.Drawing.Point(10, 4); + this.ImagePBOX.Name = "ImagePBOX"; + this.ImagePBOX.Size = new System.Drawing.Size(32, 32); + this.ImagePBOX.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; + this.ImagePBOX.TabIndex = 0; + this.ImagePBOX.TabStop = false; + // + // DescriptionLABEL + // + this.DescriptionLABEL.AutoSize = true; + this.DescriptionLABEL.Font = new System.Drawing.Font("Tahoma", 8, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.DescriptionLABEL.ForeColor = System.Drawing.Color.Black; + this.DescriptionLABEL.Location = new System.Drawing.Point(50, 12); + this.DescriptionLABEL.Name = "DescriptionLABEL"; + this.DescriptionLABEL.Size = new System.Drawing.Size(0, 16); + this.DescriptionLABEL.TabIndex = 2; + // + // panel1 + // + this.panel1.Controls.Add(this.ImagePBOX); + this.panel1.Controls.Add(this.DescriptionLABEL); + this.panel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.panel1.GradientColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0))))); + this.panel1.Location = new System.Drawing.Point(0, 0); + this.panel1.Name = "panel1"; + this.panel1.Rotation = -90F; + this.panel1.Size = new System.Drawing.Size(765, 40); + this.panel1.TabIndex = 3; + // + // CategoryItemHeader + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BackColor = System.Drawing.Color.Transparent; + this.Controls.Add(this.panel1); + this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.MinimumSize = new System.Drawing.Size(300, 40); + this.Name = "CategoryItemHeader"; + this.Size = new System.Drawing.Size(765, 40); + ((System.ComponentModel.ISupportInitialize)(this.ImagePBOX)).EndInit(); + this.panel1.ResumeLayout(false); + this.panel1.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.PictureBox ImagePBOX; + private System.Windows.Forms.Label DescriptionLABEL; + private GradientPanel panel1; + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemHeader.cs b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemHeader.cs new file mode 100644 index 0000000..476b589 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemHeader.cs @@ -0,0 +1,78 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Windows.Forms; +using System.Drawing.Design; + +namespace Virtuoso.Miranda.Plugins.Configuration.Forms.Controls +{ + public partial class CategoryItemHeader : UserControl + { + public CategoryItemHeader() + { + InitializeComponent(); + } + + [Browsable(true), Category("Appearance")] + public Image Image + { + get { return ImagePBOX.Image; } + set { ImagePBOX.Image = value; } + } + + [Editor("System.ComponentModel.Design.MultilineStringEditor, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(UITypeEditor))] + [Localizable(true), Browsable(true), Category("Appearance"), DefaultValue("Header")] + public string HeaderText + { + get { return DescriptionLABEL.Text; } + set { DescriptionLABEL.Text = value; } + } + + [Browsable(true), Category("Appearance")] + public Color Color + { + get { return panel1.GradientColor; } + set { panel1.GradientColor = value; } + } + + public override Color ForeColor + { + get + { + return DescriptionLABEL.ForeColor; + } + set + { + DescriptionLABEL.ForeColor = value; + } + } + + [Browsable(true), Category("Appearance")] + public Font HeaderFont + { + get { return DescriptionLABEL.Font; } + set { DescriptionLABEL.Font = value; } + } + + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemHeader.resx b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemHeader.resx new file mode 100644 index 0000000..e339309 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemHeader.resx @@ -0,0 +1,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + \ No newline at end of file diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemSection.Designer.cs b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemSection.Designer.cs new file mode 100644 index 0000000..1249912 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemSection.Designer.cs @@ -0,0 +1,79 @@ +using Virtuoso.Miranda.Plugins.Forms.Controls; +namespace Virtuoso.Miranda.Plugins.Configuration.Forms.Controls +{ + partial class CategoryItemSection + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.panel1 = new Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel(); + this.SectionLABEL = new System.Windows.Forms.Label(); + this.panel1.SuspendLayout(); + this.SuspendLayout(); + // + // panel1 + // + this.panel1.Controls.Add(this.SectionLABEL); + this.panel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.panel1.GradientColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(224)))), ((int)(((byte)(192))))); + this.panel1.Location = new System.Drawing.Point(0, 0); + this.panel1.Name = "panel1"; + this.panel1.Rotation = 90F; + this.panel1.Size = new System.Drawing.Size(765, 20); + this.panel1.TabIndex = 1; + // + // SectionLABEL + // + this.SectionLABEL.AutoSize = true; + this.SectionLABEL.ForeColor = System.Drawing.SystemColors.MenuText; + this.SectionLABEL.Location = new System.Drawing.Point(8, 4); + this.SectionLABEL.Name = "SectionLABEL"; + this.SectionLABEL.Size = new System.Drawing.Size(0, 13); + this.SectionLABEL.TabIndex = 0; + // + // CategoryItemSection + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BackColor = System.Drawing.Color.Transparent; + this.Controls.Add(this.panel1); + this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.ForeColor = System.Drawing.Color.Black; + this.MinimumSize = new System.Drawing.Size(300, 20); + this.Name = "CategoryItemSection"; + this.Size = new System.Drawing.Size(765, 20); + this.panel1.ResumeLayout(false); + this.panel1.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Label SectionLABEL; + private GradientPanel panel1; + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemSection.cs b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemSection.cs new file mode 100644 index 0000000..2e132bf --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemSection.cs @@ -0,0 +1,51 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Windows.Forms; +using System.Drawing.Design; + +namespace Virtuoso.Miranda.Plugins.Configuration.Forms.Controls +{ + public partial class CategoryItemSection : UserControl + { + public CategoryItemSection() + { + InitializeComponent(); + } + + [Editor("System.ComponentModel.Design.MultilineStringEditor, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(UITypeEditor))] + [Localizable(true), Browsable(true), Category("Appearance"), DefaultValue("Section")] + public string SectionName + { + get { return SectionLABEL.Text; } + set { SectionLABEL.Text = value; } + } + + [Browsable(true), Category("Appearance")] + public Color Color + { + get { return panel1.GradientColor; } + set { panel1.GradientColor = value; } + } + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemSection.resx b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemSection.resx new file mode 100644 index 0000000..29667a5 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/CategoryItemSection.resx @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + \ No newline at end of file diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/ConfigurationPanel_.Designer.cs b/Hyphen/Plugins/Configuration/Forms/Controls/ConfigurationPanel_.Designer.cs new file mode 100644 index 0000000..8983c9e --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/ConfigurationPanel_.Designer.cs @@ -0,0 +1,277 @@ +namespace Virtuoso.Miranda.Plugins.Forms.Configuration.Controls +{ + partial class ConfigurationPanel + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigurationPanel)); + this.CategoriesILIST = new System.Windows.Forms.ImageList(this.components); + this.Toolbar = new System.Windows.Forms.ToolStrip(); + this.ViewsTDBTN = new System.Windows.Forms.ToolStripDropDownButton(); + this.detailsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.largeIconsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.tilesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); + this.CategoryItemsLVIEW = new System.Windows.Forms.ListView(); + this.CategoryItemNameCOLUMN = new System.Windows.Forms.ColumnHeader(); + this.CategoryItemDescriptionCOLUMN = new System.Windows.Forms.ColumnHeader(); + this.CategoryItemsILIST = new System.Windows.Forms.ImageList(this.components); + this.SpecialItemsILIST = new System.Windows.Forms.ImageList(this.components); + this.CategoriesLVIEW = new Virtuoso.Miranda.Plugins.Forms.Configuration.Controls.CategoryListView(); + this.NameCOLUMN = new System.Windows.Forms.ColumnHeader(); + this.panel1 = new Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel(); + this.CategoryDescriptionLABEL = new System.Windows.Forms.Label(); + this.CategoryTitleLABEL = new System.Windows.Forms.Label(); + this.CategoryIconPBOX = new System.Windows.Forms.PictureBox(); + this.Toolbar.SuspendLayout(); + this.panel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.CategoryIconPBOX)).BeginInit(); + this.SuspendLayout(); + // + // CategoriesILIST + // + this.CategoriesILIST.ColorDepth = System.Windows.Forms.ColorDepth.Depth32Bit; + this.CategoriesILIST.ImageSize = new System.Drawing.Size(16, 16); + this.CategoriesILIST.TransparentColor = System.Drawing.Color.Transparent; + // + // Toolbar + // + this.Toolbar.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.Toolbar.AutoSize = false; + this.Toolbar.Dock = System.Windows.Forms.DockStyle.None; + this.Toolbar.Font = new System.Drawing.Font("Tahoma", 8F); + this.Toolbar.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; + this.Toolbar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.ViewsTDBTN}); + this.Toolbar.Location = new System.Drawing.Point(190, 62); + this.Toolbar.Name = "Toolbar"; + this.Toolbar.Size = new System.Drawing.Size(510, 34); + this.Toolbar.TabIndex = 2; + this.Toolbar.Text = "toolStrip2"; + // + // ViewsTDBTN + // + this.ViewsTDBTN.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.detailsToolStripMenuItem, + this.largeIconsToolStripMenuItem, + this.tilesToolStripMenuItem}); + this.ViewsTDBTN.Image = ((System.Drawing.Image)(resources.GetObject("ViewsTDBTN.Image"))); + this.ViewsTDBTN.ImageTransparentColor = System.Drawing.Color.Magenta; + this.ViewsTDBTN.Name = "ViewsTDBTN"; + this.ViewsTDBTN.Size = new System.Drawing.Size(58, 31); + this.ViewsTDBTN.Text = "View"; + this.ViewsTDBTN.DropDownOpening += new System.EventHandler(this.ViewsTDBTN_DropDownOpening); + // + // detailsToolStripMenuItem + // + this.detailsToolStripMenuItem.Name = "detailsToolStripMenuItem"; + this.detailsToolStripMenuItem.Size = new System.Drawing.Size(139, 22); + this.detailsToolStripMenuItem.Tag = "Details"; + this.detailsToolStripMenuItem.Text = "Details"; + this.detailsToolStripMenuItem.Click += new System.EventHandler(this.ViewsItem_Click); + // + // largeIconsToolStripMenuItem + // + this.largeIconsToolStripMenuItem.Name = "largeIconsToolStripMenuItem"; + this.largeIconsToolStripMenuItem.Size = new System.Drawing.Size(139, 22); + this.largeIconsToolStripMenuItem.Tag = "LargeIcon"; + this.largeIconsToolStripMenuItem.Text = "Large icons"; + this.largeIconsToolStripMenuItem.Click += new System.EventHandler(this.ViewsItem_Click); + // + // tilesToolStripMenuItem + // + this.tilesToolStripMenuItem.Name = "tilesToolStripMenuItem"; + this.tilesToolStripMenuItem.Size = new System.Drawing.Size(139, 22); + this.tilesToolStripMenuItem.Tag = "Tile"; + this.tilesToolStripMenuItem.Text = "Tiles"; + this.tilesToolStripMenuItem.Click += new System.EventHandler(this.ViewsItem_Click); + // + // CategoryItemsLVIEW + // + this.CategoryItemsLVIEW.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.CategoryItemsLVIEW.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.CategoryItemsLVIEW.CausesValidation = false; + this.CategoryItemsLVIEW.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { + this.CategoryItemNameCOLUMN, + this.CategoryItemDescriptionCOLUMN}); + this.CategoryItemsLVIEW.DataBindings.Add(new System.Windows.Forms.Binding("View", global::Virtuoso.Miranda.Plugins.Properties.Settings.Default, "ConfigurationPanel_CategoryItems_View", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged)); + this.CategoryItemsLVIEW.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable; + this.CategoryItemsLVIEW.LargeImageList = this.CategoryItemsILIST; + this.CategoryItemsLVIEW.Location = new System.Drawing.Point(184, 99); + this.CategoryItemsLVIEW.MultiSelect = false; + this.CategoryItemsLVIEW.Name = "CategoryItemsLVIEW"; + this.CategoryItemsLVIEW.ShowGroups = false; + this.CategoryItemsLVIEW.Size = new System.Drawing.Size(515, 401); + this.CategoryItemsLVIEW.SmallImageList = this.CategoryItemsILIST; + this.CategoryItemsLVIEW.TabIndex = 4; + this.CategoryItemsLVIEW.TileSize = new System.Drawing.Size(500, 60); + this.CategoryItemsLVIEW.UseCompatibleStateImageBehavior = false; + this.CategoryItemsLVIEW.View = global::Virtuoso.Miranda.Plugins.Properties.Settings.Default.ConfigurationPanel_CategoryItems_View; + this.CategoryItemsLVIEW.ItemActivate += new System.EventHandler(this.CategoryItemsLVIEW_ItemActivate); + // + // CategoryItemNameCOLUMN + // + this.CategoryItemNameCOLUMN.Text = "Option"; + // + // CategoryItemDescriptionCOLUMN + // + this.CategoryItemDescriptionCOLUMN.Text = "Description"; + // + // CategoryItemsILIST + // + this.CategoryItemsILIST.ColorDepth = System.Windows.Forms.ColorDepth.Depth32Bit; + this.CategoryItemsILIST.ImageSize = new System.Drawing.Size(32, 32); + this.CategoryItemsILIST.TransparentColor = System.Drawing.Color.Transparent; + // + // SpecialItemsILIST + // + this.SpecialItemsILIST.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("SpecialItemsILIST.ImageStream"))); + this.SpecialItemsILIST.TransparentColor = System.Drawing.Color.Transparent; + this.SpecialItemsILIST.Images.SetKeyName(0, "Warning"); + // + // CategoriesLVIEW + // + this.CategoriesLVIEW.Activation = System.Windows.Forms.ItemActivation.OneClick; + this.CategoriesLVIEW.Alignment = System.Windows.Forms.ListViewAlignment.Left; + this.CategoriesLVIEW.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.CategoriesLVIEW.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { + this.NameCOLUMN}); + this.CategoriesLVIEW.Font = new System.Drawing.Font("Tahoma", 10F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.CategoriesLVIEW.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None; + this.CategoriesLVIEW.HideSelection = false; + this.CategoriesLVIEW.LargeImageList = this.CategoriesILIST; + this.CategoriesLVIEW.Location = new System.Drawing.Point(0, 0); + this.CategoriesLVIEW.Margin = new System.Windows.Forms.Padding(20, 15, 5, 5); + this.CategoriesLVIEW.MultiSelect = false; + this.CategoriesLVIEW.Name = "CategoriesLVIEW"; + this.CategoriesLVIEW.ShowGroups = false; + this.CategoriesLVIEW.Size = new System.Drawing.Size(185, 500); + this.CategoriesLVIEW.Sorting = System.Windows.Forms.SortOrder.Ascending; + this.CategoriesLVIEW.TabIndex = 0; + this.CategoriesLVIEW.TileSize = new System.Drawing.Size(180, 30); + this.CategoriesLVIEW.UseCompatibleStateImageBehavior = false; + this.CategoriesLVIEW.View = System.Windows.Forms.View.Tile; + this.CategoriesLVIEW.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.CategoriesLVIEW_ItemSelectionChanged); + // + // NameCOLUMN + // + this.NameCOLUMN.Text = "Name"; + this.NameCOLUMN.Width = 170; + // + // panel1 + // + this.panel1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.panel1.BackColor = System.Drawing.Color.White; + this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D; + this.panel1.Controls.Add(this.CategoryDescriptionLABEL); + this.panel1.Controls.Add(this.CategoryTitleLABEL); + this.panel1.Controls.Add(this.CategoryIconPBOX); + this.panel1.GradientColor = System.Drawing.SystemColors.Control; + this.panel1.Location = new System.Drawing.Point(184, 0); + this.panel1.Name = "panel1"; + this.panel1.Rotation = 0F; + this.panel1.Size = new System.Drawing.Size(516, 59); + this.panel1.TabIndex = 3; + // + // CategoryDescriptionLABEL + // + this.CategoryDescriptionLABEL.AutoSize = true; + this.CategoryDescriptionLABEL.BackColor = System.Drawing.Color.Transparent; + this.CategoryDescriptionLABEL.Location = new System.Drawing.Point(54, 28); + this.CategoryDescriptionLABEL.Name = "CategoryDescriptionLABEL"; + this.CategoryDescriptionLABEL.Size = new System.Drawing.Size(60, 13); + this.CategoryDescriptionLABEL.TabIndex = 5; + this.CategoryDescriptionLABEL.Text = "Description"; + // + // CategoryTitleLABEL + // + this.CategoryTitleLABEL.AutoSize = true; + this.CategoryTitleLABEL.BackColor = System.Drawing.Color.Transparent; + this.CategoryTitleLABEL.Font = new System.Drawing.Font("Franklin Gothic Medium", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.CategoryTitleLABEL.Location = new System.Drawing.Point(52, 6); + this.CategoryTitleLABEL.Name = "CategoryTitleLABEL"; + this.CategoryTitleLABEL.Size = new System.Drawing.Size(66, 20); + this.CategoryTitleLABEL.TabIndex = 1; + this.CategoryTitleLABEL.Text = "Category"; + // + // CategoryIconPBOX + // + this.CategoryIconPBOX.BackColor = System.Drawing.Color.Transparent; + this.CategoryIconPBOX.Location = new System.Drawing.Point(13, 12); + this.CategoryIconPBOX.Name = "CategoryIconPBOX"; + this.CategoryIconPBOX.Size = new System.Drawing.Size(32, 32); + this.CategoryIconPBOX.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; + this.CategoryIconPBOX.TabIndex = 0; + this.CategoryIconPBOX.TabStop = false; + // + // ConfigurationPanel + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.CategoryItemsLVIEW); + this.Controls.Add(this.CategoriesLVIEW); + this.Controls.Add(this.Toolbar); + this.Controls.Add(this.panel1); + this.Font = new System.Drawing.Font("Tahoma", 8F); + this.MinimumSize = new System.Drawing.Size(700, 500); + this.Name = "ConfigurationPanel"; + this.Size = new System.Drawing.Size(700, 500); + this.Toolbar.ResumeLayout(false); + this.Toolbar.PerformLayout(); + this.panel1.ResumeLayout(false); + this.panel1.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.CategoryIconPBOX)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private CategoryListView CategoriesLVIEW; + private System.Windows.Forms.ImageList CategoriesILIST; + private System.Windows.Forms.ColumnHeader NameCOLUMN; + private System.Windows.Forms.ToolStrip Toolbar; + private Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel panel1; + private System.Windows.Forms.Label CategoryTitleLABEL; + private System.Windows.Forms.PictureBox CategoryIconPBOX; + private System.Windows.Forms.ListView CategoryItemsLVIEW; + private System.Windows.Forms.ImageList CategoryItemsILIST; + private System.Windows.Forms.ColumnHeader CategoryItemNameCOLUMN; + private System.Windows.Forms.ColumnHeader CategoryItemDescriptionCOLUMN; + private System.Windows.Forms.Label CategoryDescriptionLABEL; + private System.Windows.Forms.ToolStripDropDownButton ViewsTDBTN; + private System.Windows.Forms.ToolStripMenuItem largeIconsToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem tilesToolStripMenuItem; + private System.Windows.Forms.ToolStripMenuItem detailsToolStripMenuItem; + private System.Windows.Forms.ImageList SpecialItemsILIST; + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/ConfigurationPanel_.cs b/Hyphen/Plugins/Configuration/Forms/Controls/ConfigurationPanel_.cs new file mode 100644 index 0000000..5897488 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/ConfigurationPanel_.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Drawing; +using System.Data; +using System.Text; +using System.Windows.Forms; +using System.Collections.ObjectModel; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Miranda.Plugins.Properties; +using Virtuoso.Miranda.Plugins.Forms.Controls; + +namespace Virtuoso.Miranda.Plugins.Forms.Configuration.Controls +{ + internal sealed partial class ConfigurationPanel : UserControl + { + + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/ConfigurationPanel_.resx b/Hyphen/Plugins/Configuration/Forms/Controls/ConfigurationPanel_.resx new file mode 100644 index 0000000..111d199 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/ConfigurationPanel_.resx @@ -0,0 +1,290 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + True + + + 379, 17 + + + + + iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAfpJREFUOE+Nkt1L + U3EYx892ueOfEF0L/QVxzmWX1SwMeveqC0sh07Xly2pkrVRSiwwySvGimyCiWMPUmeSyJCLYmC6mdNib + LwkpJtL2+/b8nnM8WyuqAx+e5/fj+ZzvA+c4DmjqHqfTUe0QCpSKB07FUXlfVDD/fHozzqM1mqtOLN/B + 34iHGlH8fIOR83ZGjV5V/y/53ZMzJZnmbdmtuVpE/jaYZYuds1XHhk/ZspwvT/aLTB9EziLTD/NMVUL9 + 07u1LP+YD4I29ZeSdTUojB4I41YF1t2XHox07WdxO3ENbpovT+4VC934nZvmXaoL9y7vY3EzdlUm99ry + Qc01UEgGIRHJ61wLss6ZfXeLjmcDR1hc/xRAw+Hdj9161UXrU6mDW/FOfK9gK9aJ4Pm9v4hrH/zIv21F + Q+2uMdqgTaG3DH37eAUlAlYfYDkyUseJUlyaaUUueglZQnosr862Q/LVqquzHdR3sDw+fJrFlfftnJqd + 9iH9xleSc1EfvdEkX4aUXz06yeLSTBtyJGdITIS8wk42XnthTJmkpzx2L+XRhyeQp3WzURJpXZYj9UVb + XpxoxuJkGRMeLESaee3wg+O0pheJl16RppXnwj4Rm/QUbDk1fgF/QsqhwWNIvmjaSIQb11Kj59aNyNlt + FuVzSFePysN/o6n3d36Sn6D5TMF1/zamAAAAAElFTkSuQmCC + + + + True + + + 476, 17 + + + 646, 17 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAD+ + GQAAAk1TRnQBSQFMAwEBAAEEAQABBAEAASABAAEgAQAE/wEhAQAI/wFCAU0BNgcAATYDAAEoAwABgAMA + ASADAAEBAQABIAYAAUBeAAEnAgEBOAFRAgIBnQFXAgIBswFXAgIBswFRAgIBnQEnAgEBOP8A5QABQQIB + AXABXwIDAcYBegInAfUD4QH/A+AB/wFxAg0B7AFcAgMBwQFBAgEBcP8A3QABQQIBAXABYwIDAdAB2AHb + Ad0B/wGBAbMB1gH/AWkBpAHTAf8BYgGfAdEB/wF5AaIByAH/AdUB1gHXAf8BYwIDAdABQQIBAXD/AJUA + AQMCAQECAQYCAQEGAQoCAQILAgEBDQELAgEBDQELAgEBDQELAgEBDQELAgEBDQELAgEBDQELAgEBDQEL + AgEBDQELAgEBDQELAgEBDQELAgEBDQELAgEBDQELAgEBDQFEAgEBdwFjAgMB0gHVAdgB2QH/AXUBsQHi + Af8BdwG4AfgB/wF0AbcB/AH/AXIBuwH9Af8BaAG4AfYB/wFXAZ0B0AH/Ac8B0QHSAf8BYwIDAdABQQIB + AXD/AJEAAQYCAQEGARICAQEWARoCAQEjARwCAQEmARwCAQEmARwCAQEmARwCAQEmARwCAQEmARwCAQEm + ARwCAQEmARwCAQEmARwCAQEmARwCAQEmARwCAQEmARwCAQEmAT8CAQFpAWACAwHTAdgC2QH/AWgBpwHd + Af8BWgGjAfUB/wFDAZYB9QH/AT4BlgH0Af8BSAGfAfAB/wFYAbQB+QH/AVgBugH5Af8BUgGcAc8B/wPO + Af8BXAIDAcEBMwIBAU//AI0AAUgCAgGBAXACJwH3AYgBhAGBAf8BiAGEAYEB/wGIAYQBgQH/AYgBhAGB + Af8BiAGEAYEB/wGIAYQBgQH/AYgBhAGBAf8BiAGEAYEB/wGIAYQBgQH/AYgBhAGBAf8BiAGEAYEB/wGI + AYQBgQH/AYICgQH/A4EB/wPdAf8BawGdAcwB/wFFAZgB8wH/ATUBiwHzAf8BKQGBAdoB/wFFAWgBgQH/ + AWEBgQGCAf8BTwGgAdwB/wFYAb8B+wH/AVEBvQH4Af8BWQGSAcQB/wGOAkwB+QFbAgIBuAEaAgEBIv8A + iQABiAGEAYEB/wH6AfkB9wH/AfoB+QH3Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH3Af8C+QH4Af8B+gH5 + AfgB/wL5AfgB/wH6AfkB+AH/AvkB+AH/AvkB+AH/AfoB+QH4Af8D+QH/A6gB/wPRAf8BVAGVAdYB/wE2 + AZUB8AH/ATgBjAHuAf8BJAGGAfsB/wEpAWgBjQH/AUEBMQEjAf8BdQFmAVwB/wFaAYMBpgH/AVUBwgL/ + AVsBxAH4Af8BRwG0AfMB/wFjAZEBwwH/AWQCBQHkAUoCAgGG/wCJAAGIAYQBgQH/AfsB+QH4Af8B+gH5 + AfcB/wH7AfkB+AH/AfoB+QH4Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH4Af8B+gH5AfgB/wL5AfgB/wL5 + AfgB/wL5AfgB/wP5Af8D0QH/A6YB/wHKAc0BzwH/ATcBlQHpAf8BPgGSAe8B/wEvAYcB7AH/ARoBgQHy + Af8BIgGBAcMB/wE9AUcBUAH/AVsBZgFuAf8BTgGXAdMB/wFUAb0B/AH/AVsBwwH3Af8BVwHBAfoB/wFC + AaAB3QH/AcUBxwHIAf8BXQICAb0BLQIBAUP/AIUAAYgBhAGBAf8B+wH5AfcB/wH6AfkB9wH/AfoB+QH3 + Af8B+gH5AfgB/wH6AfkB9wH/AfoB+QH4Af8C+QH4Af8B+gH5AfgB/wL5AfgB/wL5AfgB/wH6AfkB+AH/ + AvkB+AH/A5wB/wPXAf8BegGlAc0B/wE3AZUB8AH/AUQBkwHvAf8BJAGDAesB/wEWAYEB6wH/ARkBgQHp + Af8BKwGBAbcB/wE1AYEBtgH/AT8BmwHoAf8BUAG0AfcB/wFXAb0B9wH/AVYBvQH3Af8BSAGxAfUB/wF6 + AZ8BwAH/AWsCBQHmAU0CAgGR/wCFAAGIAYQBgQH/AfsB+QH3Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH4 + Af8B+gH5AfcB/wL5AfcB/wH6AfkB+AH/AfoB+QH4Af8B+gH5AfgB/wL5AfgB/wH6AvkB/wLlAeQB/wOb + Af8B0gHVAdcB/wEzAZcB6QH/AUkBmwHxAf8BQQGTAe8B/wEcAYEB6gH/ARYBgQH2Af8BIwFnAY4B/wE6 + ATkBOAH/AVoBWwFdAf8BQQGBAawB/wFDAa0B/QH/AU8BswH0Af8BUQG2AfUB/wFNAbEB9gH/ATkBmAHf + Af8CzQHOAf8BWgICAbkBGgIBASL/AIEAAYgBhAGBAf8B+gH5AfcB/wH6AfkB9wH/AfoB+QH3Af8B+gH5 + AfcB/wH6AfkB+AH/AfoB+QH3Af8B+gH5AfcB/wL5AfgB/wL5AfcB/wH6AfkB+AH/AfoB+QH4Af8CxQHE + Af8DvAH/AZ4BvgHMAf8BMwGaAe4B/wFUAZ4B8AH/AToBkgHuAf8BGAGBAekB/wEWAYIB9wH/ASgBXwGB + Af8BOAEtASMB/wFfAVcBUQH/AT8BgQGlAf8BNAGeAfsB/wFCAaQB8gH/AUYBqAHzAf8BRgGlAfIB/wE4 + AZkB6wH/AbEBugG/Af8BYQIDAdEBOAIBAVr/AIEAAYgBhAGBAf8B+wH5AfYB/wH6AfkB9wH/AfoB+QH2 + Af8B+gH5AfcB/wH7AfkB9wH/AfoB+QH3Af8B+gH5AfcB/wH6AfkB+AH/AfoB+QH4Af8C+QH4Af8B+gH5 + AfgB/wOyAf8D1AH/AXYBtwHZAf8BOAG1AfUB/wFZAacB8QH/ATYBjQHtAf8BFgGBAekB/wEWAYIB9gH/ + AScBWwGBAf8BLAEkAR0B/wFNAUYBQQH/ATgBeAGYAf8BJQGRAfgB/wEyAZUB8AH/ATgBlgHvAf8BOwGW + Ae4B/wExAY4B7QH/AYsBogGzAf8BZgIFAeIBRgIBAXv/AIEAAYgBhAGBAf8B+gH5AfcB/wH6AfkB9wH/ + AfsB+QH3Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH3Af8B+gH5AfgB/wH6AfkB+AH/AfoB+QH3Af8B+gH5 + AfcB/wL5AfgB/wOmAf8D1gH/AUgBtwHmAf8BQgHBAfgB/wFcAcIB9wH/ATQBmgHvAf8BFgGBAekB/wEW + AYEB9QH/ASUBVgGBAf8BHwEYARYB/wE3AS8BKAH/AS8BaQGHAf8BGQGGAfcB/wEiAYQB6wH/ASkBgwHq + Af8BLwGEAekB/wEtAYEB6QH/AXIBjAGyAf8BeQIqAfYBTwICAZf/AIEAAYgBhAGBAf8B+gH5AfcB/wH7 + AfkB9wH/AfsB+QH3Af8B+gH5AfcB/wH7AfkB9wH/AfoB+QH3Af8B+gH5AfgB/wH6AfkB9wH/AfoB+QH4 + Af8B+gH5AfcB/wH6AfkB+AH/ApQBkwH/A+YB/wEzAbYB6AH/AUoBxQH5Af8BXQHGAfgB/wE0AbcB9QH/ + ARYBmQHvAf8BFgGJAfYB/wEfAU0BdgH/AxYB/wEiARoBFwH/ASgBXgGBAf8BFgGBAfQB/wEZAYEB5wH/ + AR8BgQHmAf8BJgGBAeUB/wEnAYEB5wH/AU4BgQG4Af8BkwJdAfsBWAICAbf/AIEAAYgBhAGBAf8B+wH5 + AfcB/wH6AfkB9gH/AfoB+QH2Af8B+gH5AfcB/wH6AfkB9wH/AfsB+QH3Af8B+gH5AfcB/wH7AfkB9wH/ + AfoB+QH4Af8B+gH5AfcB/wL5AfcB/wKVAZQB/wPnAf8BLwG7Ae0B/wFMAcYB+QH/AWEByAH4Af8BQgG9 + AfcB/wEjAbIB9AH/ARoBrAH8Af8BNgFoAYEB/wEpASUBIgH/ARkCFgH/ASEBUgF/Af8BFgGBAfEB/wEW + AYEB5QH/ARwBgQHjAf8BIwGBAeMB/wEiAYAB4wH/ATkBgQG/Af8DwQH/AVgCAgG3/wCBAAGIAYQBgQH/ + AfoB+QH2Af8B+gH5AfcB/wH7AfkB9wH/AfoB+QH3Af8B+gH5AfcB/wH7AfkB9gH/AfoB+QH3Af8B+wH5 + AfcB/wH6AfkB9wH/AfoB+QH3Af8B+gH5AfgB/wKWAZUB/wPnAf8BNAHCAfEB/wFPAckB+gH/AXQBzwH5 + Af8BbgHNAfkB/wFWAcQB9wH/AUUBvwH9Af8BZwGBAY0B/wFpAWEBXQH/AUwBRQFAAf8BMgFiAYEB/wEW + AYMB8AH/ARgBgQHnAf8BHgGBAeQB/wEjAYEB4wH/AR4BewHiAf8BKAF6AcQB/wPCAf8BWAICAbf/AIEA + AYgBhAGBAf8B+wH5AfcB/wH7AfkB9gH/AfoB+QH3Af8B+wH5AfcB/wH7AfkB9wH/AfsB+QH3Af8B+gH5 + AfcB/wH6AfkB9wH/AfoB+QH3Af8B+gH5AfcB/wH6AfkB+AH/ApcBlgH/A+gB/wE3AcUB8QH/AVkB0AH8 + Af8BgQHaAfwB/wGOAeAB/QH/AYQB3QH8Af8BgQHXAv8BgQGSAZ4B/wOBAf8BcAFlAV4B/wFCAXABgQH/ + ARYBkwHxAf8BHQGKAeoB/wEgAYUB5wH/ASABgQHlAf8BFgF+AeQB/wElAXsBxAH/A8IB/wFYAgIBt/8A + gQABiAGEAYEB/wH7AfkB9gH/AfsB+QH2Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH2Af8B+wH5AfcB/wH7 + AfkB9wH/AfoB+QH3Af8B+gH5AfcB/wH6AfkB+AH/AfoB+QH4Af8DmAH/A+gB/wFPAcQB6wH/AVAByAHy + Af8BgQHZAfoB/wGzAe0C/wHEAfIC/wGsAe0C/wGQAaoBsgH/AoEBggH/AXACcQH/AUIBewGDAf8BGgGa + AfMB/wEfAY4B6wH/ARwBhAHoAf8BFgGBAeAB/wEWAYEB1gH/ATwBgQHBAf8DwAH/AVgCAgG3/wCBAAGI + AYQBgQH/AfsB+QH2Af8B+gH5AfcB/wH6AfkB9wH/AfsB+QH2Af8B+gH5AfcB/wH7AfkB9wH/AfsB+QH3 + Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH3Af8B+gH5AfcB/wOZAf8D+gH/AeMB5wHoAf8BtAHQAdoB/wGP + AcsB4QH/AZoB2QHwAf8B2gH2Af0B/wHUAfgC/wGZAd8B+AH/AXQBxgHvAf8BPQGtAecB/wEhAZ8B6gH/ + ARsBlwHvAf8BFgGEAeQB/wEbAYEB1AH/AXUBnAHFAf8BlwGzAcMB/wHNAdMB1QH/AacCfQH8AVgCAgG3 + /wCBAAGIAYQBgQH/AfsB+QH3Af8B+wH5AfYB/wH7AfkB9gH/AfoB+QH3Af8B+wH5AfYB/wH7AfkB9wH/ + AfsB+QH3Af8B+wH5AfYB/wH7AfkB9wH/AfoB+QH3Af8B+gH5AfcB/wG4ArcB/wGeAp0B/wG2ArUB/wPU + Af8D9gH/AdMB3AHhAf8BswHYAecB/wGsAeQB9wH/AZIB5AL/AW0B0QH9Af8BNAG4AfkB/wEWAaIB8wH/ + ARYBiwHhAf8BXAGgAdcB/wG8AcgBzgH/Ad4C3QH/A8YB/wGPAo4B/wFaAgIBuQFIAgIBgv8AgQABiAGE + AYEB/wH7AfkB9wH/AfsB+QH2Af8B+wH5AfYB/wH6AfkB9gH/AfsB+QH3Af8B+gH5AfYB/wH6AfkB9wH/ + AfsB+QH3Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH3Af8B+gH5AfcB/wH6AfkB+AH/AtsB2QH/AbYCtQH/ + AqIBoQH/A9IB/wHvAu4B/wG1AdYB4wH/AXYBywHxAf8BQwG/AfQB/wEWAagB7gH/ARoBmQHjAf8BiQG5 + AdMB/wHfAd0B3AH/A70B/wOPAf8DqwH/A4EB/wEcAgEBJgELAgEBDf8AgQABiAGEAYEB/wH7AfkB9gH/ + AfsB+QH2Af8B+wH5AfYB/wH7AfkB9wH/AfsB+QH2Af8B+wH5AfcB/wH7AfkB9gH/AfsB+QH3Af8B+wH5 + AfYB/wH7AfkB9wH/AfoB+QH3Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH4Af8B+gH5AfcB/wHuAe0B6wH/ + Aq4BrQH/A6wB/wHvAu4B/wHBAdAB1wH/AY0BwwHZAf8BhQG6AdEB/wG1AcUBzAH/AdoC2QH/A58B/wOn + Af8D6wH/A/kB/wGIAYQBgQH/ARwCAQEmAQsCAQEN/wCBAAFtAiMB9gH7AfkB9gH/AfsB+QH2Af8B+gH5 + AfYB/wH7AfkB9wH/AfoB+QH2Af8B+wH5AfYB/wH6AfkB9gH/AfoB+QH3Af8B+gH5AfcB/wH7AfkB9wH/ + AfoB+QH3Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH3Af8B+gH5AfgB/wH6AfkB+AH/AfoB+QH4Af8B1ALT + Af8DoAH/A90B/wPvAf8D7gH/A9MB/wObAf8D1wH/A/kB/wP5Af8D+QH/AYgBhAGBAf8BHAIBASYBCwIB + AQ3/AIEAAW0CIwH2AfsB+QH2Af8B+wH5AfYB/wH6AfkB9gH/AfsB+QH2Af8B+wH5AfcB/wH7AfkB9wH/ + AfoB+QH2Af8B+wH5AfcB/wH7AfkB9gH/AfsB+QH2Af8B+wH5AfcB/wH7AfkB9wH/AfoB+QH3Af8B+gH5 + AfcB/wH6AfkB9wH/AfoB+QH3Af8B+gH5AfgB/wL5AfgB/wLmAeUB/wKtAawB/wORAf8BkQKQAf8DqgH/ + AuUB5AH/A/kB/wP5Af8B+AL5Af8D+QH/AYgBhAGBAf8BHAIBASYBCwIBAQ3/AIEAAW0CIwH2AfsB+QH2 + Af8B+wH5AfYB/wH7AfkB9gH/AfsB+QH2Af8B+wH5AfYB/wH6AfkB9gH/AfsB+QH2Af8B+wH5AfYB/wH7 + AfkB9gH/AfoB+QH3Af8B+wH5AfcB/wH6AfkB9wH/AfsB+QH3Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH4 + Af8B+gH5AfcB/wL5AfgB/wL5AfgB/wL5AfgB/wL5AfgB/wH6AfkB+AH/AfoB+QH4Af8D+QH/AvkB+AH/ + A/kB/wL5AfgB/wP5Af8BiAGEAYEB/wEcAgEBJgELAgEBDf8AgQABbQIjAfYB+wH5AfYB/wH7AfkB9gH/ + AfsB+QH2Af8B+wH5AfYB/wH7AfkB9gH/AfsB+QH2Af8B+gH5AfcB/wH6AfkB9gH/AfsB+QH2Af8B+wH5 + AfcB/wH6AfkB9wH/AfoB+QH2Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH3Af8B+gH5AfcB/wH6AfkB+AH/ + AfoB+QH3Af8B+gH5AfcB/wL5AfgB/wL5AfgB/wL5AfgB/wH6AfkB+AH/AfoB+QH4Af8C+QH4Af8C+QH4 + Af8D+QH/A/kB/wGIAYQBgQH/ARwCAQEmAQsCAQEN/wCBAAFtAiMB9gH7AfkB9gH/AfsB+QH2Af8B+wH5 + AfYB/wH7AfkB9gH/AfsB+QH2Af8B+wH5AfYB/wH7AfkB9gH/AfoB+QH2Af8B+wH5AfYB/wH7AfkB9gH/ + AfoB+QH2Af8B+wH5AfcB/wH6AfkB9wH/AfsB+QH3Af8B+gH5AfcB/wH6AfkB9wH/AfoB+QH3Af8B+gH5 + AfcB/wH6AfkB+AH/AfoB+QH3Af8B+gH5AfgB/wL5AfgB/wH6AfkB+AH/AvkB+AH/AvkB+AH/AvkB+AH/ + A/kB/wP5Af8BiAGEAYEB/wEcAgEBJgELAgEBDf8AgQABbgIjAfYBywHJAccB/wHLAckBxwH/AcsByQHH + Af8BywHJAccB/wHLAckBxwH/AcsByQHHAf8BywHJAccB/wHLAckBxwH/AcsByQHHAf8BywHJAccB/wHL + AckBxwH/AcsByQHHAf8BywHJAccB/wHLAckBxwH/AcsByQHHAf8BywHJAccB/wHMAcoByQH/Ac0BywHK + Af8BzQHMAcoB/wHNAcwBygH/Ac0BywHJAf8BzAHKAcgB/wHMAcoByAH/AcsByQHHAf8BywHJAccB/wHL + AckBxwH/AcsByQHHAf8BywHJAccB/wGIAYQBgQH/ARoCAQEjAQoCAQEL/wCBAAGAAn8B/gHmAd4B2AH/ + Ad8B1wHRAf8B3gHXAdEB/wHeAdcB0QH/Ad4B1wHRAf8B3gHXAdEB/wHeAdcB0QH/Ad4B1wHRAf8B3gHX + AdEB/wHeAdcB0QH/Ad4B1wHRAf8B3gHXAdEB/wHeAdcB0QH/Ad4B1wHRAf8B3gHXAdEB/wHeAdcB0QH/ + Ad4B1wHRAf8B3gHXAdEB/wHeAdcB0QH/Ad4B1wHRAf8B3gHXAdEB/wHeAdcB0QH/AZEBgQF+Af8B3gHX + AdEB/wGRAYEBfgH/Ad4B1wHRAf8BkQGBAX4B/wHeAdcB0QH/AYgBhAGBAf8BEgIBARYBBgIBAQb/AIEA + AUYCAQF8AYgBhAGBAf8BiAGEAYEB/wGIAYQBgQH/AYgBhAGBAf8BiAGEAYEB/wGIAYQBgQH/AYgBhAGB + Af8BiAGEAYEB/wGIAYQBgQH/AYgBhAGBAf8BiAGEAYEB/wGIAYQBgQH/AYgBhAGBAf8BiAGEAYEB/wGI + AYQBgQH/AYgBhAGBAf8BiAGEAYEB/wGIAYQBgQH/AYgBhAGBAf8BiAGEAYEB/wGIAYQBgQH/AYgBhAGB + Af8BiAGEAYEB/wGIAYQBgQH/AYgBhAGBAf8BiAGEAYEB/wGIAYQBgQH/AYgBhAGBAf8BSAICAYEBBgIB + AQYBAwIBAQL/AP8A/wD/AP8AhQABQgFNAT4HAAE+AwABKAMAAYADAAEgAwABAQEAAQEGAAECFgAD/wEA + Av8B4AF/DAAC/wHAAT8MAAL/AYABHw8AAQ8PAAEHDwABAw8AAQMPAAEBDwABAf8AXQAE/wwABP8MAAs= + + + + True + + + True + + + True + + + True + + + True + + + True + + \ No newline at end of file diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/PluginManagementContent.Designer.cs b/Hyphen/Plugins/Configuration/Forms/Controls/PluginManagementContent.Designer.cs new file mode 100644 index 0000000..bd09554 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/PluginManagementContent.Designer.cs @@ -0,0 +1,224 @@ +using Virtuoso.Miranda.Plugins.Configuration.Forms.Controls; + +namespace Virtuoso.Miranda.Plugins.Configuration.Forms.Controls +{ + partial class PluginManagementContent + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.Windows.Forms.ListViewGroup listViewGroup1 = new System.Windows.Forms.ListViewGroup("Enabled and running", System.Windows.Forms.HorizontalAlignment.Left); + System.Windows.Forms.ListViewGroup listViewGroup2 = new System.Windows.Forms.ListViewGroup("Disabled by the user", System.Windows.Forms.HorizontalAlignment.Left); + System.Windows.Forms.ListViewGroup listViewGroup3 = new System.Windows.Forms.ListViewGroup("Crashed", System.Windows.Forms.HorizontalAlignment.Left); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PluginManagementContent)); + this.EnablePluginBTN = new System.Windows.Forms.Button(); + this.DisablePluginBTN = new System.Windows.Forms.Button(); + this.StatusColumn = new System.Windows.Forms.ColumnHeader(); + this.PluginsLVIEW = new System.Windows.Forms.ListView(); + this.NameColumn = new System.Windows.Forms.ColumnHeader(); + this.AuthorColumn = new System.Windows.Forms.ColumnHeader(); + this.VersionColumn = new System.Windows.Forms.ColumnHeader(); + this.panel1 = new Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader(); + this.pictureBox1 = new System.Windows.Forms.PictureBox(); + this.DescriptionLABEL = new System.Windows.Forms.Label(); + this.panel2 = new Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection(); + this.HomePageLBTN = new System.Windows.Forms.LinkLabel(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); + this.SuspendLayout(); + // + // EnablePluginBTN + // + this.EnablePluginBTN.AutoSize = true; + this.EnablePluginBTN.Enabled = false; + this.EnablePluginBTN.ImeMode = System.Windows.Forms.ImeMode.NoControl; + this.EnablePluginBTN.Location = new System.Drawing.Point(678, 46); + this.EnablePluginBTN.Name = "EnablePluginBTN"; + this.EnablePluginBTN.Size = new System.Drawing.Size(95, 23); + this.EnablePluginBTN.TabIndex = 11; + this.EnablePluginBTN.Text = "Enable plugin"; + this.EnablePluginBTN.UseVisualStyleBackColor = false; + this.EnablePluginBTN.Click += new System.EventHandler(this.EnablePluginBTN_Click); + // + // DisablePluginBTN + // + this.DisablePluginBTN.AutoSize = true; + this.DisablePluginBTN.Enabled = false; + this.DisablePluginBTN.ImeMode = System.Windows.Forms.ImeMode.NoControl; + this.DisablePluginBTN.Location = new System.Drawing.Point(678, 75); + this.DisablePluginBTN.Name = "DisablePluginBTN"; + this.DisablePluginBTN.Size = new System.Drawing.Size(95, 23); + this.DisablePluginBTN.TabIndex = 10; + this.DisablePluginBTN.Text = "Disable plugin"; + this.DisablePluginBTN.UseVisualStyleBackColor = false; + this.DisablePluginBTN.Click += new System.EventHandler(this.DisablePluginBTN_Click); + // + // StatusColumn + // + this.StatusColumn.Text = "Status"; + // + // PluginsLVIEW + // + this.PluginsLVIEW.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { + this.NameColumn, + this.AuthorColumn, + this.VersionColumn, + this.StatusColumn}); + this.PluginsLVIEW.FullRowSelect = true; + listViewGroup1.Header = "Enabled and running"; + listViewGroup1.Name = "EnabledGroup"; + listViewGroup2.Header = "Disabled by the user"; + listViewGroup2.Name = "DisabledByUserGroup"; + listViewGroup3.Header = "Crashed"; + listViewGroup3.Name = "DisabledByCrashGroup"; + this.PluginsLVIEW.Groups.AddRange(new System.Windows.Forms.ListViewGroup[] { + listViewGroup1, + listViewGroup2, + listViewGroup3}); + this.PluginsLVIEW.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable; + this.PluginsLVIEW.HideSelection = false; + this.PluginsLVIEW.Location = new System.Drawing.Point(12, 46); + this.PluginsLVIEW.MultiSelect = false; + this.PluginsLVIEW.Name = "PluginsLVIEW"; + this.PluginsLVIEW.ShowItemToolTips = true; + this.PluginsLVIEW.Size = new System.Drawing.Size(650, 257); + this.PluginsLVIEW.Sorting = System.Windows.Forms.SortOrder.Ascending; + this.PluginsLVIEW.TabIndex = 9; + this.PluginsLVIEW.UseCompatibleStateImageBehavior = false; + this.PluginsLVIEW.View = System.Windows.Forms.View.Details; + this.PluginsLVIEW.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.PluginsLVIEW_ItemSelectionChanged); + // + // NameColumn + // + this.NameColumn.Text = "Title"; + // + // AuthorColumn + // + this.AuthorColumn.Text = "Author"; + // + // VersionColumn + // + this.VersionColumn.Text = "Version"; + // + // panel1 + // + this.panel1.BackColor = System.Drawing.Color.Transparent; + this.panel1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0))))); + this.panel1.Dock = System.Windows.Forms.DockStyle.Top; + this.panel1.Font = new System.Drawing.Font("Tahoma", 8.25F); + this.panel1.HeaderFont = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.panel1.HeaderText = "The following list contains installed Hyphen plugins."; + this.panel1.Image = ((System.Drawing.Image)(resources.GetObject("panel1.Image"))); + this.panel1.Location = new System.Drawing.Point(0, 0); + this.panel1.MinimumSize = new System.Drawing.Size(300, 40); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(790, 40); + this.panel1.TabIndex = 16; + // + // pictureBox1 + // + this.pictureBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image"))); + this.pictureBox1.ImeMode = System.Windows.Forms.ImeMode.NoControl; + this.pictureBox1.Location = new System.Drawing.Point(625, 170); + this.pictureBox1.Name = "pictureBox1"; + this.pictureBox1.Size = new System.Drawing.Size(212, 235); + this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; + this.pictureBox1.TabIndex = 15; + this.pictureBox1.TabStop = false; + // + // DescriptionLABEL + // + this.DescriptionLABEL.AutoEllipsis = true; + this.DescriptionLABEL.BackColor = System.Drawing.Color.Transparent; + this.DescriptionLABEL.ImeMode = System.Windows.Forms.ImeMode.NoControl; + this.DescriptionLABEL.Location = new System.Drawing.Point(20, 335); + this.DescriptionLABEL.Name = "DescriptionLABEL"; + this.DescriptionLABEL.Size = new System.Drawing.Size(586, 53); + this.DescriptionLABEL.TabIndex = 12; + this.DescriptionLABEL.Text = "(...)"; + // + // panel2 + // + this.panel2.BackColor = System.Drawing.Color.Transparent; + this.panel2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(224)))), ((int)(((byte)(192))))); + this.panel2.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.panel2.ForeColor = System.Drawing.Color.Black; + this.panel2.Location = new System.Drawing.Point(12, 309); + this.panel2.MinimumSize = new System.Drawing.Size(300, 20); + this.panel2.Name = "panel2"; + this.panel2.SectionName = "Description"; + this.panel2.Size = new System.Drawing.Size(543, 20); + this.panel2.TabIndex = 17; + // + // HomePageLBTN + // + this.HomePageLBTN.AutoSize = true; + this.HomePageLBTN.Enabled = false; + this.HomePageLBTN.ImeMode = System.Windows.Forms.ImeMode.NoControl; + this.HomePageLBTN.Location = new System.Drawing.Point(561, 313); + this.HomePageLBTN.Name = "HomePageLBTN"; + this.HomePageLBTN.Size = new System.Drawing.Size(58, 13); + this.HomePageLBTN.TabIndex = 18; + this.HomePageLBTN.TabStop = true; + this.HomePageLBTN.Text = "Homepage"; + // + // PluginManagementContent + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; + this.Controls.Add(this.HomePageLBTN); + this.Controls.Add(this.panel2); + this.Controls.Add(this.EnablePluginBTN); + this.Controls.Add(this.DisablePluginBTN); + this.Controls.Add(this.PluginsLVIEW); + this.Controls.Add(this.panel1); + this.Controls.Add(this.pictureBox1); + this.Controls.Add(this.DescriptionLABEL); + this.Name = "PluginManagementContent"; + this.Size = new System.Drawing.Size(790, 398); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Button EnablePluginBTN; + private System.Windows.Forms.Button DisablePluginBTN; + private System.Windows.Forms.ColumnHeader StatusColumn; + private System.Windows.Forms.ListView PluginsLVIEW; + private System.Windows.Forms.ColumnHeader NameColumn; + private System.Windows.Forms.ColumnHeader AuthorColumn; + private System.Windows.Forms.ColumnHeader VersionColumn; + private Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader panel1; + private System.Windows.Forms.PictureBox pictureBox1; + private System.Windows.Forms.Label DescriptionLABEL; + private CategoryItemSection panel2; + private System.Windows.Forms.LinkLabel HomePageLBTN; + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/PluginManagementContent.cs b/Hyphen/Plugins/Configuration/Forms/Controls/PluginManagementContent.cs new file mode 100644 index 0000000..4fee303 --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/PluginManagementContent.cs @@ -0,0 +1,189 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Diagnostics; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Collections; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Configuration.Forms.Controls +{ + internal sealed partial class PluginManagementContent : CategoryItemControl + { + #region .ctors + + private PluginManagementContent() + { + InitializeComponent(); + + PluginsLVIEW.Hide(); + DescriptionLABEL.Text = TextResources.UI_Label_SelectPluginToDisplayDescr; + + MirandaContext.Current.PluginManager.PluginStateChange += PluginManager_PluginStateChange; + } + + private void PluginManager_PluginStateChange(object sender, PluginStateChangeEventArgs e) + { + if (InvokeRequired) + Invoke(new MethodInvoker(delegate { OnShow(true); })); + else + OnShow(true); + } + + #endregion + + #region UI Handlers + + protected internal override void Close() + { + MirandaContext.Current.PluginManager.PluginStateChange -= PluginManager_PluginStateChange; + } + + protected internal override bool OnShow(bool firstTime) + { + if (!firstTime) + return false; + + PluginDescriptorReadOnlyCollection plugins = MirandaContext.Current.PluginManager.Plugins; + + try + { + SynchronizationHelper.BeginCollectionUpdate(plugins); + + PluginsLVIEW.Items.Clear(); + DisablePluginBTN.Enabled = EnablePluginBTN.Enabled = HomePageLBTN.Enabled = false; + + if (plugins.Count == 0) + { + PluginsLVIEW.Enabled = false; + PluginsLVIEW.Visible = true; + } + else + { + PublishPlugins(plugins); + } + } + finally + { + SynchronizationHelper.EndUpdate(plugins); + } + + CommitListViewChanges(); + return false; + } + + private void CommitListViewChanges() + { + NameColumn.AutoResize(ColumnHeaderAutoResizeStyle.HeaderSize); + AuthorColumn.AutoResize(ColumnHeaderAutoResizeStyle.HeaderSize); + VersionColumn.AutoResize(ColumnHeaderAutoResizeStyle.HeaderSize); + StatusColumn.AutoResize(ColumnHeaderAutoResizeStyle.HeaderSize); + + PluginsLVIEW.Show(); + } + + #endregion + + #region Management + + private void PublishPlugins(PluginDescriptorReadOnlyCollection plugins) + { + PluginsLVIEW.BeginUpdate(); + + foreach (PluginDescriptor descriptor in plugins) + { + try + { + ListViewItem item = new ListViewItem(new string[] { descriptor.Plugin.Name, descriptor.Plugin.Author, + descriptor.Plugin.Version.ToString(), descriptor.PluginState.ToString() }); + + switch (descriptor.PluginState) + { + case PluginState.Enabled: + item.Group = PluginsLVIEW.Groups["EnabledGroup"]; + break; + case PluginState.Disabled: + item.Group = PluginsLVIEW.Groups["DisabledByUserGroup"]; + break; + case PluginState.CrashDisabled: + item.Group = PluginsLVIEW.Groups["DisabledByCrashGroup"]; + break; + } + + item.Tag = descriptor; + PluginsLVIEW.Items.Add(item); + } + finally + { + PluginsLVIEW.EndUpdate(); + } + } + } + + private void PluginsLVIEW_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e) + { + if (e.IsSelected) + { + PluginDescriptor descriptor = (PluginDescriptor)e.Item.Tag; + PluginsLVIEW.Tag = descriptor; + + DescriptionLABEL.Text = descriptor.Plugin.Description; + + EnablePluginBTN.Enabled = !(descriptor.PluginState == PluginState.Enabled); + DisablePluginBTN.Enabled = !EnablePluginBTN.Enabled; + + HomePageLBTN.Enabled = descriptor.Plugin.HomePage != null; + } + else + { + PluginsLVIEW.Tag = null; + + DisablePluginBTN.Enabled = EnablePluginBTN.Enabled = HomePageLBTN.Enabled = false; + DescriptionLABEL.Text = TextResources.UI_Label_SelectPluginToDisplayDescr; + } + } + + private void DisablePluginBTN_Click(object sender, EventArgs e) + { + if (PluginsLVIEW.Tag is PluginDescriptor) + ((PluginDescriptor)PluginsLVIEW.Tag).SetPluginState(PluginState.Disabled, true); + } + + private void EnablePluginBTN_Click(object sender, EventArgs e) + { + if (PluginsLVIEW.Tag is PluginDescriptor) + ((PluginDescriptor)PluginsLVIEW.Tag).SetPluginState(PluginState.Enabled, true); + } + + private void HomePageLBTN_LinkClicked(object sender, LinkLabelLinkClickedEventArgs eArgs) + { + try + { + if (PluginsLVIEW.Tag is PluginDescriptor) + Process.Start(((PluginDescriptor)PluginsLVIEW.Tag).Plugin.HomePage.ToString()); + } + catch (Exception e) + { + MessageBox.Show(TextResources.ExceptionMsg_CannotOpenHomePage + e.Message, TextResources.UI_Caption_Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/Forms/Controls/PluginManagementContent.resx b/Hyphen/Plugins/Configuration/Forms/Controls/PluginManagementContent.resx new file mode 100644 index 0000000..fe44c1b --- /dev/null +++ b/Hyphen/Plugins/Configuration/Forms/Controls/PluginManagementContent.resx @@ -0,0 +1,483 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + + + + iVBORw0KGgoAAAANSUhEUgAAABwAAAAeCAYAAAA/xX6fAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALEwAA + CxMBAJqcGAAACHhJREFUSEutlglMW/cdx+MCWZO03bo2PdYua6qs6qpZyo5qSqtW26RNzbS0W1q1URNy + trlICAQI4Q5HcDCnbYy5TCCJCZchAYwBx2Aw9w3GYGzAB6c5zH3YmPfd3zQlymiOTrP0kZ/k997n//v+ + fv6/R5vXxrxuXjDztm7Z1kizt9fSNq3qaM/QtDTQRh12nMGm//dnyRBNXzHGYV4Xi1klE/OKMCypomDp + Yy1ZtRyVVccttup48VZ9oqfVkPyVVRf3J6uW+8r/vA7zABGOsrE6zcPqLB8Leh7mu8OxpAzFioqxEXU0 + VjQsWHtZCwSltZctWunlcOeUkSfHmq8988SFmEmFlmEWVk1xoKbjQU0R8WQCFrRczHcxYel+hPi/F9PD + xERb1D+fKLQYouiWoWisTsQSGZGauKDGCWMcLBq4mGkLwXJX6FOJ57pijzxRaNZF0s2GKKwaOaAmbDIi + JjJqjI3lQS5kmW5QSvww1sxAnTgcqdmFyMgXoVwugqmN+VDks12cpxBqw+lmXQSsI6x1kU1GGYlwIBbe + XheQkJYCUUEyxAUpKJXVQFxWjcQ8CdTV0ZhRxsDQmgyTgo3JjtjjT6xwuT+cvqxlwjocsyZZY5TIyQKW + 9Rz4XQlGOCcRkTw+RBIpqhvbUdXQjluiSpRKslBdXYhSeTWKSoQovcOJEIrLHz84y71M+lJfGKyD0WsS + igwQZZMPxmBZywaDGYkEfhqSUgUok9dDTmSN7Soo1DpUtXSjpVsLZe8QxPJmpGZmKosq6nc8tspldRh9 + UX0NK/rINQk1YIPISV+X+1mIiGYh5eZtpAmyIK9vRXZRBcrq2tGjG4HGMIbegXH0DU0io1AKFidMJiyW + /fSxwiUVg76gIqOvDV+TUDaxPmINc38MWFwebmTkQJCVhyoSZ02rCh2aAfQPT0I7Mg29cRYD4/MorulA + blF+VbG8+eePF3aH0ue7QrBCYqV0RGrDJu8Ph7k3BtyEZCSmpSMyNglpmXkoKJWisKyGiHvQPzKDoSkz + RmasMJiWUNttWEoS5AikjQpOgaxh3706xcZ+LipD6POKYKyQWKk+5n2InCzA3BuNCDYXQUw23DycIc0L + Q189D43lyRAVCVHRrIZ2dA4TCxRMixQRWyjjrGW1uW9sVSCS5RTJW36xodpFRTB9tiMQlp5QUL1ESli1 + oWHArImCm28wnNy8kBJzFgNyb8y3B2GuPRhjLeGQVJSjukMH44wF04vAFMFE0I4vIktar3Fy9/p4g3C+ + I5A+0xoAc3cIrGoGrES8YoP0dUkVgTPuATh39ghEySdgqPDEbOuVdXqkfsguuIN61ShMC8DkAkUNz1ip + ZGG5ye9arLewtPq5DUIio5ua/bDUGUS2r5A1zKSny4QFspeecPFHsN9plKScgF7mienmgHVMzYGoLE3G + TUkbjHPA2DxF9YwuUyG89C7erbz3f3B4TE1+9PEGHxJTIBY7g+8ThAUFiU7BwLduQYhmXEAx/yj6pe6Y + bPBdZ6LJH5paNq4XVmJgGhicoSj1xCqVdKdsIKO4au8PCsfrfejGWm/YYiXxfgeRz7UFwtQcBJeASPh6 + O+Fu/GFoJBdhrPV6QJ0PVOX+iE/PRuugBe2GBWhNq5AqBpEuqR/OldZFbpCO1HjRh6o8MdnkR6RX1phu + uUJu6o0Ipg98o1LhExgAAfs4VCWuGJR7rjNUfRlKaQBuFZZAqhxHjlwN9ZgF/ZMrEDf1U1fjBfoNwkH5 + Jbpe5oGxeh9MNfvDRGIiMaMl7xTiBXfhEcYHk5cCPtsZ2nJ36GQPMFR4oLMiHCXk79FjNKNjcB66qVUS + LSCq18AngqcJYqXQHpLqZe70PulFjJKoJhp912nMPYmbQjGi0woRmpCBzPw7yL/uDM09N6glbmgvOI/a + rNMQ3IhEvcEM9QQIFOSqSQTzi6bPB3Gr9h847EhkW/6w5+PNjqddvxP3Sd3oPaUuGCSxGkmVxjpvjBLq + sr5B8u1CpBdUIiJNBEmTGhU1lchMcoMw7hhyYg8hLd4LpY1dqDWsoEZvhbzfjNi8OjiedhHv2LnrX/b2 + Dr8lil+98vobL7340naHNaFa4kJXFp2HnsQzTHpiw9abqtvHEcjiI1FYAX5BI/JbjMiv64WkQUE2cBF5 + EGehrHMIst4FiLvmUKScQ0HHFK6XtCIkLq1mx1s7D5Dbf0D4nZ29/TtE/iI5pm3qLr5Ab8s/i74yN7KT + eK5hqLyEiltH4ex5CQFxuYhML0dOoxGp5X2IEymQ0zCCe13TEDaMQlClf4j0aj1SS+rM+748mGJnZ/cp + kfx1y7ZtD97yOkXnX27KPb2klriSgfCA9j5lNw7joq8/zgTGw5uTjXixEqw7ZPVpZeAVdYIn7gS3sH0N + Tn4rAlNKEJ4hBzOjCscv+uneentXCI1G+4II39wwqY25pz4ifZzuJ1XasFVbmnKI+vbkobGvzl3BKa8I + BPLFCEorR9jtKjDS5QgVVOLqLRlCbpTDJSoTzl6+cA7iwOVaEn797ntseweHY0T02SMfVRqJ627NPddR + DZlY9T1XFCZ+bXnuhZ/9448f/sX7mtfnjsKMCKEXW2BxYt7GsYAEOF5i4gzjBi4QWVDyXfhd9YOb12W4 + e5yzva1/Qziwddvze8j35kdKeyQu76hKXXQE3I07YCEnfkTYbrsgnJ/37qVogfyQD5f6+rz/3NEjn3c6 + XfZddPRmwTWUixBfRzA89qoPfvb7bDs7+/3bnn/h/Vff2PHsI2Xf/9Aldn5TKXbuFnK+XN76rP16s/1i + s7bsP3L2kz/vP371w7//22n/sQtv73pv994P/rYv+uCBT5Kuh33B3/2b1/Y4bHbY7rD5J6++9suddk+U + fX9Ca/7Zl68zPmU+9QU/4sT/AFgZKH1MoD4oAAAAAElFTkSuQmCC + + + + True + + + + iVBORw0KGgoAAAANSUhEUgAAANQAAADrCAYAAAAR8rhgAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALEwAA + CxMBAJqcGAAAQrxJREFUeF7tnQmcVNWV/xkzJpnMjM6ExHEyMeOQMSQh+YckH6NiJsQQDZpctyhx31BQ + QUQUUXABEWSVRVYFRFZpEGQVEGT/gIDIJjsNNGsjNIvQTVia//ndeufVrddvuW+rqu5+fD7nU7erXlUX + 1fdbv3POPffcf6hB/8qPD7qUbi4mq4mflX+HjfEh3F5w0eP8s+Wy5MfkE0g+AfkJEEz1ycTO+c+Jgl63 + ibnD7xfrZzQXh1a0E+W7uovyop6i/GBfUf5lP4HrDKtHt1eS1SarRVaT7KLkI00+gWr/CZSfGCLKT74v + Oj19jXj63l+Ibs9eJ6YNuktsmtlSlKx6XZzaPVWU7Zoovto8RBxd31ccXddFnN7UWZzd0jkF2+5emcAd + G9iw/NjAemRXktUmq0VWkywBrtrPtmrwAZQfHyHKTy0kqOaITfNeFe90uFEM73KbmPPeo6Lki8HiTPE8 + CVRZ0Yfi9L6Z8uezXy4UZ4s/oZ9niFNFE0XpzrHi5Nah4uSmfqJsU09xZksXUb69awq4vQCujygvIYU7 + NhCWAu5I/yvJapPVIqtJ9q1q8HEn/8Wq/gmUH4MbRyp1fIIoP01glX0sTm/rLVZ9+JRYNPYJsWpSC7F3 + 8YvkAr5k2pHPO5Ba9RBfbewvTm4bTsCNIyX7UJzdP0ucOzhfnCPgzh38RJw98JE4vXuSOL3rfVG2fbgo + 3TxAnNrSS5zdSrCZwPUW5QcM4I70FwRWAzIAV1cC92W/y8hqkiXAVfXJWBX+fxIostL1HQmqdwioKaL8 + zEqC6xNSlndE4bw2Yt7Iphlglax6ldzBinb08/biGGz1a+LEFz3Eyc0DJUinCLgze6YQYCpw8+XPZ/dN + EWd2jxOnd44Qp7YNFue2E2AMWxGp2176eT8Bx3Hcl/0aEFz1yOqSpYE72DcBripMyMr+f8gEKpV0OEMx + UgqstSmwDrwtts59Xiwb10ysnvw0KVZbe6AIMgmUjX21ur0wbe3r4iQBV7plIIE0koAqILCminPFs0X5 + IVLJkiWpW/r53P6p4uyeCeLMrlHi9Pa3RfmOt8jIlYQ7CeCgbgwcoDvYtwFZPbI6ZLXJLiWrSXZhZf9b + Je+/EnwCdkCl1Apw0QQuJbBO0wQ/NYcm6xBRtLidWDHxKbFueiuxf1m7DLCO6gKlwIXfVcG+6Cxdw9Ok + WGd2jZRAAazygx+nQDv6KUG3iDKP9J6KpxNQE8W53aPFuZ3kuu4it7GwhwEcQbcfCkeWgg0A1ierR1aH + rDbZpWQ1yRLgKsF8zfu3yECdXN/BTIurY+ly7SD7O01oxFh/JxU5+LbYs/glsWxCCqzi5S+bYGkplALU + yXU2QBmQlX3RSdjZmU1viLPbKBbb8bY4V0RJlf0fECjTUoAdIfiPkct6ZCnBR+pa/BE9PomAG2MANyAT + OGQp8X+E0qUsBdze3nXIapNdSmZdn8v7v2vyBnP0CZhArVOA4vGJwanJtu0NUY7xyWEEFE3cM8tTYH05 + WCrW3JGPi7XTUmD5B6pDRYXyAOr0xs7SLXU2APemBThSsi/npkA7vjqlcocW0JfDLIJosji3532Ccygp + HIAjZcManFyHI+A4lsNnsbc3YIMBttq0bFATlqM/X/Jr8+0T8AUUoCqFkWt1iibo2S8ILHLDjg4Ve5e+ + IpYWNBcbZrYWBz+1BysjjvJy+wgqJ4U6vbGTB1BewNE6mgSOkiCscHAdoWgA7TjFjsdWkVu5OOVm7p9i + ADecIKPUvwkcx3LGehzUbneveoYBtgS4fJvwcb+fYEAxWJQVPEUu1WlSrFOUwfvyHbGPwFo9uaXYNKs1 + pdkzwYoKKIDmrlDeQHk9/+y2nhbgZhBw8wm4FaTWG1LQAT6oHrmb5/YWEJwADgr3Jlm3dKWJTKCYVo/G + V5LVJqtFVpMsWfSOe6Jn6/XDAUVgSVfwXcoK0oTDAnHpDEqHD5KKxWCVfPaKdAWdgAoWR4WHxgsq18e3 + AriBisLRF0sJ/f+hbCc30+eyMQUfIDxA6rd3HEFFwBVB4UjJsDRghW5Xz4Z0Xz2yK8lqk9Uiq0mWAJct + IML+Hm+g6I/PMZTp8rFCGUDhfgnWewZY5CqdnE7VFAPFvmWviqVjm0nFcoLqJMVsttk+V7cvx0C5xnD0 + 3rb2EGcLBxBw9JnspUXzYlY4UvOv1qdMUTgG7twOQ+G2GYvfDB7gK+yWBm5719oEZS2ymmTJGlxYEKJ6 + PgP1lZKUUMeydEgFiuFxvYVizUytY52kiXSwv9hDirWcsoJb57QRJZ+9WkGt/AMVv9sXSsG0gSPVgnod + oCyqzFJS0uTY52SUOMHYcClTwL0nzpEqSpcSfxNAp4K3vWsDgqseWV2y2vTYZeVb3qhJlgAXFTBer+MJ + FAJtP0ClK9JJtZC8oGzgaXKDjtMC7YGUYq2b/pzYPreNOLzyFRMsv0BlI46KFSgt4PqLc7velQmR8gO0 + HniQPkusvx0llQN0WAAHhICRYjgJ3E7yFOBSSuDItmRYA/q5HlldstpkCXBegPh9PFKgVJgyxqRYpaRY + iLG+olKj/QPF3k9fFWunPyvBOkILwpUyjvKCIs7Ht3QjlxLADTOAm5xaAkDMBmVD/Ab4kKWUwKViOCic + zHAqoGFsfHk0oNt6ZHXJapNdSlaTLFn01gUrAyhZKDtIZLh8pFByq4aXq+cEk1ErKH/PCVqELaU/ehmt + /xyj6vXdfaUruGLi06LwkzYB4qhK7vbFDdz2fnJtTSocLW7LOE6uxZGyyWoT+oKD6hnAYQkBSwkADovn + Ngpdv/SLjnXXTHkSG1KTf3afgDZQDIwVLEdVMjYjqkDxGFtGSumb8+9U0XBssjhDC6c7F75EBbgtxa4F + L4oTa1/LgMtpParKu32xAtdVnAVwOwk4qiJB+ZYs44ILCWWTlSZY+CbgilMupQSOVBGbUQmqBglYNkSZ + QNFCa8aYQWGF8gLH7nE7mHDfUQqsYceQvKDF1NMUDxxBAWxvUUSKteGj1qKIwPpKAcu5DCnPs31xQhHn + a28BcG/Jci3USUrgUN5FriOUC9t5sLOboKqbSJXyCTBExxSg5DgsUF4wMVQSLCppKqVvwjJ8M44XpwsJ + rCWvUKr9ebFnUVsJVpxVEzlNPsQJRUyvDdCQFDmxsQdDVSeByvgEUkoxiPYwpRVKHaOOTcZQfhTKD0z4 + /amNhfQ+aM0GruDJeeRuFIiybT3EjvltxXrKChYtaucIVQJEllWaEiIy7qLU/omt70KlYEk9I5hi98sN + KLk/SgcoJ5BUN09VJhUmhgq3RxFjkStYhn1RBeIUBcjbP2kr1kx9Vuxb8lIFsBKgsgyUoXxnt1N1PtU/ + 7lvRHUDVS1RKCyjqEQGg3GDxeswKkfqzChKPSwgq2FFSLKTa/04p4INjCKTOFBCTYlGMBbCQaocrGEWx + bAJlMChRDYIyK0OlkhKpDIVi94/q7kyAqKgzFFBBYWKoSugPJhWL0r1lVNJUPFqUftGFtua/IDbPbiP2 + L31ZgpUAEQyIKD43uH5b570MqGpVe5UygQJExuRHzV0kQPmFCQplgqSM0RMQdsRwBU9iW/5IWi/rJLZQ + KdNGSl4Ur3glgSqmJIQXdNjmcnBNv8Tty4ihrEAZaoVtB74Vyg0kp7jJCSYAxkDx7dFRpFi0RgIrHiXQ + hQlu4Nppz4qDK15NwMoyWFg0LqU2c1ibShRKVSWbcQqoTt4xlBdE/LhdzOQHJkDF/SGOjKQYixIXZcvo + vpHi8GftJVibZz8vU+1e36zJ49G4iaisKD+6kpJGzUUClMyqDZRbK+zcPwkU7ZA1F2N1wbG7zgkmL1fP + qlAMlLyFK0gLj6WUaqdmnecK+8gOTVCrklXtE6iypFYAav2MZxOgeA3o6OevmtCoYwCFLFoooNxACqpO + GVCh9zolL45/mHIDDwyjBeEXxLzRT4oTScIiK18q5UdXJUDJGMqY7GgBljFmhQkLVJQwqe6eFSj+uYTK + mc5uoKaZvai/RSuxbkZrUbYhKaKN270tP7FJFC7umiiUI1CGK4jOP74VygsiN1WyS0Kwy+cEkfX+o1Rd + TZnA4hXtxaL3n6A0ewJU3ECd+3KR2Dr/9QQoV6Aw8RkoBsxvbOS2cOuWIneNm4ymlY6A0Qp+GR1osL2n + WDy2KSUrksxfAlSW0iVy3YcmfQWXj0FQgdJRHq9r7CDi+6wQ+VUmEzAC6jhVRh8aQnutnhRbZrfOShwR + 96TN59dPFIqLY43JrAKFgwDMglUCquwLas3sBYrX424gubl5OnFThlLhYAGyI7TH58goCpRbUk/2xxOg + Ys72JUBZgJIQGZM+UqC8QIoDJgbq+BSxg04PmTO8cQJUAlR2fL4MiFSgGIQgCqUDkZeb51uZEFcZ6iSB + orWpk7PlmtSMdx5MgEqAyhOgqB+cdPn8QKJzrVO8FCZuygCKypNOzqVav+fExAH3JRXpcQN1CFm+jkmW + z1ahVr6UBihqoLxACqtMDBXKkih1vmnWM2Jc70biwFLa+UubKJOtHtGUG1kTJOcIqC3zXkuA4sLTEgUi + dYx2wdTpJrxCxQISp88VV4+BOpQCaiMdvo0zg7fPeUbsWUBV6Z+2FSepI20+Z8wq43tDUmLLJx0SoBio + wwDKmPRyzG4bgMIBbDpunPUaHYgCu3guMAGqQ7TVg7bSr5veUgzqIKjP+hPU/KUFJSla0dlWaLL5kvyi + qIyTNx/fM85V3jQ3AaqGI1A80f0C5QeiQO6duqhro0yACQenSaAWUDPNFqJ32z+JhWMeplbQTeTO0s2z + W8pWWPuXvihQt5i0IwvvBp5NgEolPTyBomb1UqH8gqJzvW4pke11LjABqC/R8GUBAdRM9GjdQMwYfJeY + 8+79YvGYR8SKD5qI9dOa04LvM6Jo/vNJfBVBwiIFVPvE5dMDik431AFE95pQIFnS42pmL32sJ71ftH9e + QK5eM9Gl1XXigz63i6kDG4mZQ+4Rc4cTWGMfESsnNpVtsNT4Cl1z89Glyvf3hBhq45wEqBq8WQ+NCxka + dYxzjOSZu7qwRFY+5FSv56FMDJUEaiEB9aR4g4Aa1/MWMZ6g+rDfX8U0AmvWsHvE/JEPiqXjGifxVUQK + tTFRKHL5DLWQEKljBiMMUKGVyAqVJkzS5UPzzEVi9YdPis4tfifGdL9ZjOtxs4RqYt/bxZQBd4pp5AZ+ + POw+x/gKFSNJfKUXX8HlW//xq4nL5wgUw7C9C3UVIoXCz24qFTk8GskHTkCorh6PD9IB1ATUGlKoTk/9 + TozuLiRUY3rcIgp632qCBTdwxtt3J/FVSJVKAfVKApQ9UO3SfRtUoGKFxqeL5wYToDpI5/8SUJ9/+IQJ + FKCSYPW4VbqAAOuDPreZbqAaX30+6fEkvvIBGWKodbMSoBSXLw3RoRX5ApSDi+cF0/7eBNTbso/fakqT + v/bUbyVIqkGpGCq4gSpY1vhqEy0OY/1qb7J+5ZiwgUKtnflyolCsUKggsBuXk0LJ86Kyqk4uIOnApANU + 979I988KllN8tc5Yv+I0O5raJGVM6fgKQK2b+VICVH4B5QGSLkwSKDoak3qjI4Zq/3i9CgqlxlQMlapY + AIvjK5lmp/UrTrOzWiFpkVRbpKACUGs+SoAyXT5HhaJzWuNXKA2Q/MAEoIrpHCrq14fKiFea2gOViqdS + KqWqlVN8hTT7soLGAmqFtSt2AZOi2wQoc2+Ip0LFClQEICEBAYCsVkzH5JR9KtZQUuJlN6AU188KFmcD + EV9xmh1qhbUrgCoXhI24Cl861TnFDoVaPaNd4vJpAYWzoyKLoTQh8lIkTo/bwSQVivr0GUC1a+KsUFbX + z06xGCxeFMbaFSotGCooFdw/VLFXV6gA1OfT2yZA8S5XV5cvNFA+IOJSIru1JfU+J5D4/gPUfObUclkF + 0a7JNbYxlDXrZ4XJ6gbyojAqLQAVlAruH2Iq7LdCogIxVXVMViRAcU8JYwKngEpNfHWM0wsRI+grVAB4 + nOrxnKByg2lvLzoHlmw/rWsRUFCRdo9dI0Z1vSkUVJy4UKGC+4cKdmwLwV4rbAlh16+6QXX24EKxamqb + RKEYogO0lcFuDKDk6YbqpI9j7KVITrGSChfD5ACUF1RjHOIpa2zFNYGosFgw6kGBRWDEU9gOUl1VKgHK + olA5AUoHIq9YiYFSYTKBWiHWkkK1NRTKCyiveIrB4goLJCrY9UPVOlQKsVR1TFAAqJVTX0wUKusK5Qci + HVUCUFaYJFDkep5aIavNX1SA0oLKkkp3SlRgrQoFtlApxGqFc1tJdxkucnWLpQDUigQoqjY3JrhUKFkD + 14cC7LT7F9rl8wuQriI5gWTCRaCdojOLpjxBQF0lYyjVrKVIdqVJTkkKjqeQTsfiLzYuYtMidgJXV7cv + AYpdPitQ9LMJF42xCi7PjjJgs42lgkJj9zyv7J2Ti2dVqd2kUgZQbQIAZbfo6xRLofYPGT+ZnKAUOrbV + I4VenRITAGr55CQpYSoUvllZrdRxBlBRgmN9rShBAkwGUCiOfaHxVWJkl0yF0nL9XJIUXE2BtSlUqWNd + CtvqUetXLdekEqCMnhLGxHYDSh7AFgdMuhB5undGqpxBMoFaIdZMa+YIVBioGCjEUcj2oQkM1qTQ/EVN + n+f71vXI3t/BBeLTSa2TpIQs2SFYsgKUH4Cc0uF2CQjcZ4VJKhQBRee+OikUx1Se8ZSxMdEaUyHbx4kJ + AIU1LwCF3c/Vbj2KFGpZAhQlJYyJK4FSx4Yi4cDqwAoVFCDdOMkJJFOhsLD7FAH1GzGi840VEhO+khQ2 + UHH6HJUTnOlD1UT1BGpBApRsI8YQLWmTBkoZA6gSuHxh4dB9vpMC2d1vp0rqfWUE1NQWok0EQNmtUSVA + Kf0myOVbPDFx+fIDKD8QeakSgKJzgaVRcexa6hzb5pHfiKGvuyuUTjxlhSoBKhOopQlQaYVCxTSrkDqW + CoWzo3QVRvc6vxDpgKTCpAAFlw9AjejyZ1e3zy9UCVAWhZrwXJKU4CoDJ6CwlhIZUEEg0gXJCpMEijYY + zmglngdQHRuK4Z1vihSqBCgVqIVi0YRnE6AygDImvITLGKeAop59usqjm+LWgcsrRuLH2cWz3pYuI5fv + WfH8Q78WQwygAJW1asLuZ6/MHx5H6hzVEklSgsCiGGpRQasEKG+gOqaA0gEgimt0IbJTpApALRHrPmot + Wj3wqwygooKKG2cmQKWAWlCQKFQNL6DKNhJQON4mClj8rCG5geWkSOr9dJRpeelisXaGPVBRQAWgCnpT + gWySNk+A4qYSOQPKjxJ5uXZWwAAT7CQ1X/zoealQ77yWiqFU00lSuCUqGCgUyKKBCyrOq/M61IL3WyYu + H1cY7Fn0vKlC6hgKJQ9gC6NQQeBRn6OjSLiGQTKBQq+4NuIZB6B0kxROUKlAzX3vQdlmrDoDNX/s0wlQ + GUAZk1gCZYxxYLUESp3gDFdYULyerwuSHUxSoajf9iwC6sFf2yoUq1VQpbICldq5W30rJRKgUCnBENFu + U7uxBAonc3hN/qge9wORE0imQi0Q62e+IF2+wR0qunxh3T8noGTDltWptmLVZgsHJSXmjk1cPk+gsPM0 + dqD8QuQFEgN1goCa9aIWUEHcP87yIYaCyweFwq5dAHUUHZCq054oAmpO4vJ5K1QsQAUBiJ9jjZPcfiag + NnzcTgI16JUbKiQlrEkKv1B5AXVyXUcJVWRbJHychpH135kAZeyHMiZqEVw+dWy4cJgQgRUqDDjWFLgf + kEyFmkdnFr0snr3fAOp1d7fPb0ylAoUsHysU+kpAoRiolOund3BZ1kGICtJiUqjRSVKiRgZENnCV0nGg + 8nibqODQfZ0gAFmfc/wTsX7OKymgXiaFAlARQoUD3NBSjNPmbkBV+XhKAtUiyfLlFVBRQKS+BgG1Ye6r + lDavKwa+dH0aqIigkkDRJkO0E/NSKADFViXVqnihmD3yqQQoEyjaaWo3jl2hooYoA6i5YsMn7e2BigAq + FSh0kfVSqEyoOlWp2Oo0KdSsEc0ToORiKLlhRS5AFUfp8sUJkPrahd1E+fE5YuMnHcUz99cVA6wKFYH7 + ZwUKC7vcm88aQ6kwVUWwEqC4jZgxCSVQxhh9EXiMA6tlr/Nsxj5hoANIbMc+FhvneQAVUKl4syG7fKxQ + aMmMNmwMlBNI1vsruxsogXovUagadhBlAtU+BVSYSZ6N56ogmUDNFpvmdXJXKB9KpRbUegKF420oba4L + FF9XWbN8CVAWhVIhqlRA2YGkALVx/uvimfvI5Wv3x8ykBIOk3lqKZ+3WqRgqHaDQktkvUJU1GwigZgxv + lsRQrDw75qXdPHV8cl2eKpQbSPzY0Vli0/zOEqh+7Rp4A6Xp/qWgokOvlSxfBZcPhwagxzmt48GCglVZ + XEEANf3dJxOgvID6ioCSrZmz4bbp/A4dkEygZoqNC7uKlgRUH1Kod+1UKaBSoaAWKuUYQ1mACgpVZUm1 + J0BZXD4nhcK3bM6B8gMRrt3eNWVHPxKbCKin7vp/onfbP8pGLVFBlapQ/4sooG3wWIfyUihWqvBg5We6 + HUBNG/pEolBphWplqhD29PD9OQPKL0QqSAzUEQJqUTcC6mcmUFFBxUCNo6Nv0N9cXYeSWT4bhVKhigKs + fHIHE6AqKJQzULKrrI47FuaaIADxcxgg6+2RGWLzou6i+d2ZQEUBlRUoHGmzciJXm6fS5moMZYUpTGxV + MeWe+1pBADV12OOJQtkpFBYnVYWKBagwANmpkR1UR6aJzUt62ALlCyqbZIUdUCs+aCq2zE6vQ+kAFSVY + nCHMhXIBqClDmiZA8SKohMiY5CpQOF93/5IQChUWHPX5TkrkqFAGUHfVEb1eTMVQVtOOqSxQ2StUCii0 + YZNHgypZPieFitINtMskYoNjNgBLgGKXT4XIZnyM+prvR6/zKMHw+1p+QdrehZISZCVTxZalPWUM5QRU + UKXyAurwyldSB1gbaXO/t0HS7DrPYcCihuz0gfli8ttNEoVyVChj0ucEKN8AGVk9BskEaorYsqSXaE5A + vfliA1uFYsXyq1Q6QHFigvdF+YUqbOJCB7B0Wj61XR+gBYEtAUpToXCUTewKFRggB5AUoLYuJaAoKeEF + FINl7pnyWLNKHY/zF8FZvlRSIu3yQaEYKLh+sDBgZRMuPyDytacOLBAfDn4sUSgvhYocqNDweECkqtSh + yWLrp31EM1Konq1/76pQamylAxWAgkrZAYWY0w6oFFQdAruBUScwgoDj9BwANXHQowlQvAiKKmm7Mb5l + Za9z3bgnMmAYHPXWiI2srp3Tz4c/JKD6kstXRwI15LUbIoOKgUL5EdahVIVyAyqtVuHByifVOkUx1MRB + iULV0AYqVlDs4PGhRFagtr0hymGHJomty/uKJwmoHq3rS6D8QOUWV6lA4VjQj4fdZ7p8OkBF5QZGVYER + Vq2kQg1MgMpDoHyqkAoTg8S3X04U25e/JZr9LROoKKCyA2rFB01k2twPUHGAlQvXEAo1oX/jxOXzUiis + p0iXLzaFCgEQw2QFyQRqgihcMSAF1HNphWKlwhE3dmtTdvdZ4ypnoFrKz8sphmKAnG6jiLHirMpwjqES + oGSeT67XkDnFUNEBFQE4bmpkB9XB8aJw5UDRrJEDUHABfUCluoBeQOHg6hLK9HkBlAuw4lhMhkKNTxQq + DRRcFYZLHeNsKNnrXDcREOd1TkrkdD+A+myQBKrbszYKZcRUQzrqJysYKl2gsLgbFKo43cEga2Juzzm1 + PwEqQ6HyEii/ACnXn93SWZQXF4gdqwYTUD9xB0oqlT5U8rxeI22OLB+SEsjypWKolMvHCgWg2MKD1SH0 + WlbUIPHrAaiCtx5JYig7VaqgUOgqG6fy+HXlHEADRKqVF48joN6mGOonomsrF4VipfKRVn/XOK9XTZt7 + ARUVWFGtZ0UJF4Aa99ZDCVBpoFoqLl96LF2+uIAKoUAyLU5mhcgK1M7V7xBQPxZdWuoBJRMWGnEVgMJW + eOza5XUoK1BYw1MVyjoOq1jqmlbYKoywcCGGSoBCUsKYmHBVMsaGauBsKNn3PKhCRQANvy/11g0kfqz8 + wPsCQD3ZKAXUO+3/aK5FmZk+RZ0y7vNwAVWg5DqUWXqUdvm8gIpSsXINVxkp1Ni+iUKZQG2e+bQJlDo2 + gYoJDDtYggJUweU7MEbsXDNEPH5HGqiooKoAFC3sLp+QGUPpAhUHWKr6IRUft4KV7Z8nxiYxVFqhnIFq + l+oqmwOgdFTI6ZozmzqJc/tHE1BDRRMLUL6gcoirnIDaNLOldJGRlPALVNxg2UEWFWgAakyfB5IYikHJ + NVBh4OHnAiLVzu0dJXatfbeCQgEov1BZs4BuQMFFPrCsrdxk6BZD6TwWVZzl93VSqqZaR6lyFS11DYAa + 1TsBytPlw1E2UStUFPA4QZQJ1AgJVJPbrxBvtPidhMjOPOMpmyygDlBwlwEV+kvowJONBIZfsHSvL9uX + ACXXoXhiQqHsxgBKdpLVcPmiBMXttaxK5PTzuT0jRNG64eTy/cgVKP9q1VD4AQpQRaFW2XQJdUHi6yRQ + vRKFMoHa9FELEyh1zEBlCxa3mEgXJL7u3J73CKj3JFCdn3ZWqCAu4NCOfzLT5lxtjqQEvpjY5WOFYqCk + WkXgBka5WOwXHKfrE6CMHbs8gfMNKL/wWK8/vbGjOLt7mChaP0I8dtsVWkD5USoAhYoJrEP5AYrhAlhR + uIJxrW35BQ1AjXzz/iQpkQ9AhYWHnw+IVDtbNFTs+WKUeIxiqE4aCqXGV15xFQOFbfA4FhT7oVih9lDp + EZISdgqlqpUJVwQxllP85ReMoNcjKTGi530JUDwZs6FQUYGjvo4VokyghqSAuu1/xWtP/VYMbH+9Y2LC + b7LCCtSsIfeKZQWNpcvnF6hsgBW3mwiFSoAit08Fym6Ms6F2UmvmOGAI+ppuEFmB2rthtGiiAOUXKic3 + 0A6opeMaiw0Ui7rFUHYKZb0vLnfQT6bRr1KVElDDeyQKpQUUep0HnfxRPE8XoAou3663SaHGZCgUgIIN + an9DKLVyA2rn/Oflrl1ZcW5k+ILeRp3E8AOVn2sB1Lvd701cPp7wG2a0MKFRx1CobAMVFCB+XtkXOI+J + 4qnCwRKoJrf90HT5GKgUVMFdQHuXr4lUKAYKnx2gwu7doEDFmSH0A4zXtRKorvckQGkBRW2ao1Aau0xc + WHjU5zNIaaAGij0bnIFiuJwWfN0Wgv0ABaiiBCuO9LsXMF6PA6ihCVA1avCE3DCjuZkhw5gnP45m2REQ + qChhsXstK0AVgNo+QAL1GClUByMpoSpUplr5dwGxuMtZvlRSQlEo+txYoRioOMBiuOJIwXtBpD6eAGWs + QzkBxfcDKBweEDccuq/vBZH6+OnCAWLvhrHS5fMCyq8LyJ2TggAVF1hxr3G5AQaghnS9O3H5eCKvn5ZW + KHWca6D8AFRRofqRQo0Vj95aSwsoPy4gA4XusQW9bxV+FKqiYoVPXnjFaJw5jEvJSvfNFUO6/C0Byhuo + F7KmUGHgUZ9buh5dWTuIU9v6pIFqfq3M7umaV8LCCtTMt+8WnDaXSQkXl88KlPpzVAkML8Ay1Myo2gBs + QYGTCtXlrgQoLaCoTbOuS6ZzXVTg2EHEMEmgtvZOxVCkUK8BqJf/IAa+0kAbKrc1Kyeg1lP8ifOKgwKV + dgejyw7qwhXmupN75orBbyRA1eBJCTfPboyTN9Czz8ycWcp7AFAcgOi8pgqP3fjU1l6UNh9NSQkFqABQ + 2amVF1DofOSUlHBTKLvHUMKUbeXyC5cEqlOjRKF44q5TgFLHVqB0Jnpc13gBZH28bHNPUURANb7lf9IK + BaDYfLiA1sVgFajxvW8T7PKxQgEoxJ9RQZXvygWgBr1+ZwJUPgPlFyAnoB5xAiqEWtkBhVo+LIrD5VOB + AlRsftXJ6/p8US4ANfD1RKFMl2/dlCdN100dZ0uhwsKjPp+3bpdu6iF2rR8lAFRHrEOp6qSOfcZVMrYy + ek0gyweFmvXO3bI41guouMBKLRynXMNcQJYolLEOxRPRDagtSgwVxp2LEhrra1XsgUCZvo3dxc61I8TD + N1/uDlQAFxBxFfpMDA8IVJxgZWYNswMZgBrwWuLy1eCJuYYUym4M1wWdZOOEIchr2wFkva90Y1d/QPlw + ARkoVEvIdSifCqW6gdmCqyJo0cEmgeqYAKUB1PN5AZQOQBWA2vCG2LFmuHjk5h/oKZSPhIUK1DgCaoZc + h3pE2+WzAyoXYHnFaGlXkl3Kire45kTRx6J/h78mSQlvhQJQLbOuUEEAsgVq9buU5fuB6NC8nhjgFEMF + iK2cgEKGFKVaTkkJN5ByrVo6cDld81XRbNGv/e0JUF5A4SibOIGKAhzra6ib4wpXDZMKBaD6tfu9GEDm + mJzwAZYrUJ+0EkXkKiOh4xegyqRcKlzHdn4k3nr1VvH8gz+raYTn1fOGJ+PqyU+ajQ0xZtDQBXVzQIWK + Axa713TbXbqdgHpIpIECVBKskGqlAxRUChUTvB4VJVxRr2+FUSc8t2zPLNHnpVvEc/fXuax6kmT8r9NA + PaEAlR5LoKhPQrbg0P09ulu0t64aKoF6zVAoBiqsWvkBClCxoXlL1GDlQ+x1Yutw8XLTX4m32v6+TgIU + tdJdPTl/gdKFx+66TUv7i4du+r7o1OJaqUx25tsFJHULCpQJllFFERdc2VawsqJJYtrgu9BSrUECFAH1 + +aTHTRVSx1AoNMDXVY6w14WBx/rcY5+/KlZ/0l0C1flpZ6ACqRUtBmNHL44IVbN8KD0qNGIodvlUhbKO + 4Q7GqVrZSnSc3D5azqH57z0gaAmm+sZRDMDnk5oqQKXH6OATB1BRgqO+FiBS7fM5XcX9BNQbLd2BYuXS + VisVqB43m2lzv0BluINZUC2/iqgbWx1e05164D8vPR2KuetVW5XiybhyYlPzcGV1jIMC0HgkLgCieF0r + ROrPK2e+Lpr/7UeiZ+v/c3T5rG6gVibQAhTcncVjHxZhgMp3uNxgPLbxbXFoVWeqY2xDbeeeQ5xYPZMT + lREoN4Csj43qfZ94uckvxVvtrtMGSisTaFUoADXmYYESLmx3gbLruHxu7qAab2XbLfSrZIdXdxOA6qut + 74l9S9vJLk+0tad+eWG3OuW7ulcfF5CBwvmwdmOcvIGmLVEoSZDX8AOP9Vq0P2tMdXyUeTLNKTHhdr+t + G6gAVdDzFjFDKtQjJlD43BB/oj+fDjS61+Qi5vIDF6A6vX+2KN1ZIMq2DRHlRf1F+cG+KTvQ58ryXd1q + EWjfqrIuYb4AFQYcp+e++sSv6WzdazKAknAFUSvrgrAB1HBKSrgBBZWSShUxWPmsXoc+e00c2zxElO6a + JM4UfyLOlSwXZ/dPIbgGybOascZJp7rUoS+HC6scWDwZVYVaTu2wGDT4w9jNG0Rd3JIFcQBUgu0L6NZK + t2+2vla0J6BUdbKOg6iVuSDsEygGK064eBE531Ts0KpO4sS2kaRcc8SZAx+LE1sGi+Jl7VCiVfWSFzyx + l9NeHrsx3Kb105plZM7igCHoa6KbDyBCmQ8OPEAcAxfNDaSMxwKoFUBEbwqkzVmhsGOXXb7COa3kIXVw + +VSQrOO4VMvOfWTIchmLHVzxijj6RX8JVtnumWLnkteRYq9ayQueyNgcZzdGk0sE2kEnfNTPk+2wFIN/ + v5rWP8ZR6hqLrX3IpevzYjpm0gXLr1pBqfD7hhvbN8wt8CiO1QQqW6rlFZ9J2NiokgPQsenGT+pz5Fh5 + TbvfX7K+n9g4+wUxf+SD9auU22dCRCdH8BjtsHicS6Cs8Fh/xumKc4ffT2c/XS0hqmBtr9NXKp+xVQZQ + lJSYRedDLcPpG7QFHkBhTcZLoZzUK5vK5QVbnI9jzerDflVsy0caokcUoNLjwrnPQJZjUygvaNweR43h + 7b//rj1MCmC6KsXXeamVjKPg8tE2+BFd/yw+6PtXeeCa3AJPbie+hMIAlS/KFSdMeG1sdWn3aN2qteWD + Jyz8f3XMoAEofJP4dd3CgKLzXE48PEotwmzVyaJYfqHC9Y61fwQT3D0cCTqmxy1iyoA7xdwR9wssiAMo + 7IdCs0u3+CnoY3FP8my+PprZPP7XH1YPoHhSY5ESQOlM8mxfg2837HXSAYqv8Q2WJWnBrt6Qjg2lOuE4 + 0JlD7pEJCaPsRtbyISmBxd2gbp8OcFXBNWxye62qCdRCyo4xEOoYQKHoMduwWH8fFMlqrzb9pXiA6vT8 + ABUkYcFrVwwTXD2ZjKDYaerARgisBZYdED/h88I3LwMFqNhwVKgOKGGuqWyQPUodqapUUsIOogygqEFL + toGyg8cNqF5tfucbKr9gyVS5ktljV+/j4anYCXEmNmKq6qTClAGWRzo9DFB2z5WQxbSwHMpFpPdUZYFa + MCqtUOp4uwSqaeQKpQuN23XY0AaFAlBsftWqj0YmUIUJ2zVG08nvHxqJCLh6n5NLzLGTkzo5wpUF1fIC + 1AQuSugYYrp1+/2Nb7m8aikUT9gFox40XSp1jH4SCLajACDq17ADKmq1soOJNtFR6+W7xEL6EuJEBFw9 + HXVyAkvGW3kAlxd8UT9eZYFCHMATXh0jNZ2PQKFLKoC6/8b/ylCoUGplWRD2hIniJpRl4TPaTtlQu7jJ + DaAErjYyqVSlYig7iPINqFSL4YrWjrZluAEVVK3gBqZ28aaqIXCeLty8DGVSYUIiglLlsCihMpMZVVi9 + 0O+jSgKFigOGSx3j2xcZrKjdNbvXcwInDFBBYqu32taXFemDaL0JMI3qepP4oA9O2DDcPCeYkN1TDIu7 + QRXKVb2qEGAGUF8jqC4wrHLzxZPVCahNM1tEApRfWHSu11GoIC4ggIJCQZ1GdL5RHgaA/U4yZtKESQUr + DtWyZg3zIf46unGoOH/+pCg/uoq2bkymHbzdPZcJkFQigv7RMIDFBsAq3z+euHPevd90q9QxKrhRia4z + wbN9DYC6t+H3HGMoFSZdsFidUFqExVuzEoIUfAVtazFjJtXNsyhTBkzqY1jsjUm1rIqGBWVAlk3QUkCd + r2Dlp3aLMwcXCTxuTWoYQGFfFIzBwm3lhCsN1H0KUOlxPgKFolhY28fqinsIqDfb/F9kULE6YWsGjqqB + q4eDAGR6nBa48XnIxVuOmXRhsl6XRbgqqFlMsB3b/K4tUCpkpwkswM7vCTGwARNDVbnhYqBQ3Gk3xvoK + Fi6zrT74fQyO0y0D1bP1b6kJy28JrPR6lJM6We+3rlshdkJFBNRpdHdBdXpcCdFUFnMipsTxPoVkjkrk + F7IcweUV30mV82ElG4dpAaX+3nsbSqC+rpgVrMqlXLZAvXuPCZAEirYlxAmUFzhOj7/wyC+kQjFQKaj8 + qxVnA1V3Dwu4cmu7sXEQdXr4LFANIdecSKFgMrPnFyC36/MULi/48LiTy6cqFFw/G6C+YYGKAat8cPFk + hVtjN0aDFj9ABYUjyPPsgAqjVmZ2z9g4iMJX3uckS4tYnQyYGCoTrijB4nrALMVcOsB4XXNUw+WzAnXP + Dd+DQgEo1VTFCgIXZw2zn9TwAgp95pa+/4in+xUEiLDPeaHxzwX+IKpChVErru+T2T2Kn7DuhATN8glN + Uu6eRZ2sQMUGFoOa5+qlBdSXizMUygDqmzTz2bzgslMtN7cwu3DxpMYWbrsxslr5ApR1O3abh37mCpRf + tWKgkOFDNTl2kwKoFR80lQ0sdYFS3UFZ2xeX5RlgQYC6+/pLoVD/pABVueFKQ3SXAlR6DKCQ4QqrJn6e + r9vHQBco3djKVCgCakSXmwyFui8wUKqCxQqWXWo+B65iEKAaNTCBAlROYAGyIMqlpuGzs9bFEx3Btzmm + RUwer6OOR+gk5AcInWt1oXG7jg730lKoTDfQORPoBFTK5WvmW6HsXEKZbo9LsTySHXKBGaDFBJsWUEhK + GO8B78cACo0vYQxVNuBS17micwt5wqI3t90YHY+wPyoKAKJ+DQB19/XOMZRTbOWUYvcEiqpGUH3vFDv5 + vT9ncDmBRxMck5zNhI8h9Lg9qpM2L16U4QLf2eASuHz/bADFYMUNlzXmsltIDlap4QXUmilPyJKbqGGI + 4vWef7COaEQ+eLfnrhU9n6vnmJzQTVroAoW0uZo69wtSXilXhGpZssG+UiJjYdcZKEDFpoKlC5eXS4hs + YdCEhj5cPLGxldtuDKCwPyoKAMK8RkbvOKPnGx0/aQIFqCRYxiKvn1teu/ILVBxgxba+FSE4TkkWPaAW + ZijUHddJhfoXBSYVLKtyReUSOsFljbns3EJ3uDyBogXNbAFlB43bfRIoCmoZJhOqAGoFAHu1oSpz6naE + KnM1KYEYSmb5DJePQbK7jUKtKqxv5Sru8glhyYYh3pUSxZlAoQ2cARSgYrNCFadLqAuX1S20j7t4wqIV + FsOljlEhgP1RUauLX3jsrm/lAFRQtXqTzpCCSiFtDqBSaXNk+fSBilO1rOn4nCQ3XCA7vP4dT6DK9tsC + 9a8EE0yFKhdw6biE7mCpQNmN5TGPBFQUAET9Gl5A+Y2tGCjU8qH0CAu72NYSBChVveJQLScVyyVkQYC6 + tX5NKNRFBlAMlh1cdqoVp3IFgatGDZ7k+Da2GwMoTKqoYQj6emaXHToc4Jn7firutHH5rC6gLlhWoFBp + jqJhnEai6/K5uYNRJzJ0QOVMYjZA0wNqvhlD4T3d8lsTKEDFpoIVN1zWZIZdXaFuTeEFGkA1zQlQKjhO + jUH8AKXjBjoBhVpG1PJh6wbS5l7Q6D6uA0Tc1/A2FExu1YJUdxxaN9jT5Tu5b17GsoMB1MUKTCpY2VYu + v5lC62JxWqHg3rBqqGO0EItDoTL6uZHa4Dgavx11Wt73Y3EnZYnsFMnrPrssoBdQKBROQZVKm0dpcYOT + jdcvVoA6d+6cgFk3HH61Z24GUOJaqVAASjUrVGGUy5qCjyINryoWx1Sp7B9PYkCUOgysjYwdcAtDxyPU + s3k2NDSu5+fxrV9I/FzPQHWlUwq7PZtKm/sx69qVLlCoOpeV5xGqVbZjrjgAK16bVqiDBw+K6dOni127 + dmVA9VWRLVD/ZgOVH9XSdQuDrG9Zy57U6ndVoVKV7TyBES/YjVEYiu6ofiZ6tq5teW9KoQCUtABQqfGV + X6AYrBRc0SpWZQTsgALUsWPHxIEDB8SOHTvEkiVLTKiOFX2coVB/qfdtKBSAUs2qWH7giitTyO6gmmZn + dUrBpAUUKRQC82xB4vV79iyiXaSGPWUFygAriFqlFoVTaXPO8nFSgmModvlUkKzjuFSrMgB2YO0gE5x9 + +/aJwYMHS6BUt+/Yrkyg/nz1vwOofzfMClZY5bLCFSRTaK1+Z6AyXT0rUOjsw5NZHSNl/DHt4PWa6FE/ + roLjNHYCihXLj/vHVRbYRt/v5QYybR4EqGypljV+i8OF8/uaBz4fmAFU3759xfjx4zOAOrprdoZCWYBi + sHCbD3BZi3ShUhw/2S/spiG6VQEqPQZQs4ZFC5QOLDrXPHXXj8Qd13037fKx66fe+nADuWgWLcTQUwI7 + duVBakaWT0eh7NQLqhWnS+iUHPELRNjr9ytAHT58WEydOlXgVlWoozszgWp41cVQqG8bpgKVa7jUCniO + o1R1si9B4omL/gl2Y7QQw/Z4nQme7Wu0gPLhBqpA4TC1gt63yrOflo57RKbNgwKVqVq5gSsbZVIqULt3 + 7xazZ8+WpgJVsnNWRnbUAhSDhdswcDllCb3S8HYFurxHy+rqpeMmdaQDFCZVtmHR+X3N/3aFuINqwcyk + hJ1CWe5zi6+cgFpMLQBwwsZ62hOFtLlbDOXnsVwpV5TpfvW19q7qb8Jz/PhxsXDhQlFQUJAB1OEdH2UA + 9aerLlIVSgUqbricFo/Vind/MAEsnrg4Rd1ujBZiaEGsM8HjvMauQQiAQnGlH6DcsoFeQGGTISom0P1o + 08yWkYHFKfhcuIVRwrV3VT8THqTLAdOsWbMygdqWCdQNV/4rgKppmBNQXnBFFW+p9YNw+djV4/1TiJvc + /zEE6JBqNwZQ2M0bJyzqa3t11lEfb0ZA3Vr/u6KLhjLZQmeJr/wABajiAEtd46psgO397C0THqTMJ02a + JA0uHy/0Hto2PUOhLEAxWLjNNly8lsX1gVaY9PZE8QQd0/3m1JmwlJLGmCc5AvKwQPmBxM+1zRqlgQJU + XVrW869WyvqVCRRl+dQYil0+VaEYKBOsGFQrX2MvJ1Xb81k/E5ySkhIJ08aNG+V9Z8+elXZoayZQf/z1 + v6gKpQKVLbjUKgwoFFdScEYP6XE9mKBdPIHRJdVuvJSAwvZ4PxM9W9dWBApQBQcLqXNOm/sFSgUsyjjL + KSZLxV/5k+AAZHtIoRicwsJC0bt3bzFx4kR535kzZ6QVb52WoVCaQPlxCZ0SGla3kBePOVHBmxwRNwWD + KQMoOv/IBEoZo4VYPgKFvgdP3PFD0+VLgZRpfmMrJCzebH2tPHkjDFAZcEUca3klPRiyXLiLe1b0NcFB + UgIVEosWLZL3nTp1SlrxlkygGvxKS6GCKpddppDBUoGKBiYVqFEKROoYQGF7fLZUx/p71KYh1rEXUAyY + LlgmULRrdwid9D6OlhKQ4dRx+awuoN3PUScyvOCq6DKmVS0O4IpWvGWCs3XrVgFDPR9AKisrk3Zg0xS5 + JscKe90vv6Xj8jkB5Ue5rOtaXM6E2Alxk1WZvNIP9o/zBEanVLsxevLFDZQbNG6PPf7XH8r9NHbqVPE+ + 7/iqAlCUqJHnQlHXJ+wLc4uhdIDKpXL5gS+ddWQA9W53Lu9jgrNlyxYxZswYaQCptLRU2v4NkzOyoxEB + pRtvqSVO7OpZYfLO5LmhxhMWQNmNMZmwJT7opI/zef6A8o6v3IBC1f0auRaVSptHaYi5cqlefmFzun7H + sj4mODt37hSjR4+Wa1EnTpwwba8FqPq/+GYUCqXrEnJJE9TJTpnCwQTQ7CBCG2K+v+oB5QyWDlDoUwio + eD0qSrBkGr4Sw7VjWW8THGT3Bg4cKCZMmCAQT7Ht/eLDDIWKGSg1/R4/TCpQKkRWoLA9Pk6l8fvavLO0 + yW21pMvX+emrNd2+iokLNdXuCyhAZdiGGdEqljVjWFnUC0Cp8CxYsECsXr1aYCsH2x4LUL/7eawKpQKF + ZISqTFhn4nKi8MrEbiBN5oaY0E5ALaAml7kAyrol2+5nFahwUKVS7UGBYrCkasUIV7bWvIK6gDuWvGmC + g4QEKs2HDh0qkxNHjhyRtmfdBxkK9X8/+0Y2XD6okx1MFfczBUtFpJ9FMNUGUNiuwEqhjuMASgcWnWse + VRQKQLHpJSns1Ooa2SizH2f5lKQEx1Cmy6colAmUep9RohS1S+j0euwq5lLNCpf0MsFBUgKlRwBq/fr1 + Agu9sKLsA+UGk/6CrR/QaPLWA0Q8idUxWohhS7zOBM/2NU5AhQELi7vYZPgO0uZhgMohXBVcRiMuixu2 + wiU95XYNgINbGDYawvjnorUTpELhvcDq/fTrcSkUL/A6KVM8MAE8AuHCoR3/VJ+BoLEJUF4DdcvlAk0+ + VHWyG/tRLBMoOrQa9Y0ou0JixrdCOSlYltxCv8ooFU5JivCE93O7fXFPgV4SbrZjzfiMDOk1P4kFKK4D + RNyE9DinxhEz+Ssl8qNM6rW0kHkhAVUXUA3teENeAmXdANdYEyg/8ZUVKFSJoBU1Nloiba7t8nm5hJwp + zELM5ReuoNdvWdwjA6bi4mJhtSwCpbp6XDmOqvHoEhA6sAEqVAmwWkGhsBU8W+6cn12jfoDSdQNVlw8K + lQLqYXksKFqqoTU1jge1jZvC3p+n6qUL2Mq5vcSCjafE1t0lskGLnRWuGpehUFfHp1DZS0R4gfVO+z9K + pYKhJ18YoPwA4vdaAPWXa7/t6fL5cQN1gMLuXVikamUHYyUDbP6MfuKlj85L6zrnvBiy6LyYvrpMrNma + iqX27t0rsggU3D52+biKnFPl0Wf3vKCiyV0LExxAjaet4H4nezauZ6A6tfiNgHnFUjpg+QGKwZJwhVUn + nefnOWBzp/URL047L+2FqedFm8nnRetJ50Wr8efFMwXnRbfpp8QncwoyFOo3P44lhuL1J17MRRxlhSr7 + 7h9BcRmaXOYrUI/c/AOBvm4MVBRgBQVKVa2swMUAMmR5EIsBKEDEILWemIbpqTHnRfPR58Xw8RMzgLry + igvjyvLZQaWWG3GCwktbon2c4ojL0MAlG4rj9DucNrQBqFrf/dqV5If/hMZX03lR16tw+VUsufOXtnBw + 2twphlKVyW0MlzCrcFlS9eZCc5ZgmzO1t3iWIIK1mpCCqcXY84JheuK9s2JYdoGyQsUpdCQpeM9TdpMU + wJO2cFxEk71hHFCF6WnwkPiBuOSf/6EuvUW1OPI/GTA6MlQCpgsWA9XrxfqC4kiZNrdLSugCleES5hIu + h/gMwGVAB/BCwPfx5F7StYMBJCtMTYefEUPHjs9I6Pz6f2NVKGstn3VNKvtuH+sdwXQRTf6GYQCI+rkO + QFkrjw3ALr+6zUM/u94NrgpAdf+L3LpizfIFAcr6nJwpl06sFvCaWZN6SjViRYKL9+TIcwLK1HT4KfHY + sDIxZExBroCyJiigUNlZk3JyGgkIQNUgajCCvt4DN33fTqG8NqP9J63Ok4t4+dXtm/36T9aSJbh8pkIZ + QGHpAM1qVtJaFNLmUQCV1+oVAigAxJYC6YwECdZ4yAkxeHQmUL/8YawKpS7w5o86qYDR5L+QrH5QCKJ4 + 3hbqXwADUN/9pwounxdQ1se/TxXrP6ODB+p1aHbln7yA4rWoqKGqCoDN/KCHBAhqxIoEkB4dWioeHnxC + PDjomBg0cmyGQtX9n3+MKylhrZZAQoIXeHOTkHBRqtihYmjcbiMCKmMbNS1UfO+hm77/E1Kuq2jT5fVw + +VSFYqCgVGxxwsXrXXAR891NnDmhm4SHDYr08ODjBNJx8cDAY+K+/iUE1JhsAMV1fHbrUNxjL9rsXdhX + M5Sqnl/F0QFF95r7b/wv8Z3wCmXdM6OuWXyDsocXTex72+WLxz78y5WTHm9gB1Q24bKm5/MJshkEFAPE + ED0w8IgE6d5+h8U9fQ+Kge+NzgDqF/8dqUKpPdK5Z0S0W9zDguP1fJr8dXUBiPq6iICyuga8AGibVqWM + 57cIoMvI6pI1UGHKBVgVkh1GBUcuQJvzQXvRfFChBIghYpD+1rtYNOp1QPQfPjIuoKwwxbPF3QuIKB7P + FVT3QqG+UcOaNvcTQ/mCye6zIojyGjA34OJyIxdPaivGjB4g3hw2QbQYuFqCdOeb+8j2ir7DhsuSLRje + 289/EIlCuSUfOF7K/npTGLgIqtpRK5Dd622m5o5s9zYMBVRomBwAu4ggq0V2JVlDOwWLO+bKx9efMraz + 6Dt0uBg3sltGlrTO90MD5RYvZW+7Rhh4nJ5LAFwWFioVGK9xCKBigSkIYPk4+bP5nkIAZRcvwV2Ppr9e + HIAEeU2GyguGKB6/p+H3RM2v+3b5sgZTAljKrXMytKf7aTCFqjrxkg5kBEtNsoZRQOP2Gvfc4BuonMIU + BLA4FpKzqUBuv2sIbWS9/Dtfq28pHfOKgatevKQJ1UVxQ3X3DZeKb/+jtkLlHUzVHTA0KqUg5yc+gKq6 + 8VI2odo0E51VK5oPoCoFTC6A1SalqueUos/WAnOUykbHrd5I6vQHTZiqR7ykCdW3SKnqO7luTrDo3H/3 + 9ZeKf7vAU6EqLUwOgNUkgLQAswIYJRA6rzV/5MN/mDXsvvqqFfS+/arH77jiCqpKhTL9hwZQ1Ste0oGK + 4LiQrL4OJH6u0QCqSsEUNWBeihfkcSrT+sMTjX50hQYoXrGSXQULL9bmbiu7zoTPxjVxQNWogatCVXmY + 8gkwbHGhfo431v3hhT+g98WfvdOtF0yqKv0bvZ7dFvbcbr3IBjQ6v4PAqutHhZyuRSceAHWxvctXLWHK + JWBP3f1j8eer//0qeg/Wc5gAhHqfHWR25zxx1yK1r17udtnqTO5cXaMLlVf7qjsbXGIHVAKTyx+W3DjE + YHXI6gdx6eyeg0PpGlE8e81Pv/EL+tXqyYB8fi3f8mMqZFbA1MYqlbceL9twESx1vIDxetwGqAQmH39I + guNCskvDAoZW3ejgSw1Xfk6/no/XRJW31fAYDKAAMhUwQGY9ptO6f6ly1eP5+FtEcimdCHiZFzRuj1uA + SmAK+VcJCtj4PreLBr/6lqj1nQv+m94CSn+QNIDBRWPj+/A4QAFsDBcAY4vuvNuQn0elfHoYqO647hLx + r/8g0+YJTDH89XUB69D8SmH01wMkfOYSkgaqYWMfDI8DMhUwhoxhxOPRn90Uw2eUly9pQNVQR624Uw9u + AZSRlABQcBkyNgcaf8DETYjor06bKy8ku5SszvKCxvWx2RIHKeAUwtqXfA2pcu7I6vSZX0DX4DFcpwIG + eNh4Ry2uw/XJvyCfAH0bXkxANVSB8Rrf/vvvAigEwglMQT70cM+54P4bL/smdYq6hLwEuGlBvrjwHDtL + QAr3t0k9m77xLiaItKECUFQpAaASZYriD5C8RtX7BKhd18XkAtb3Uic8brSgwkKi67b1qvcpJf+j5BPw + 8Ql8OODOC3Wgqv2fX0MLqu+T5ba1ro//W3Jp8gnk5BMY0eWmrzNU3PtAvZ0yoJEwgLqE3mCygp6Tv1Ly + SyvVJ/BW299/nY7i/KUdUEM6NhS1/+NrNyYwVao/afJm8+ETsIOq1X0/xULir+j95a7hez58OMl7SD6B + IJ+AFarf/fwbDSldi/WnIOnaIG8heU7yCVStT2DFB01/DPfvib9d0ZB6mqOIMvmXfAJ59Qn8f8Ih4unr + 18DMAAAAAElFTkSuQmCC + + + + True + + + True + + + True + + + True + + \ No newline at end of file diff --git a/Hyphen/Plugins/Configuration/IEncryption.cs b/Hyphen/Plugins/Configuration/IEncryption.cs new file mode 100644 index 0000000..adeacdc --- /dev/null +++ b/Hyphen/Plugins/Configuration/IEncryption.cs @@ -0,0 +1,29 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + public interface IEncryption + { + byte[] Encrypt(byte[] data); + byte[] Decrypt(byte[] data); + } +} diff --git a/Hyphen/Plugins/Configuration/IStorage.cs b/Hyphen/Plugins/Configuration/IStorage.cs new file mode 100644 index 0000000..fa0a7ad --- /dev/null +++ b/Hyphen/Plugins/Configuration/IStorage.cs @@ -0,0 +1,33 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + public interface IStorage : IDisposable + { + Stream OpenRead(Type configType, ConfigurationOptionsAttribute options); + Stream OpenWrite(Type configType, ConfigurationOptionsAttribute options); + + bool Exists(Type configType, ConfigurationOptionsAttribute options); + } +} diff --git a/Hyphen/Plugins/Configuration/IsolatedStorage.cs b/Hyphen/Plugins/Configuration/IsolatedStorage.cs new file mode 100644 index 0000000..a4bfbbe --- /dev/null +++ b/Hyphen/Plugins/Configuration/IsolatedStorage.cs @@ -0,0 +1,78 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Virtuoso.Miranda.Plugins.Infrastructure; +using FxIsolatedStorage = System.IO.IsolatedStorage.IsolatedStorage; +using System.IO.IsolatedStorage; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + public class IsolatedStorage : StorageBase + { + #region Fields + + private IsolatedStorageFile Store; + + #endregion + + #region .ctors + + public IsolatedStorage() + { + Store = IsolatedStorageFile.GetUserStoreForAssembly(); + } + + #endregion + + #region Methods + + public override Stream OpenRead(Type configType, ConfigurationOptionsAttribute options) + { + if (Store == null) + throw new InvalidOperationException(); + + return new IsolatedStorageFileStream(GetFileName(configType, options), FileMode.Open, Store); + } + + public override Stream OpenWrite(Type configType, ConfigurationOptionsAttribute options) + { + if (Store == null) + throw new InvalidOperationException(); + + return new IsolatedStorageFileStream(GetFileName(configType, options), FileMode.Create, Store); + } + + public override bool Exists(Type configType, ConfigurationOptionsAttribute options) + { + return Store.GetFileNames(GetFileName(configType, options)).Length != 0; + } + + public override void Dispose() + { + if (Store != null) + Store.Dispose(); + + Store = null; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/PMConfigurator.cs b/Hyphen/Plugins/Configuration/PMConfigurator.cs new file mode 100644 index 0000000..2246b79 --- /dev/null +++ b/Hyphen/Plugins/Configuration/PMConfigurator.cs @@ -0,0 +1,84 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Configuration; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Miranda.Plugins.Configuration.Forms.Controls; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + internal sealed class PMConfigurator : IInternalConfigurator + { + #region .ctors + + private PMConfigurator() { } + + #endregion + + #region Properties + + private static IConfigurablePlugin singleton; + public static IConfigurablePlugin Singleton + { + get + { + return singleton ?? (singleton = new PMConfigurator()); + } + } + + #endregion + + #region IConfigurablePlugin Members + + public string Name + { + get { return "Plugins"; } + } + + private PluginConfiguration[] configuration; + public PluginConfiguration[] Configuration + { + get { return configuration ?? (configuration = new PluginConfiguration[] { PMConfiguration.Singleton }); } + } + + public void PopulateConfiguration(CategoryCollection categories) + { + Category category = new Category(TextResources.Config_Management, TextResources.Config_Management_Description); + categories.Add(category); + + CategoryItem item = new CategoryItem(TextResources.Config_Management_Plugins, TextResources.Config_Management_Plugins_Description, typeof(PluginManagementContent)); + item.Image = VisualResources.Image_64x67_Management; + category.Items.Add(item); + } + + public void ResetConfiguration() + { + PMConfiguration.Reset(); + } + + public void ReloadConfiguration() + { + PMConfiguration.Reload(); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/PortableEncryption.cs b/Hyphen/Plugins/Configuration/PortableEncryption.cs new file mode 100644 index 0000000..fd76af0 --- /dev/null +++ b/Hyphen/Plugins/Configuration/PortableEncryption.cs @@ -0,0 +1,120 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Security.Cryptography; +using System.IO; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + public abstract class PortableEncryption : IEncryption + { + #region Fields + + private static readonly byte[] KeyGeneratorSalt = new byte[] { 13, 74, 64, 0, 11, 128, 32, 44, 113, 42 }; + + #endregion + + #region .ctors + + protected PortableEncryption() { } + + #endregion + + #region Methods + + public virtual byte[] Encrypt(byte[] data) + { + ICryptoTransform transform = CreateEncryptor(); + + using (MemoryStream stream = new MemoryStream(data.Length)) + { + using (CryptoStream crypto = new CryptoStream(stream, transform, CryptoStreamMode.Write)) + crypto.Write(data, 0, data.Length); + + return stream.ToArray(); + } + } + + public virtual byte[] Decrypt(byte[] data) + { + ICryptoTransform transform = CreateDecryptor(); + + using (MemoryStream inStream = new MemoryStream(data), outStream = new MemoryStream(data.Length)) + { + using (CryptoStream crypto = new CryptoStream(inStream, transform, CryptoStreamMode.Read)) + { + int count = 0; + byte[] buffer = new byte[2048]; + + while ((count = crypto.Read(buffer, 0, buffer.Length)) != 0) + outStream.Write(buffer, 0, count); + } + + return outStream.ToArray(); + } + } + + #endregion + + #region Encryption + + protected virtual ICryptoTransform CreateEncryptor() + { + string key = PromptForKey(false); + + TripleDES tripleDes = TripleDES.Create(); + byte[] keyBytes; + byte[] ivBytes; + GetSecretBytes(tripleDes, key, out keyBytes, out ivBytes); + + return tripleDes.CreateEncryptor(keyBytes, ivBytes); + } + + protected virtual ICryptoTransform CreateDecryptor() + { + string key = PromptForKey(true); + + TripleDES tripleDes = TripleDES.Create(); + byte[] keyBytes; + byte[] ivBytes; + GetSecretBytes(tripleDes, key, out keyBytes, out ivBytes); + + return tripleDes.CreateDecryptor(keyBytes, ivBytes); + } + + protected static void GetSecretBytes(SymmetricAlgorithm algorithm, string password, out byte[] keyBytes, out byte[] ivBytes) + { + Rfc2898DeriveBytes keyGenerator = new Rfc2898DeriveBytes(password, KeyGeneratorSalt, 20); + keyBytes = keyGenerator.GetBytes(algorithm.LegalKeySizes[0].MaxSize / 8); + + keyGenerator.IterationCount = 10; + ivBytes = keyGenerator.GetBytes(algorithm.LegalBlockSizes[0].MaxSize / 8); + } + + #endregion + + #region Abstracts + + protected abstract string PromptForKey(bool decrypting); + + #endregion + } +} + \ No newline at end of file diff --git a/Hyphen/Plugins/Configuration/PortableStorage.cs b/Hyphen/Plugins/Configuration/PortableStorage.cs new file mode 100644 index 0000000..deb4767 --- /dev/null +++ b/Hyphen/Plugins/Configuration/PortableStorage.cs @@ -0,0 +1,63 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + public class PortableStorage : StorageBase + { + #region Helpers + + private string GetPath(Type configType, ConfigurationOptionsAttribute options) + { + string configDirectory = Path.Combine(MirandaEnvironment.MirandaFolderPath, "Configuration"); + + if (!Directory.Exists(configDirectory)) + Directory.CreateDirectory(configDirectory); + + return Path.Combine(configDirectory, GetFileName(configType, options)); + } + + #endregion + + #region Methods + + public override Stream OpenRead(Type configType, ConfigurationOptionsAttribute options) + { + return File.OpenRead(GetPath(configType, options)); + } + + public override Stream OpenWrite(Type configType, ConfigurationOptionsAttribute options) + { + return File.OpenWrite(GetPath(configType, options)); + } + + public override bool Exists(Type configType, ConfigurationOptionsAttribute options) + { + return File.Exists(GetPath(configType, options)); + } + + public override void Dispose() { } + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/StorageBase.cs b/Hyphen/Plugins/Configuration/StorageBase.cs new file mode 100644 index 0000000..588473c --- /dev/null +++ b/Hyphen/Plugins/Configuration/StorageBase.cs @@ -0,0 +1,71 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.IO; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + public abstract class StorageBase : IStorage + { + #region .ctors + + protected StorageBase() { } + + #endregion + + #region Helpers + + protected virtual string GetFileName(Type configType, ConfigurationOptionsAttribute options) + { + if (configType == null) + throw new ArgumentNullException("configType"); + + string versionSuffix = options != null && options.Version != null ? + options.Version.ToString() : String.Empty; + + string profileBoundSuffix = String.Empty; + + if (options != null && options.ProfileBound) + { + if (!MirandaContext.Initialized) + throw new InvalidOperationException(); + + profileBoundSuffix = Path.GetFileNameWithoutExtension(MirandaContext.Current.MirandaDatabase.ProfileName); + } + + return String.Format("{0}_{1}_{2}", configType.FullName, versionSuffix, profileBoundSuffix).Replace('.', '-') + ".dat"; + } + + #endregion + + #region Methods + + public abstract Stream OpenRead(Type configType, ConfigurationOptionsAttribute options); + + public abstract Stream OpenWrite(Type configType, ConfigurationOptionsAttribute options); + + public abstract bool Exists(Type configType, ConfigurationOptionsAttribute options); + + public abstract void Dispose(); + + #endregion + } +} diff --git a/Hyphen/Plugins/Configuration/WindowsEncryption.cs b/Hyphen/Plugins/Configuration/WindowsEncryption.cs new file mode 100644 index 0000000..fc9ab4f --- /dev/null +++ b/Hyphen/Plugins/Configuration/WindowsEncryption.cs @@ -0,0 +1,37 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Security.Cryptography; + +namespace Virtuoso.Miranda.Plugins.Configuration +{ + public class WindowsEncryption : IEncryption + { + public byte[] Encrypt(byte[] data) + { + return ProtectedData.Protect(data, null, DataProtectionScope.CurrentUser); + } + + public byte[] Decrypt(byte[] data) + { + return ProtectedData.Unprotect(data, null, DataProtectionScope.CurrentUser); + } + } +} diff --git a/Hyphen/Plugins/DefaultAssemblyProbe.cs b/Hyphen/Plugins/DefaultAssemblyProbe.cs new file mode 100644 index 0000000..bf98c73 --- /dev/null +++ b/Hyphen/Plugins/DefaultAssemblyProbe.cs @@ -0,0 +1,53 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.IO; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Hyphen; + +namespace Virtuoso.Miranda.Plugins +{ + internal sealed class DefaultAssemblyProbe : AssemblyProbe + { + #region .ctors + + public DefaultAssemblyProbe() { } + + #endregion + + #region Impls + + public override string[] FindAssemblies() + { + try + { + return Directory.Exists(MirandaEnvironment.ManagedPluginsFolderRelativePath) ? + Directory.GetFiles(MirandaEnvironment.ManagedPluginsFolderRelativePath, "*.dll") : new string[0]; + } + catch (Exception e) + { + Log.DebuggerWrite(3, Loader.LogCategory, "Unable to find plugins: " + e.Message); + return new string[0]; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/DefaultExceptionHandler.cs b/Hyphen/Plugins/DefaultExceptionHandler.cs new file mode 100644 index 0000000..cec1a8a --- /dev/null +++ b/Hyphen/Plugins/DefaultExceptionHandler.cs @@ -0,0 +1,95 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.CompilerServices; +using Virtuoso.Miranda.Plugins.Forms; +using Virtuoso.Miranda.Plugins.Resources; +using System.Diagnostics; +using Virtuoso.Hyphen.Mini; +using System.Windows.Forms; + +namespace Virtuoso.Miranda.Plugins +{ + internal sealed class DefaultExceptionHandler : IExceptionHandler, IExceptionReporter + { + #region Properties + + private MirandaPlugin plugin; + public MirandaPlugin Plugin + { + get { return plugin; } + } + + #endregion + + #region .ctors + + private DefaultExceptionHandler(MirandaPlugin plugin) + { + this.plugin = plugin; + } + + public static DefaultExceptionHandler Create() + { + return Create(null); + } + + public static DefaultExceptionHandler Create(MirandaPlugin plugin) + { + return new DefaultExceptionHandler(plugin); + } + + #endregion + + #region Methods + + public void HandleException(Exception e, PluginDescriptor descriptor) + { + IExceptionReporter reporter = plugin as IExceptionReporter ?? (plugin == null ? (IExceptionReporter)null : (IExceptionReporter)this); + ErrorDialog.PresentModal(e, reporter, String.Format(TextResources.MsgBox_Formatable1_Text_ModuleError, plugin), false); + } + + void IExceptionReporter.ReportException(Exception e) + { + try + { + ProcessStartInfo startInfo = new ProcessStartInfo(); + startInfo.UseShellExecute = true; + + if (plugin is StandalonePlugin) + { + startInfo.FileName = String.Format("mailto:{0}?subject={1}&body={2}", ((StandalonePlugin)plugin).AuthorEmail, String.Format(TextResources.UI_Formatable1_Text_PluginCrashed, plugin), e.ToString()); + } + else + { + startInfo.FileName = plugin.HomePage.ToString(); + } + + Process.Start(startInfo); + } + catch + { + MessageBox.Show(TextResources.MsgBox_Text_UnableToReportError, TextResources.MsgBox_Caption_Warning, MessageBoxButtons.OK, MessageBoxIcon.Warning); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/DefaultPluginManager.cs b/Hyphen/Plugins/DefaultPluginManager.cs new file mode 100644 index 0000000..c3181ba --- /dev/null +++ b/Hyphen/Plugins/DefaultPluginManager.cs @@ -0,0 +1,172 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.IO; +using System.Reflection; +using Virtuoso.Hyphen; +using Virtuoso.Miranda.Plugins.Forms; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins +{ + internal sealed class DefaultPluginManager : PluginManagerBase + { + #region Fields & Constants + + public new const string LogCategory = Loader.LogCategory + "::PluginManager"; + public const string InternalServiceNamePrefix = "Virtuoso.Miranda.Plugins.Services."; + + #endregion + + #region .ctors + + public DefaultPluginManager(FusionContext fusionContext) + : base(fusionContext, true, true) + { + AssemblyName assemblyName = Assembly.GetExecutingAssembly().GetName(); + Log.DebuggerWrite(0, LogCategory, "Hyphen Plugin Manager v" + assemblyName.Version.ToString() + " is initializing, please wait..."); + + FirePrimaryPluginManagerInitializedEvent(this, EventArgs.Empty); + Log.DebuggerWrite(0, LogCategory, "Default Plugin Manager initialized."); + } + + #endregion + + #region Fusion + + protected internal override void FindAndLoadPlugins() + { + if (FusionContext.IsInvalid) + throw new InvalidOperationException(TextResources.ExceptionMsg_InvalidFusionContext); + + if (Initialized) + throw new InvalidOperationException(TextResources.ExceptionMsg_PluginManagerAlreadyInitialized); + + Assembly currentAssembly = null; + Type currentType = null; + MirandaPlugin currentPlugin = null; + + try + { + string[] paths = FusionContext.AssemblyProbe.FindAssemblies(); + + if (paths.Length == 0) + { + Log.DebuggerWrite(1, LogCategory, "No managed plugins found."); + return; + } + + Log.DebuggerWrite(0, LogCategory, "Found " + paths.Length + " managed plugins..."); + + foreach (string path in paths) + LoadAssembly(path, ref currentAssembly, ref currentType, ref currentPlugin); + } + catch (Exception e) + { + FusionException fEx = null; + Log.DebuggerWrite(0, LogCategory, e.ToString()); + + if (e is IOException) + fEx = new FusionException(TextResources.ExceptionMsg_IOErrorOccurred, currentAssembly, null, null, e); + if (e is FusionException) + fEx = (FusionException)e; + else + fEx = new FusionException(e.Message, currentAssembly, currentType, null, e); + + HandleException(fEx, currentPlugin != null ? currentPlugin.Descriptor : (PluginDescriptor)null); + } + finally + { + DeclareInitialized(); + RaiseFusionCompletedEvent(EventArgs.Empty); + + Infrastructure.PluginConfiguration.FlushCaches(); + Log.DebuggerWrite(0, LogCategory, "Fusion completed."); + } + } + + private void LoadAssembly(string path, ref Assembly currentAssembly, ref Type currentType, ref MirandaPlugin currentPlugin) + { + Log.DebuggerWrite(0, LogCategory, "Loading assembly '" + path + "'..."); + + try + { + currentAssembly = Assembly.Load(Path.GetFileNameWithoutExtension(path)); + + foreach (Type type in GetExposedPlugins(currentAssembly)) + LoadPluginFromType(currentType = type); + } + catch (BadImageFormatException bifE) + { + throw new FusionException(String.Format(TextResources.ExceptionMsg_Formatable1_UnmanagedImageFound, path), bifE.FusionLog, null, null, null, bifE); + } + catch (FileNotFoundException fnfE) + { + throw new FusionException(String.Format(TextResources.ExceptionMsg_Formatable1_AssemblyLoadError, currentAssembly != null ? currentAssembly.ToString() : path), fnfE.FusionLog, currentAssembly, currentType, null, fnfE); + } + catch (FusionException) + { + throw; + } + catch (Exception e) + { + throw new FusionException(String.Format(TextResources.ExceptionMsg_Formatable1_AssemblyLoadError, path, e.Message), currentAssembly.ToString(), null, null, null, e); + } + } + + private void LoadPluginFromType(Type type) + { + if (type == null) + throw new ArgumentNullException("type"); + + Log.DebuggerWrite(0, LogCategory, "Loading plugin '" + type.Name + "'..."); + + try + { + MirandaPlugin plugin = InstantiatePlugin(type, false); + + if (plugin == null) + return; + + PluginDescriptor pluginDescriptor = LoadPlugin(plugin); + + // If not disabled, enable the plugin + if (IsEnabled(plugin)) + SetPluginState(pluginDescriptor, PluginState.Enabled); + + Log.DebuggerWrite(0, LogCategory, "Plugin successfully loaded."); + } + catch (MissingMethodException mmEx) + { + throw new FusionException(String.Format(TextResources.ExceptionMsg_Formatable1_NoValidPluginCtorFound, type.FullName), type.Assembly, type, null, mmEx); + } + catch (TargetInvocationException tiEx) + { + throw new FusionException(String.Format(TextResources.ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin, + type.FullName, tiEx.InnerException != null ? tiEx.InnerException.Message : TextResources.UI_Label_Unknown), + type.Assembly, type, null, tiEx.InnerException); + } + catch (MethodAccessException maEx) + { + throw new FusionException(String.Format(TextResources.ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin, type.FullName), type.Assembly, type, null, maEx); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Docs/COPYING.LESSER.txt b/Hyphen/Plugins/Docs/COPYING.LESSER.txt new file mode 100644 index 0000000..e1504da --- /dev/null +++ b/Hyphen/Plugins/Docs/COPYING.LESSER.txt @@ -0,0 +1,505 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 2.1, February 1999 + + Copyright (C) 1991, 1999 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +[This is the first released version of the Lesser GPL. It also counts + as the successor of the GNU Library Public License, version 2, hence + the version number 2.1.] + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +Licenses are intended to guarantee your freedom to share and change +free software--to make sure the software is free for all its users. + + This license, the Lesser General Public License, applies to some +specially designated software packages--typically libraries--of the +Free Software Foundation and other authors who decide to use it. You +can use it too, but we suggest you first think carefully about whether +this license or the ordinary General Public License is the better +strategy to use in any particular case, based on the explanations below. + + When we speak of free software, we are referring to freedom of use, +not price. Our General Public Licenses are designed to make sure that +you have the freedom to distribute copies of free software (and charge +for this service if you wish); that you receive source code or can get +it if you want it; that you can change the software and use pieces of +it in new free programs; and that you are informed that you can do +these things. + + To protect your rights, we need to make restrictions that forbid +distributors to deny you these rights or to ask you to surrender these +rights. These restrictions translate to certain responsibilities for +you if you distribute copies of the library or if you modify it. + + For example, if you distribute copies of the library, whether gratis +or for a fee, you must give the recipients all the rights that we gave +you. You must make sure that they, too, receive or can get the source +code. If you link other code with the library, you must provide +complete object files to the recipients, so that they can relink them +with the library after making changes to the library and recompiling +it. And you must show them these terms so they know their rights. + + We protect your rights with a two-step method: (1) we copyright the +library, and (2) we offer you this license, which gives you legal +permission to copy, distribute and/or modify the library. + + To protect each distributor, we want to make it very clear that +there is no warranty for the free library. Also, if the library is +modified by someone else and passed on, the recipients should know +that what they have is not the original version, so that the original +author's reputation will not be affected by problems that might be +introduced by others. + + Finally, software patents pose a constant threat to the existence of +any free program. We wish to make sure that a company cannot +effectively restrict the users of a free program by obtaining a +restrictive license from a patent holder. Therefore, we insist that +any patent license obtained for a version of the library must be +consistent with the full freedom of use specified in this license. + + Most GNU software, including some libraries, is covered by the +ordinary GNU General Public License. This license, the GNU Lesser +General Public License, applies to certain designated libraries, and +is quite different from the ordinary General Public License. We use +this license for certain libraries in order to permit linking those +libraries into non-free programs. + + When a program is linked with a library, whether statically or using +a shared library, the combination of the two is legally speaking a +combined work, a derivative of the original library. The ordinary +General Public License therefore permits such linking only if the +entire combination fits its criteria of freedom. The Lesser General +Public License permits more lax criteria for linking other code with +the library. + + We call this license the "Lesser" General Public License because it +does Less to protect the user's freedom than the ordinary General +Public License. It also provides other free software developers Less +of an advantage over competing non-free programs. These disadvantages +are the reason we use the ordinary General Public License for many +libraries. However, the Lesser license provides advantages in certain +special circumstances. + + For example, on rare occasions, there may be a special need to +encourage the widest possible use of a certain library, so that it becomes +a de-facto standard. To achieve this, non-free programs must be +allowed to use the library. A more frequent case is that a free +library does the same job as widely used non-free libraries. In this +case, there is little to gain by limiting the free library to free +software only, so we use the Lesser General Public License. + + In other cases, permission to use a particular library in non-free +programs enables a greater number of people to use a large body of +free software. For example, permission to use the GNU C Library in +non-free programs enables many more people to use the whole GNU +operating system, as well as its variant, the GNU/Linux operating +system. + + Although the Lesser General Public License is Less protective of the +users' freedom, it does ensure that the user of a program that is +linked with the Library has the freedom and the wherewithal to run +that program using a modified version of the Library. + + The precise terms and conditions for copying, distribution and +modification follow. Pay close attention to the difference between a +"work based on the library" and a "work that uses the library". The +former contains code derived from the library, whereas the latter must +be combined with the library in order to run. + + GNU LESSER GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License Agreement applies to any software library or other +program which contains a notice placed by the copyright holder or +other authorized party saying it may be distributed under the terms of +this Lesser General Public License (also called "this License"). +Each licensee is addressed as "you". + + A "library" means a collection of software functions and/or data +prepared so as to be conveniently linked with application programs +(which use some of those functions and data) to form executables. + + The "Library", below, refers to any such software library or work +which has been distributed under these terms. A "work based on the +Library" means either the Library or any derivative work under +copyright law: that is to say, a work containing the Library or a +portion of it, either verbatim or with modifications and/or translated +straightforwardly into another language. (Hereinafter, translation is +included without limitation in the term "modification".) + + "Source code" for a work means the preferred form of the work for +making modifications to it. For a library, complete source code means +all the source code for all modules it contains, plus any associated +interface definition files, plus the scripts used to control compilation +and installation of the library. + + Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running a program using the Library is not restricted, and output from +such a program is covered only if its contents constitute a work based +on the Library (independent of the use of the Library in a tool for +writing it). Whether that is true depends on what the Library does +and what the program that uses the Library does. + + 1. You may copy and distribute verbatim copies of the Library's +complete source code as you receive it, in any medium, provided that +you conspicuously and appropriately publish on each copy an +appropriate copyright notice and disclaimer of warranty; keep intact +all the notices that refer to this License and to the absence of any +warranty; and distribute a copy of this License along with the +Library. + + You may charge a fee for the physical act of transferring a copy, +and you may at your option offer warranty protection in exchange for a +fee. + + 2. You may modify your copy or copies of the Library or any portion +of it, thus forming a work based on the Library, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) The modified work must itself be a software library. + + b) You must cause the files modified to carry prominent notices + stating that you changed the files and the date of any change. + + c) You must cause the whole of the work to be licensed at no + charge to all third parties under the terms of this License. + + d) If a facility in the modified Library refers to a function or a + table of data to be supplied by an application program that uses + the facility, other than as an argument passed when the facility + is invoked, then you must make a good faith effort to ensure that, + in the event an application does not supply such function or + table, the facility still operates, and performs whatever part of + its purpose remains meaningful. + + (For example, a function in a library to compute square roots has + a purpose that is entirely well-defined independent of the + application. Therefore, Subsection 2d requires that any + application-supplied function or table used by this function must + be optional: if the application does not supply it, the square + root function must still compute square roots.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Library, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Library, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote +it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Library. + +In addition, mere aggregation of another work not based on the Library +with the Library (or with a work based on the Library) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may opt to apply the terms of the ordinary GNU General Public +License instead of this License to a given copy of the Library. To do +this, you must alter all the notices that refer to this License, so +that they refer to the ordinary GNU General Public License, version 2, +instead of to this License. (If a newer version than version 2 of the +ordinary GNU General Public License has appeared, then you can specify +that version instead if you wish.) Do not make any other change in +these notices. + + Once this change is made in a given copy, it is irreversible for +that copy, so the ordinary GNU General Public License applies to all +subsequent copies and derivative works made from that copy. + + This option is useful when you wish to copy part of the code of +the Library into a program that is not a library. + + 4. You may copy and distribute the Library (or a portion or +derivative of it, under Section 2) in object code or executable form +under the terms of Sections 1 and 2 above provided that you accompany +it with the complete corresponding machine-readable source code, which +must be distributed under the terms of Sections 1 and 2 above on a +medium customarily used for software interchange. + + If distribution of object code is made by offering access to copy +from a designated place, then offering equivalent access to copy the +source code from the same place satisfies the requirement to +distribute the source code, even though third parties are not +compelled to copy the source along with the object code. + + 5. A program that contains no derivative of any portion of the +Library, but is designed to work with the Library by being compiled or +linked with it, is called a "work that uses the Library". Such a +work, in isolation, is not a derivative work of the Library, and +therefore falls outside the scope of this License. + + However, linking a "work that uses the Library" with the Library +creates an executable that is a derivative of the Library (because it +contains portions of the Library), rather than a "work that uses the +library". The executable is therefore covered by this License. +Section 6 states terms for distribution of such executables. + + When a "work that uses the Library" uses material from a header file +that is part of the Library, the object code for the work may be a +derivative work of the Library even though the source code is not. +Whether this is true is especially significant if the work can be +linked without the Library, or if the work is itself a library. The +threshold for this to be true is not precisely defined by law. + + If such an object file uses only numerical parameters, data +structure layouts and accessors, and small macros and small inline +functions (ten lines or less in length), then the use of the object +file is unrestricted, regardless of whether it is legally a derivative +work. (Executables containing this object code plus portions of the +Library will still fall under Section 6.) + + Otherwise, if the work is a derivative of the Library, you may +distribute the object code for the work under the terms of Section 6. +Any executables containing that work also fall under Section 6, +whether or not they are linked directly with the Library itself. + + 6. As an exception to the Sections above, you may also combine or +link a "work that uses the Library" with the Library to produce a +work containing portions of the Library, and distribute that work +under terms of your choice, provided that the terms permit +modification of the work for the customer's own use and reverse +engineering for debugging such modifications. + + You must give prominent notice with each copy of the work that the +Library is used in it and that the Library and its use are covered by +this License. You must supply a copy of this License. If the work +during execution displays copyright notices, you must include the +copyright notice for the Library among them, as well as a reference +directing the user to the copy of this License. Also, you must do one +of these things: + + a) Accompany the work with the complete corresponding + machine-readable source code for the Library including whatever + changes were used in the work (which must be distributed under + Sections 1 and 2 above); and, if the work is an executable linked + with the Library, with the complete machine-readable "work that + uses the Library", as object code and/or source code, so that the + user can modify the Library and then relink to produce a modified + executable containing the modified Library. (It is understood + that the user who changes the contents of definitions files in the + Library will not necessarily be able to recompile the application + to use the modified definitions.) + + b) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (1) uses at run time a + copy of the library already present on the user's computer system, + rather than copying library functions into the executable, and (2) + will operate properly with a modified version of the library, if + the user installs one, as long as the modified version is + interface-compatible with the version that the work was made with. + + c) Accompany the work with a written offer, valid for at + least three years, to give the same user the materials + specified in Subsection 6a, above, for a charge no more + than the cost of performing this distribution. + + d) If distribution of the work is made by offering access to copy + from a designated place, offer equivalent access to copy the above + specified materials from the same place. + + e) Verify that the user has already received a copy of these + materials or that you have already sent this user a copy. + + For an executable, the required form of the "work that uses the +Library" must include any data and utility programs needed for +reproducing the executable from it. However, as a special exception, +the materials to be distributed need not include anything that is +normally distributed (in either source or binary form) with the major +components (compiler, kernel, and so on) of the operating system on +which the executable runs, unless that component itself accompanies +the executable. + + It may happen that this requirement contradicts the license +restrictions of other proprietary libraries that do not normally +accompany the operating system. Such a contradiction means you cannot +use both them and the Library together in an executable that you +distribute. + + 7. You may place library facilities that are a work based on the +Library side-by-side in a single library together with other library +facilities not covered by this License, and distribute such a combined +library, provided that the separate distribution of the work based on +the Library and of the other library facilities is otherwise +permitted, and provided that you do these two things: + + a) Accompany the combined library with a copy of the same work + based on the Library, uncombined with any other library + facilities. This must be distributed under the terms of the + Sections above. + + b) Give prominent notice with the combined library of the fact + that part of it is a work based on the Library, and explaining + where to find the accompanying uncombined form of the same work. + + 8. You may not copy, modify, sublicense, link with, or distribute +the Library except as expressly provided under this License. Any +attempt otherwise to copy, modify, sublicense, link with, or +distribute the Library is void, and will automatically terminate your +rights under this License. However, parties who have received copies, +or rights, from you under this License will not have their licenses +terminated so long as such parties remain in full compliance. + + 9. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Library or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Library (or any work based on the +Library), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Library or works based on it. + + 10. Each time you redistribute the Library (or any work based on the +Library), the recipient automatically receives a license from the +original licensor to copy, distribute, link with or modify the Library +subject to these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties with +this License. + + 11. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Library at all. For example, if a patent +license would not permit royalty-free redistribution of the Library by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Library. + +If any portion of this section is held invalid or unenforceable under any +particular circumstance, the balance of the section is intended to apply, +and the section as a whole is intended to apply in other circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 12. If the distribution and/or use of the Library is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Library under this License may add +an explicit geographical distribution limitation excluding those countries, +so that distribution is permitted only in or among countries not thus +excluded. In such case, this License incorporates the limitation as if +written in the body of this License. + + 13. The Free Software Foundation may publish revised and/or new +versions of the Lesser General Public License from time to time. +Such new versions will be similar in spirit to the present version, +but may differ in detail to address new problems or concerns. + +Each version is given a distinguishing version number. If the Library +specifies a version number of this License which applies to it and +"any later version", you have the option of following the terms and +conditions either of that version or of any later version published by +the Free Software Foundation. If the Library does not specify a +license version number, you may choose any version ever published by +the Free Software Foundation. + + 14. If you wish to incorporate parts of the Library into other free +programs whose distribution conditions are incompatible with these, +write to the author to ask for permission. For software which is +copyrighted by the Free Software Foundation, write to the Free +Software Foundation; we sometimes make exceptions for this. Our +decision will be guided by the two goals of preserving the free status +of all derivatives of our free software and of promoting the sharing +and reuse of software generally. + + NO WARRANTY + + 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO +WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. +EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR +OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY +KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE +LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME +THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN +WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY +AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU +FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR +CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE +LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING +RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A +FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF +SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH +DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Libraries + + If you develop a new library, and you want it to be of the greatest +possible use to the public, we recommend making it free software that +everyone can redistribute and change. You can do so by permitting +redistribution under these terms (or, alternatively, under the terms of the +ordinary General Public License). + + To apply these terms, attach the following notices to the library. It is +safest to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least the +"copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +Also add information on how to contact you by electronic and paper mail. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the library, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the + library `Frob' (a library for tweaking knobs) written by James Random Hacker. + + , 1 April 1990 + Ty Coon, President of Vice + +That's all there is to it! + + + diff --git a/Hyphen/Plugins/Docs/CodingConventions.txt b/Hyphen/Plugins/Docs/CodingConventions.txt new file mode 100644 index 0000000..95e0c70 --- /dev/null +++ b/Hyphen/Plugins/Docs/CodingConventions.txt @@ -0,0 +1,12 @@ +THREAD SYNCHRONIZATION === +============================================================================= +- If there is a SynchronizationSupervisor::BeginXXXUpdate() method, + then this method should be used to lock on a XXX variable type instead + of the lock statement + - for example, if there is a BeginDescriptorUpdate() method, then + you should use this method to lock on a Descriptor typed variable +- If there is no associated method in the SynchronizationSupervisor class, + then the lock statement should be used instead +- Previous two recomendations were introduced to ensure the coding consistency + in the thread synchronization on types being frequently passed as arguments + \ No newline at end of file diff --git a/Hyphen/Plugins/Docs/Desktop.ini b/Hyphen/Plugins/Docs/Desktop.ini new file mode 100644 index 0000000..ad46329 --- /dev/null +++ b/Hyphen/Plugins/Docs/Desktop.ini @@ -0,0 +1,3 @@ +[.ShellClassInfo] +IconFile=%SystemRoot%\system32\SHELL32.dll +IconIndex=126 diff --git a/Hyphen/Plugins/Docs/History.txt b/Hyphen/Plugins/Docs/History.txt new file mode 100644 index 0000000..e09a88d --- /dev/null +++ b/Hyphen/Plugins/Docs/History.txt @@ -0,0 +1,304 @@ +HYPHEN Version History +========================================================================================================== + +KNOWN ISSUES +========================================================================================================== +- ContactInfo.Read/WriteSetting & ContactInfo.WriteSettingAsBlob do not support blob values yet +- MirandaDatabase.ContactSettingChange event does not provide data for changed blob values (see prev point) + +v0.8.6.1931 +========================================================================================================== +* MANY BINARY INCOMPATIBLE CHANGES +* MirandaContext completely refactored + - Service functions => ServiceManager + - Events + Event hooks => EventManager ++ MirandaContext.ServiceCallInterceptors +- Plugin dialogs tracking rewritten to be more efficient and deadlock free :-) +- EventHandle class refactored (see EventManager) +- DatabaseEventInfo.Data encoding bug fixed +- Internal text encoding mishandling fixed ++ LoaderOptions.MinimalMirandaVersion added ++ Hyphen tray icon moved to Hyphen's menu + +v0.8.5.1502 +========================================================================================================== +- MirandaDatabase.AddEvent encoding bug fixed +- MirandaDatabase.GetContacts/FindContact methods rewritten to be more efficient ++ ContactInfo.OpenMessageWindow() +* MirandaContext.UnhookEvent(MirandaPlugin, string) => MirandaContext.UnhookEvent(string, MirandaPlugin) +* IConfigurablePlugin interface undergone incompatible binary change + +v0.8.5.1303 +========================================================================================================== ++ Codename Casablanca - new configuration infrastructure ++ ContactList.AddEvent method introduced ++ AckRouter class for protocol ack processing introduced ++ Protocol.StatusChanged event introduced ++ Stability improvements ++ Exception handling improvements +- LangPack string encoding fixed +- Other bug fiexes +- Internal refactoring +* MirandaContext.NetworkProtocols => MirandaContext.Protocols +* NetworkProtocolDictionary => ProtocolDictionary +* A few events refactored +* A few classes renamed + +v0.8.5.1101 +========================================================================================================== +- 0.7+ Miranda Plugin API conformance + +v0.8.5.1 +========================================================================================================== +- Minor stability fix + +v0.8.5.0 +========================================================================================================== +* Virtuoso.Hyphen.Sandbox renamed to Virtuoso.Miranda.Plugins.Helpers.Sandbox +* ProtocolPlugin.Descriptor renamed to ProtocolPlugin.ProtocolDescriptor ++ MenuItemDeclarationAttribute can be now applied to methods as well without the need to specify + the service name; the service will be created for the method automagically ++ Virtuoso.Miranda.Plugins.Helpers.MessageQueue class introduced +* GenericEventArgs renamed to MirandaEventArgs +* Many *EventArgs classes renamed +- FIXED BUG: BeforeEventAdded event now does provide valid event data + +v0.8.4.1 +========================================================================================================== +* Many interfaces refactored, +- Critical interop bug fixed (thanks to MikZ) + +v0.8.4.0 +========================================================================================================== +- MPM bug fixes +* Configuration class renamed to PluginConfiguration, + +v0.8.4.0 +========================================================================================================== +* MirandaDatabase class + several other APIs overhauled, ++ Managed protocol support (see the MPM project on my site) + +v0.8.3.2 +========================================================================================================== ++ Configuration dialog revisited + +v0.8.3.1 +========================================================================================================== ++ Main menu popup menus support for managed plugins ++ Updated version of CueBannerTextBox included ++ InformationDialog introduced ++ New 'Loading plugins' dialog introduced +- FIXED BUG: Plugin settings not saved with LazyUnload feature enabled + +v0.8.3.0 +========================================================================================================== +- Incompatible binary changes, plugins must be recompiled ++ Plugin configuration framework introduced ++ Vista style introduced ++ Lazy unload introduced ++ CueBannerTextBox control included (nice work of Chili Software) ++ GradientPanel control included ++ Hyphen configuration revisited +- Many internal changes + +v0.8.2.60 +========================================================================================================== +- Hyphen is now strong named because some plugins may need to be strong named so Hyphen must be too +- Plugins will automatically load the newest version of Hyphen; this is done using the BindingRedirect + to avoid multiple versions of Hyphen assemblies to be deployed +* Incompatible binary changes, plugins must be recompiled + +v0.8.2.25 +========================================================================================================== +- I haven't accounted .NET Remoting object lifetime so after 5 minutes, all the remote objects + are disconnected, which is very bad => fixed by overriding the MarshalByRefObject::InitalizeLifetimeService + method + - If you're designing an object accessible from another AppDomain (for example if you're using + the Sandbox class), derive it from the Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject class + to make it connected as long as it's not collected by GC + +v0.8.2.20 +========================================================================================================== +- ConfigurableMirandaPlugin class introduced; provides plugins with a seamless configuration store + +v0.8.2.0 +========================================================================================================== +- Icons refreshed +- Various internal changes +- Sandbox class introduced; allows you to easily sandbox your own plugins (in plugins :-)) or scripts + +v0.8.1.80 +========================================================================================================== +- Langpack localization support via the LanguagePack, LanguagePackStringResolver & LocalizableForm classes +- Hyphen's main menu items now take advantage of Langpack (I'm not going to localize dialogs using Langpack, + (at least not now), I prefer the .NET way, i.e. satelite assemblies) + +v0.8.1.60 +========================================================================================================== +- Updater plugin support (Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin class) +- LoaderOptionsAttribute now supports required Hyphen version specification; Hyphen refuses to load a plugin + that requires a newer version of Hyphen + +v0.8.1.40 +========================================================================================================== +- Internal stability improvements + +v0.8.1.35 +========================================================================================================== +- Virtuoso.Miranda.Plugins.Helpers.IniStructure class added; thanks kratchkov@inbox.lv for his + CodeProject submission! + +v0.8.1.32 +========================================================================================================== +- ContactInfo.Value is now translated to ANSI string by default not to Miranda's build default encoding. + +v0.8.1.30 +========================================================================================================== +- Internal sandboxing API changes + +v0.8.1.10 +========================================================================================================== +- Safe callbacks introduced; no managed plugin should now crash Miranda with an unhandled exception; + an exception will be caught and processed by a callback stub + +v0.8.1.4 +========================================================================================================== +- Internal refinements + +v0.8.1.3 +========================================================================================================== +- Internal Loader changes +- Internal Hyphen.Mini changes + +v0.8.0.0 +========================================================================================================== +- Midas is now Hyphen, the core has been re-engineered... +- Hyphen now supports delayed plugin loading and unloading; plugins are not loaded on startup but you can load + them using the Miranda Menu - 'Load/Unload Microsoft.net plugins' item; this saves memory and startup time +- EventHandle class providing you with an option to create and manage your own events +- MirandaContext now offers CreateServiceFunction and HookEvent methods +- You can override the builtin configuration and use your own Plugin manager instead of the builtin one +- You can override the builtin configuration and use your own Assembly probe to search for plugins + in custom directories +- You can manage plugins via a Hyphen manager icon in the tray +- Plugin assemblies are now shadow copied so you can update them on the fly and Hyphen will reload them + without the need of restarting Miranda +- Noticable performance improvements introduced; unsafe C# pointers employed to get rid of many copying + operations +- Bunch of new functionality added, see for yourself; I am unable to track that amount of changes ;) + +v0.7.2.0 +========================================================================================================== +- Midas.dll and Virtuoso.Miranda.Plugins were merged into the Midas.dll assembly + +v0.7.1.10 +========================================================================================================== +- Internal tuning +- InteropBufferPool now offers an override allowing you to set the buffer capacity + - note that a new buffer will be allocated if you explicitly set a capacity higher than the default one, + which is 260 bytes + +v0.7.1.5 +========================================================================================================== +- InteropBuffer class revamped to be more robust + - InteropBufferPool class introduced; it manages a few shared buffers and when an additional + buffer is requested, it allocates a one + - to obtain an instance of a buffer, you have to call the InteropBufferPool::AcquireBuffer() method + - you will be provided with an instance of capacity 260 bytes + - to release a buffer and free its resources, call the InteropBufferPool::ReleaseBuffer(InteropBuffer) + method; a buffer to be released must be unlocked! +- MirandaContext::CreateHookableEvent method provided; returns an instance of the EventHandle class + allowing you to manipulate with the event (fire it and set a default hook) + +v0.7.1.1 +========================================================================================================== +- Minor internal changes +- IcqXStatusPlugin source code included (note it requires Unicode Miranda and the latest ICQOscarJ plugin) + +v0.7.1.0 +========================================================================================================== +- MirandaContext::PluginSettingsManager property now returns null; please do not use this class, it will be + refactored in the future +- MirandaDatabase::GetProfileName() & ::GetProfilePath() methods added +- Translate::ToString() method now supports length and encoding options; you can now specify an encoding + in which is a string pointed by a handle encoded in or select StringEncoding::MirandaDefault to assume + ANSI under the non-unicode Miranda core and UNICODE under the unicode-aware Miranda core; + using this method will simplify possible unicode transition in the future +- MirandaEnvironment static class introduced; you can use it to obtain the information about Miranda + (currently there is a MirandaStringEncoding property only) +- InteropBuffer class introduced; you can pass it to a Miranda service expecting a char/byte/whatever + buffer pointer; just don't forget to Lock() and Unlock() it before and after the use, respectively + - to obtain a buffer pointer, you the IntPtr property; + - WARNING: do not call the Free()/Dispose() methods (!!!) these will invalidate the buffer and prevent + its next use; these methods are supposed to be called by internal callers only! + - to purge the content of the buffer (if security is your concern), use the Zero() method + - note that the Zero() operation is quite a slow one, so carefully consider its use + - to obtain the capacity of the buffer, use either the InteropBuffer::Capacity or ::CapacityAsXX fields + +v0.7.0.5 +========================================================================================================== +- MirandaDatabase now supports writing and reading contact settings; reading is done via + a "DB/Contact/GetSettingStatic" service call to improve performance + +v0.7.0.1 +========================================================================================================== +- Midas v1.0.0.1 included; minor internal API changes + +v0.7.0.0 +========================================================================================================== +- DotNetConnector is now Midas +- Miranda-2-.net proxy is now pure IL with 3 unmanaged exports only representing the Miranda API entry + points (previously there was an C++/CLI IJW assembly dependent on the MS VCRT v8.0 dlls; this is now gone) +- No public API changes + +v0.6.8.0 +========================================================================================================== +- PluginSettings class for storing plugin specific settings +- MirandaDatabase class extended +- IndividualMirandaPlugin class added; you can derive your plugins from it and use a small + IL stub to create plugins that are not managed by the PluginManager and thus can override Miranda system modules + and are even transient + - More documentation will code... + +- Project has been started; it's goal is to replace the C++/CLI loader stub with a pure + IL stub consisting from 3 unmanaged exports only... + +v0.6.7.0 +========================================================================================================== +- MenuItemDeclarationAttribute API refactored +- StandardServices & StandardEvent class removed +- ContactList now supports adding and modifying menu items +- Some collection changes +- ContactList.ProtocolStatusChange event added + +v0.6.6.0 +========================================================================================================== +- All previous known issues resolved (probably caused by some hook-twice operation) +- PluginContext is now MirandaContext +- PluginContext.MirandaPInvokeBridge is not public now, it was visible due a bug +- Miranda lazy event binding introduced (binds to Miranda's internal event only when somebody subscribes + a one) +- PrivatePluginAttribute introduced (makes a plugin manually loadable only, fusion will ignore it) + +v0.6.5.0 +========================================================================================================== +- Some optimalizations +- KNOWN ISSUES + - MirandaDatabase::EventAdded event fired twice. I think Miranda does this, but don't know why... + +v0.6.3.0 +========================================================================================================== +- Bunch of new stuff added, see for yourself... + +v0.5.8.0 +========================================================================================================== +- Contact info query support +- UnmanagedStructHandle´1 struct made public for use + (can be used for easy unmanaged memory allocation and deallocation) +- Performance and stability tuning +- MirandaPlugin base class expansion; some new virtual methods added +- Threaded fusion + +v0.5.0.0 +========================================================================================================== +- initial alpha release \ No newline at end of file diff --git a/Hyphen/Plugins/Docs/README.txt b/Hyphen/Plugins/Docs/README.txt new file mode 100644 index 0000000..33def41 --- /dev/null +++ b/Hyphen/Plugins/Docs/README.txt @@ -0,0 +1,71 @@ +HYPHEN SRC README +=================================================== +© 2006 - 2009, virtuoso +deml.tomas@seznam.cz + +v0.8.2009.0201 + +PREREQUISITES +=================================================== +- Microsoft Visual Studio 2008 (no Express editions) + Full MS VS 2k8 is required because the build + solution features multilanguage projects. + (NMAKE, C#) +- Microsoft .NET 2.0 SDK + +SOLUTION +=================================================== +- In \Virtuoso.Hyphen\Virtuoso.Hyphen.sln +- HYPHEN project should be set as START PROJECT + +- PLUGINS project + This is a C# project with Miranda .NET API. + It is build with VS and then disassembled using IlDasm.exe + into the Plugins.IL file. +- HYPHEN project + This is an NMAKE project containing an MSIL stub + which acts as a bootstrapper for MS.NET. + It merges the Plugins.il with the LoaderStub.il + into a single Hyphen.dll assembly using IlAsm.exe. +- HYPHEN.MINI project + This is an NMAKE project containg custom MSIL stub + for database and protocol plugins which cannot + be loaded with Hyphen directly. + +HOW TO BUILD +=================================================== +- 1) Include + "%WINDIR%\Microsoft.NET\Framework\v2.0.50727" and + "%PROGRAMFILES%\Microsoft Visual Studio 8\SDK\v2.0\Bin" + in the PATH variable. + These paths contain IlAsm.exe and IlDasm.exe respectively + which are needed during the build process. + +- 2) Open the solution. + +- 3) Switch to the release configuration. + +- 4) Open the Hyphen project properties and change + the Output directory to point to + %YOUR_MIRANDA_FOLDER_GOES_HERE\Plugins directory. + +- 5) Press F6 to build the solution. You should see + IlAsm output in the output window and IlDasm window + with progress bar. + +- 6) Once it's done, you should find Hyphen.dll in your + Miranda\Plugins directory. + +PROBLEMS +=================================================== +- If you are getting "Failed to define document writer" + errors during the build, make sure the + Hyphen\Bin\(CONFIG_NAME_HERE) folder exists. + CONFIG_NAME_HERE stands for Debug or Release. +- Feel free to !MAIL! me in case of problems. + + +SOURCES +=================================================== +Source codes are mostly undocumented (unfortunately). + diff --git a/Hyphen/Plugins/Docs/SDK Docs/index.htm b/Hyphen/Plugins/Docs/SDK Docs/index.htm new file mode 100644 index 0000000..6bd242f --- /dev/null +++ b/Hyphen/Plugins/Docs/SDK Docs/index.htm @@ -0,0 +1,212 @@ + + + + +Midas SDK Docs + + + + + +

Midas SDK Documentation v1.0

+

Miranda .net Association Plugin SDK, © 2006 Virtuoso

+

Contents

+
    +
  • Overview
  • +
  • Architecture
  • +
  • Namespaces
      +
    • Key namespaces
    • +
    • Native interop namespaces
    • +
    +
  • +
  • Classes
      +
    • Key classes
        +
      • Plugin definition/construction classes
      • +
      • Miranda API wrapper classes
      • +
      +
    • +
    • Native interop classes
    • +
    • Helper classes
    • +
    +
  • +
  • A Hello World plugin Walkthrough
  • +
+

 

+

Overview

+

Midas (Miranda .net Assocication Plugin) is a plugin allowing Microsoft.net +platform developers to access Miranda APIs thus allowing them to write Miranda +targeted managed plugins.

+

I created Midas because I'm an avid C# programmer and I wanted to extend +Miranda in an easy, reliable and fast way - with Microsoft.net managed plugins.

+

You can write Miranda plugins in any Ecma CLI compliant language, for example +C#, J#, Delphi, C++/CLI or Visual Basic.net. Please note that you may not be +able to take advantage of all Midas features from languages that do not support +some CLS non-compliant constructs. You may have problems using Microsoft Visual +Basic.net because it, for example, does not support unsigned data types. Miranda +and Midas use these types (System.UIntPtr) extensively.

+

In a nutshell, Midas represents a native-to-managed wrapper presenting core +Miranda APIs in the OO fashion to .net. It wraps Miranda's procedural APIs to a +neat and logical object oriented interface.

+

Using Midas, you can write Miranda plugins that you or anybody else find +useful. With .net plugins, you can accomplish complicated and complex tasks in +the much faster way.

+

 

+

Architecture

+

Midas consinsts of two crucial assemblies:

+
    +
  • Midas.dll
      +
    • this assembly was written in IL (Intermediate Language) and contains 3 + unmanaged exports exposing required unmanaged plugin API exports to Miranda
    • +
    • previously, there was an C++/CLI assembly but it's maintentace was not + as easy as it ought to be (and me, primarily .net programmer, concluded a + pure IL assembly as a more transparent way to accomplish the connection with + Miranda than the opaque IJW magic C++/CLI compiler uses)
    • +
    • this assembly instantiates the Virtuoso.Midas.Loader class that provides + Miranda with a PLUGININFO information and initiates the .net plugins fusion
    • +
    +
  • +
  • Virtuoso.Miranda.Plugins.dll
      +
    • this assembly was written in safe C# and exposes unmanaged Miranda APIs + to the .net world
    • +
    • in this assembly, there is the Virtuoso.Miranda.Plugins.PluginManager + type (not publicly exposed) that finds, loads and initiates all the managed + plugins in the <mirandaFolder>\plugins\managed folder
    • +
    • this assembly is the one you will want to reference on your plugin's + compile time
    • +
    • this assembly also contains the most important type for us, developers, + the Virtuoso.Mirandas.Plugins.MirandaPlugin class representing the base + class for all of your plugins
    • +
    +
  • +
+

 

+

Namespaces

+

There are many publicly visible namespaces containing key classes and many +native interop helper classes making easy to access not yet wrapped parts of the +Miranda API.

+
Key namespaces:
+
    +
  • Virtuoso.Miranda.Plugins
      +
    • contains funtionality concerning the plugin fusion, maintentace, + definition and construction
    • +
    +
  • +
  • Virtuoso.Miranda.Plugins.Infrastructure
      +
    • contains all the functionality you may need to develop your plugins; + provides Database, Contact List, Contact Information, Network Protocol and + many other Miranda API wrappers
    • +
    • also contains some helper classes you may find useful + (unmanaged-to-managed data translation services and localization helpers)
    • +
    +
  • +
  • Virtoso.Miranda.Plugins.Infrastructure.IndividualMirandaConnection
      +
    • contains additional helper classes for plugins not managed by the + Microsoft.net plugins supervisor
    • +
    +
  • +
  • Virtuoso.Miranda.Plugins.ObjectCollections
      +
    • contains specialized object collections
    • +
    +
  • +
+
Native interop namespaces:
+
    +
  • Virtuoso.Miranda.Plugins.Native
      +
    • contains types you may use when you need to directly interface with + Miranda APIs; provides you with unmanaged memory, string and struct handles
    • +
    +
  • +
+

 

+

Classes

+

There are several classes representing the Miranda API wrappers for Database, +Contact List and many other aspects of Miranda API model.

+
Key classes:
+
    +
  • +
    Plugin definition/construction classes
    +
      +
    • +
      Virtuoso.Miranda.Plugins namespace
      +
        +
      • abstract MirandaPlugin
          +
        • represents a base class for all .net plugins
        • +
        • to define a plugin, derive your class from this one, implement + required abstract members and you are ready to go
        • +
        • members
            +
          • methods
              +
            • protected
                +
              • void .ctor()
                  +
                • Initializes an instance of the MirandaPlugin class
                • +
                +
              • +
              • virtual void AfterPluginInitialization() +
                  +
                • executed after the first plugin initialization
                • +
                • executed only once a Midas lifetime
                • +
                • use this method to initialize your plugin after Miranda + startup, for example for additional event hook-ups
                • +
                • DO NOT EXECUTE ANY TIME CONSUMING CODE IN THIS METHOD + NEITHER SHOW ANY WINDOWS FORMS
                • +
                +
              • +
              • virtual void AfterMenuItemsPopulation()
                  +
                • executed after the plugin menu items detection
                • +
                • executed only once a Midas lifetime
                • +
                • use this method to change properties or manipulate with your + plugin menu items
                • +
                • DO NOT EXECUTE ANY TIME CONSUMING CODE IN THIS METHOD + NEITHER SHOW ANY WINDOWS FORMS
                • +
                +
              • +
              • virtual void AfterPluginEnable()
                  +
                • executed right after a plugin is enabled by the + user/supervisor
                • +
                • executed every time a plugin is enabled
                • +
                • DO NOT EXECUTE ANY TIME CONSUMING CODE IN THIS METHOD + NEITHER SHOW ANY WINDOWS FORMS
                • +
                +
              • +
              • virtual void BeforePluginDisable()
                  +
                • executed right before a plugin is disabled by the + user/supervisor
                • +
                • use this method to unhook events or destroy service + functions you created manually; events and services declared + through attributes will be unhooked/destroyed automatically by + the plugin supervisor
                • +
                • DO NOT EXECUTE ANY TIME CONSUMING CODE IN THIS METHOD + NEITHER SHOW ANY WINDOWS FORMS
                • +
                +
              • +
              • virtual void BeforeMirandaShutdown
                  +
                • executed right before Miranda or the plugin supervisor is + shutdown
                • +
                • use this method to perform possible memory cleanup
                • +
                • DO NOT ALLOCATE NEW MEMORY NEITHER INTERFACE WITH MIRANDA + THROUGH WRAPPERS OR NATIVE INTEROP FROM THIS METHOD; MIRANDA IS + ABOUT TO SHUTDOWN AND MANY OF ITS APIS ARE NO LONGER AVAILABLE; + USE THE BEFOREPLUGINDISABLE() METHOD INSTEAD
                • +
                • +
                +
              • +
              +
            • +
            +
          • +
          +
        • +
        +
      • +
      +
    • +
    +
  • +
+ + + + \ No newline at end of file diff --git a/Hyphen/Plugins/ExposingPluginAttribute.cs b/Hyphen/Plugins/ExposingPluginAttribute.cs new file mode 100644 index 0000000..92b0f52 --- /dev/null +++ b/Hyphen/Plugins/ExposingPluginAttribute.cs @@ -0,0 +1,57 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins +{ + [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)] + public sealed class ExposingPluginAttribute : Attribute + { + #region Fields + + private Type pluginType; + + #endregion + + #region .ctors + + public ExposingPluginAttribute(Type pluginType) + { + if (pluginType == null) + throw new ArgumentNullException("pluginType"); + + this.pluginType = pluginType; + } + + #endregion + + #region Properties + + public Type PluginType + { + get + { + return this.pluginType; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Forms/ConfigurationDialog.Designer.cs b/Hyphen/Plugins/Forms/ConfigurationDialog.Designer.cs new file mode 100644 index 0000000..f653422 --- /dev/null +++ b/Hyphen/Plugins/Forms/ConfigurationDialog.Designer.cs @@ -0,0 +1,120 @@ +using Virtuoso.Miranda.Plugins.Forms.Controls; +namespace Virtuoso.Miranda.Plugins.Forms +{ + partial class ConfigurationDialog + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigurationDialog)); + this.OkBTN = new System.Windows.Forms.Button(); + this.CancelBTN = new System.Windows.Forms.Button(); + this.MainPanel = new Virtuoso.Miranda.Plugins.Forms.Controls.ConfigurationPanel(); + this.HideExpertOptionsCHBOX = new System.Windows.Forms.CheckBox(); + this.SuspendLayout(); + // + // OkBTN + // + this.OkBTN.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.OkBTN.Location = new System.Drawing.Point(556, 524); + this.OkBTN.Name = "OkBTN"; + this.OkBTN.Size = new System.Drawing.Size(75, 23); + this.OkBTN.TabIndex = 1; + this.OkBTN.Text = "Save"; + this.OkBTN.UseVisualStyleBackColor = true; + this.OkBTN.Click += new System.EventHandler(this.OkBTN_Click); + // + // CancelBTN + // + this.CancelBTN.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.CancelBTN.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.CancelBTN.Location = new System.Drawing.Point(637, 524); + this.CancelBTN.Name = "CancelBTN"; + this.CancelBTN.Size = new System.Drawing.Size(75, 23); + this.CancelBTN.TabIndex = 1; + this.CancelBTN.Text = "Cancel"; + this.CancelBTN.UseVisualStyleBackColor = true; + this.CancelBTN.Click += new System.EventHandler(this.CancelBTN_Click); + // + // MainPanel + // + this.MainPanel.Font = new System.Drawing.Font("Tahoma", 8F); + this.MainPanel.HideExpertOptions = false; + this.MainPanel.Location = new System.Drawing.Point(14, 13); + this.MainPanel.MinimumSize = new System.Drawing.Size(700, 500); + this.MainPanel.Name = "MainPanel"; + this.MainPanel.Size = new System.Drawing.Size(700, 500); + this.MainPanel.TabIndex = 0; + // + // HideExpertOptionsCHBOX + // + this.HideExpertOptionsCHBOX.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); + this.HideExpertOptionsCHBOX.AutoSize = true; + this.HideExpertOptionsCHBOX.Checked = global::Virtuoso.Miranda.Plugins.Properties.Settings.Default.ConfigurationDialog_HideExpertOptions_Checked; + this.HideExpertOptionsCHBOX.DataBindings.Add(new System.Windows.Forms.Binding("Checked", global::Virtuoso.Miranda.Plugins.Properties.Settings.Default, "ConfigurationDialog_HideExpertOptions_Checked", true, System.Windows.Forms.DataSourceUpdateMode.OnPropertyChanged)); + this.HideExpertOptionsCHBOX.Font = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.HideExpertOptionsCHBOX.Location = new System.Drawing.Point(12, 530); + this.HideExpertOptionsCHBOX.Name = "HideExpertOptionsCHBOX"; + this.HideExpertOptionsCHBOX.Size = new System.Drawing.Size(137, 17); + this.HideExpertOptionsCHBOX.TabIndex = 2; + this.HideExpertOptionsCHBOX.Text = "Hide expert options"; + this.HideExpertOptionsCHBOX.UseVisualStyleBackColor = true; + this.HideExpertOptionsCHBOX.CheckedChanged += new System.EventHandler(this.HideExpertOptionsCHBOX_CheckedChanged); + // + // ConfigurationDialog + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(724, 559); + this.Controls.Add(this.HideExpertOptionsCHBOX); + this.Controls.Add(this.CancelBTN); + this.Controls.Add(this.OkBTN); + this.Controls.Add(this.MainPanel); + this.Font = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.Name = "ConfigurationDialog"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Configuration"; + this.Shown += new System.EventHandler(this.ConfigurationDialog_Shown); + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.ConfigurationDialog_FormClosing); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Button OkBTN; + private System.Windows.Forms.Button CancelBTN; + private ConfigurationPanel MainPanel; + private System.Windows.Forms.CheckBox HideExpertOptionsCHBOX; + + + + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/ConfigurationDialog.cs b/Hyphen/Plugins/Forms/ConfigurationDialog.cs new file mode 100644 index 0000000..f8bf24a --- /dev/null +++ b/Hyphen/Plugins/Forms/ConfigurationDialog.cs @@ -0,0 +1,110 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Forms.Controls; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Miranda.Plugins.Properties; + +namespace Virtuoso.Miranda.Plugins.Forms +{ + public sealed partial class ConfigurationDialog : SingletonDialog + { + #region Fields + + private bool Ok; + private IConfigurablePlugin ConfigurableEntity; + + #endregion + + #region .ctors + + private ConfigurationDialog(IConfigurablePlugin configurableEntity) : base(configurableEntity.Name) + { + InitializeComponent(); + + this.MainPanel.HideExpertOptions = HideExpertOptionsCHBOX.Checked; + this.ConfigurableEntity = configurableEntity; + this.Text = TextResources.UI_Caption_Configure_ + configurableEntity.Name; + + configurableEntity.PopulateConfigurationPanel(MainPanel); + } + + public static void Present(IConfigurablePlugin configurableEntity, bool modal) + { + Present(configurableEntity, null, modal); + } + + public static void Present(IConfigurablePlugin configurableEntity, string path, bool modal) + { + if (configurableEntity == null) + throw new ArgumentNullException("configurableEntity"); + + ConfigurationDialog singleton = ConfigurationDialog.GetSingleton(false, configurableEntity.Name) ?? + new ConfigurationDialog(configurableEntity); + + if (singleton.MainPanel.Categories.Count == 0) + MessageBox.Show(TextResources.MsgBox_Text_NoOptionsAvailable, TextResources.MsgBox_Caption_NoOptionsAvailable, MessageBoxButtons.OK, MessageBoxIcon.Information); + else + { + singleton.MainPanel.SetPath(path); + singleton.ShowSingleton(modal); + } + } + + #endregion + + #region Methods + + public static string CreatePath(string categoryName, string itemName) + { + return ConfigurationPanel.CreatePath(categoryName, itemName); + } + + #endregion + + #region UI Handlers + + private void ConfigurationDialog_Shown(object sender, EventArgs e) + { + MainPanel.Initialize(); + } + + private void OkBTN_Click(object sender, EventArgs e) + { + Ok = true; + Close(); + } + + private void CancelBTN_Click(object sender, EventArgs e) + { + Ok = false; + Close(); + } + + private void ConfigurationDialog_FormClosing(object sender, FormClosingEventArgs e) + { + if (Ok) + { + ConfigurableEntity.Configuration.Save(); + Settings.Default.Save(); + } + else + { + ConfigurableEntity.ReloadConfiguration(); + Settings.Default.Reload(); + } + } + + private void HideExpertOptionsCHBOX_CheckedChanged(object sender, EventArgs e) + { + MainPanel.HideExpertOptions = HideExpertOptionsCHBOX.Checked; + } + + #endregion + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/ConfigurationDialog.resx b/Hyphen/Plugins/Forms/ConfigurationDialog.resx new file mode 100644 index 0000000..45185c8 --- /dev/null +++ b/Hyphen/Plugins/Forms/ConfigurationDialog.resx @@ -0,0 +1,164 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + + True + + + + + AAABAAEAEBAAAAEACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAB + AAAAAAAAnoFlAKCEZwChhmkAo4lrAKOIbQCkiW0ApoxuAKiMbwCmjHEAqI5xAKiOdACrkXYArZJ1AK+V + dwCsk3kArpR5ALGXewCwl34Asph6ALGZfgC0m38AtZ1/ALOagAC1nYEAtZ2FALeghwC5oYYAvKKGALmh + iAC7pIkAu6ePAL2mjgC9qI8Av6qTAMCqkQDCrJMAwKuUAMKulQDErZYAxrKbAMi2oADKuKIAyrikAMy6 + pgDOvakA0L+rANDArQDQwbAA1sm5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAB8PAAAAAAAAAAAAAAAPLwAIAwAsAQAAAAAAAAAACgoKCAYDAwEAAAAAAAAAIhQd + HxcSDwkGFwAAAAAXFBgiHxIUFA8PCgkCBgAAABIiIhQAAAAADw8JBgAAAAAUKiAAAAAAAAAPDwYAAB0U + FiocAAAAAAAADxQKBgAsHxYuHAAAAAAAAA8XDxQAAAAYLyIAAAAAADEXHw8AAAAvGCkqIC8AACwXIx0P + LAAAHRgiLiwiGB0fIicWDg8AAAAAACMpLy8qKigdAAAAAAAAAAAYGBgYGBYWFgAAAAAAAAAAIgAAHBgA + ABgAAAAAAAAAAAAAACkcAAAAAAAAAP5/AADyTwAA8A8AAOAHAACAAQAAw8MAAMfjAAAH4QAAB+EAAMfD + AACBgQAAgAEAAPAPAADwDwAA9m8AAP5/AAA= + + + \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/Controls/CommandButton.cs b/Hyphen/Plugins/Forms/Controls/CommandButton.cs new file mode 100644 index 0000000..e7b0ac7 --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/CommandButton.cs @@ -0,0 +1,54 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; +using System.Drawing; +using System.Drawing.Imaging; + +namespace Virtuoso.Miranda.Plugins.Forms.Controls +{ + public class CommandButton : Button + { + public CommandButton() + { + FlatStyle = FlatStyle.Standard; + ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; + TextAlign = ContentAlignment.MiddleLeft; + TextImageRelation = TextImageRelation.ImageBeforeText; + FlatAppearance.BorderSize = 3; + FlatAppearance.BorderColor = SystemColors.GradientActiveCaption; + } + + private void InitializeComponent() + { + this.SuspendLayout(); + // + // CommandButton + // + this.FlatAppearance.BorderColor = System.Drawing.SystemColors.Control; + this.FlatAppearance.BorderSize = 2; + this.FlatAppearance.MouseDownBackColor = System.Drawing.SystemColors.ButtonShadow; + this.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.ButtonHighlight; + this.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.ResumeLayout(false); + + } + } +} diff --git a/Hyphen/Plugins/Forms/Controls/CommandButton.resx b/Hyphen/Plugins/Forms/Controls/CommandButton.resx new file mode 100644 index 0000000..3276f5c --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/CommandButton.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + False + + \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/Controls/ContactListView.cs b/Hyphen/Plugins/Forms/Controls/ContactListView.cs new file mode 100644 index 0000000..3086b5c --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/ContactListView.cs @@ -0,0 +1,197 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Collections.ObjectModel; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Windows.Forms; +using System.Drawing; + +namespace Virtuoso.Miranda.Plugins.Forms.Controls +{ + public class ContactListView : ListView + { + #region Fields + + private ImageList ContactImages; + private System.ComponentModel.IContainer components; + + #endregion + + #region .ctors + + public ContactListView() + { + InitializeComponent(); + } + + private void InitializeComponent() + { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ContactListView)); + this.ContactImages = new System.Windows.Forms.ImageList(this.components); + this.SuspendLayout(); + // + // ContactImages + // + this.ContactImages.ImageStream = ((System.Windows.Forms.ImageListStreamer)(resources.GetObject("ContactImages.ImageStream"))); + this.ContactImages.TransparentColor = System.Drawing.Color.Transparent; + this.ContactImages.Images.SetKeyName(0, "Contact"); + // + // ContactListView + // + this.SmallImageList = this.ContactImages; + this.Sorting = System.Windows.Forms.SortOrder.Ascending; + this.View = System.Windows.Forms.View.List; + this.ResumeLayout(false); + + } + + #endregion + + #region Events + + public event EventHandler FilterContact; + + #endregion + + #region Handlers + + protected virtual object CreateItemTag(ContactInfo contact) + { + return contact; + } + + protected virtual string CreateItemText(ContactInfo contact, object tag) + { + return contact.ToString(); + } + + protected virtual int GetImageIndex(ContactInfo contact, object tag) + { + return 0; + } + + #endregion + + #region Methods + + public virtual void LoadContacts() + { + ReadOnlyCollection contacts = MirandaContext.Current.MirandaDatabase.GetContacts(false); + Items.Clear(); + + ContactFilterEventArgs e = new ContactFilterEventArgs(); + + for (int i = 0; i < contacts.Count; i++) + InsertContact(contacts[i], e); + } + + public virtual void InsertContact(ContactInfo contact) + { + InsertContact(contact, null); + } + + private void InsertContact(ContactInfo contact, ContactFilterEventArgs e) + { + if (contact == null) + throw new ArgumentNullException("contact"); + + if (e != null && FilterContact != null) + { + e.Contact = contact; + e.Skip = false; + + FilterContact(this, e); + + if (e.Skip) + return; + } + + object tag = CreateItemTag(contact); + + if (tag != null) + { + ListViewItem item = new ListViewItem(CreateItemText(contact, tag), GetImageIndex(contact, tag)); + item.Tag = tag; + + Items.Add(item); + } + } + + public virtual bool RemoveContact(ContactInfo contact) + { + int index = -1; + + for (int i = 0; index == -1 && i < Items.Count; i++) + if (Items[i].Tag.Equals(CreateItemTag(contact))) + index = i; + + if (index != -1) + { + Items.RemoveAt(index); + return true; + } + else + return false; + } + + public virtual ListViewItem FindContactItem(ContactInfo contact) + { + if (contact == null) + throw new ArgumentNullException("contact"); + + object tag = CreateItemTag(contact); + + ListViewItem item = null; + + if (Items.Count > 0) + item = FindItemWithText(CreateItemText(contact, tag), false, 0, false); + + if (item == null) + return null; + + if (object.ReferenceEquals(item.Tag, tag) || (tag != null && tag.Equals(item.Tag))) + return item; + else + return null; + } + + #endregion + } + + public class ContactFilterEventArgs : EventArgs + { + public ContactFilterEventArgs() { } + + private ContactInfo contact; + public ContactInfo Contact + { + get { return contact; } + internal set { contact = value; } + } + + private bool skip; + public bool Skip + { + get { return skip; } + set { skip = value; } + } + } +} diff --git a/Hyphen/Plugins/Forms/Controls/ContactListView.resx b/Hyphen/Plugins/Forms/Controls/ContactListView.resx new file mode 100644 index 0000000..5f0d18f --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/ContactListView.resx @@ -0,0 +1,164 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w + LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 + ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAAq + BwAAAk1TRnQBSQFMAwEBAAEEAQABBAEAARABAAEQAQAE/wEhAQAI/wFCAU0BNgcAATYDAAEoAwABQAMA + ARADAAEBAQABIAYAARAaAAEDAgEBAgEYAgEBHwFIAgIBggFVAgIBqgFcAgIBvgFkAQkBCAHWAVYCAgGp + ARICAQEX3AABDwIBARIBZQIIAdUBfQEwASoB7gHVAbABjgH/AegBvQGRAf8B7AHAAZcB/wHgAbYBjAH/ + AdMBqgGBAf8BawEWAREB5AEmAgEBN9QAAQ0CAQEPAXIBHAEUAeQB4AG1AYoB/wHmAcgBtwH/AeMBvgGg + Af8B4QG3AY0B/wHlAb4BmQH/AdoBtgGRAf8B2QGwAYgB/wHQAaUBgQH/AUgCAgGB2AABYQIGAc0B4QGx + AYgB/wHLAboBrwH/AfIB2QHGAf8B6AG+AZEB/wHsAcgBpAH/AeEBwgGkAf8B2AGyAYsB/wHFAZ0BfwH/ + AUECAQFw1AABmwGcAZMB/wFwASQBHAHsAfcBvAGVAf8BzQHAAbYB/wL9AfwC/wHQAaAB/wH1AcwBpgH/ + AeYByQGtAf8B6AG/AZYB/wGPAVcBPQH5AYgBhwGEAf8EAAFeAgYB1wFeAQYBBAHWAV0CBgHZAVUCAgGr + wAABbgEgARwB5wHjAe4B5QH/AfMBzwGfAf8BxgGuAZ8B/wFMAXcBmQH/AZcBlQGUAf8B8QHCAZUB/wH3 + AcwBogH/Ac4BpQGBAf8BigJ/Af4BXAENAQwB5gGCAYUBgQH/AfMB6AHbAf8B7QHiAdQC/wH3AewB/wF1 + AS0BKAHtwAABbQEaARkB5QT/AesB4AHPAf8BfQF6AYEB/wEoAVYBgQH/ASIBUwGBAf8BlwGMAYEB/wHH + AaYBhQH/AdMBxgG8Af8B9wHtAeUB/wH3Ae0B5QH/AfcB7QHlAf8B9wHtAeUB/wH3Ae0B5QH/AfcB7QHl + Af8BcQEoASQB7MAAAW0BGgEZAeUE/wG8AbsBvQH/ATMBTwF9Af4BRgFrAYkB/wE4AWMBiAH/AWgBSAFJ + AfgB5QHbAdMB/wH3Ae0B5QH/AfcB7QHlAf8B9wHtAeUB/wH3Ae0B5QH/AfcB7QHlAf8B9wHtAeUB/wH3 + Ae0B5QH/AXEBKAEkAezAAAFtARoBGQHlAfcB9QH2Af8BdQGKAaoB/wFWAX8BoAH/AVoBgQGgAf8BRQFw + AZEB/wGlAasBsQH/AdIBvAGwAf8B9wHtAeUB/wH3Ae0B5QH/AfcB7QHlAf8B9wHtAeUB/wH3Ae0B5QH/ + AfcB7QHlAf8B9wHtAeUB/wFxASgBJAHswAABbQEaARkB5QHqAegB6gH/AXYBlAG6Af8BeAGZAb8B/wFu + AY0BswH/AVMBgAGiAf8BRQFeAXQB/wHGAbQBqgH/AfcB7QHlAf8BxgGzAaQB/wHGAbMBpAH/AcYBswGk + Af8BxgGzAaQB/wHGAbMBpAH/AfUB6QHgAf8BcQEoASQB7MAAAW0BGgEZAeUC5wHtAf8BjQGyAdcB/wGb + Ab8B5QH/AYEBpQHPAf8BWgF+AZkB/wE2AUIBTQH/AaYBmgGTAf8B9wHtAeUB/wHSAcIBtQH/AdQBxgG4 + Af8B1AHGAbgB/wHUAcYBuAH/AdMBxAG2Af8B9wHtAeUB/wFxASkBJAHswAABbQEaARkB5QH0AfIB8wH/ + AZEBrgHKAf4BnwHGAe4B/wGBAaoB1wH/AVYBawGBAf8BNwEuAScB/wGSAYcBgQH/AfcB7QHlAf8B0QHB + AbIB/wHUAcQBtwH/AdQBxAG3Af8B1AHGAbcB/wHTAcQBtgH/AfoB8QHpAf8BcQEpASQB7MAAAW0BGgEZ + AeUB+QH3AfYB/wGdAaIBqQH/AYABgQGLAf8BdQF9AYEB/wJaAVsB/wFFAUMBQQH/AcgBvgG4Af8B9wHt + AeUB/wHGAbMBpAH/AcYBswGkAf8BxgGzAaQB/wHGAbMBpAH/AcYBswGkAf8B+wH0Ae0B/wFzASYBIAHr + wAABbQEZARcB5QT/AdgBzgHHAf8BpQGfAZoB/wGBAXsBeQH/AXMBcQFuAf8BrQGmAaIB/wHpAdwB1AP/ + Af4B/wH9AfsB9gH/AfoB9wH0Af8B9wH1AfIB/wH1AfIB7AH/AfMB7AHlAf8B/gH6AfQB/wFtAR0BHAHn + wAABaQEXARUB4xz/AYMCQAHvAXQBHwEeAeUBcQEfAR4B5QFxAR8BHgHlAXEBHwEeAeUBcQEfAR4B5QF0 + ASIBHwHlAVACAgGYwAAB2AHbAdEB/wGRAZMBiAH/AZEBkwGIAf8BkQGTAYgB/wGRAZMBiAH/AZEBkwGI + Af8BkQGTAYgB/wGRAZMBiAH/AdgB2wHRAf/cAAFCAU0BPgcAAT4DAAEoAwABQAMAARADAAEBAQABAQUA + AYAXAAP/AQABwAE/BgABgAEfBwABHwYAAYABHwcAARBXAAF/BgAL + + + + False + + \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/Controls/CueBannerTextBox.cs b/Hyphen/Plugins/Forms/Controls/CueBannerTextBox.cs new file mode 100644 index 0000000..d1ee45d --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/CueBannerTextBox.cs @@ -0,0 +1,189 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.ComponentModel; +using System.Drawing; +using System.Windows.Forms; + +namespace Virtuoso.Miranda.Plugins.Forms.Controls +{ + /// + /// Draws a textbox with a prompt inside of it, similar to the "Quick Search" box + /// in Outlook 2007, IE7 or the Firefox 2.0 search box. The prompt will disappear when + /// the focus is placed in the textbox, and will not display again if the Text property + /// contains any value. If the Text property is empty, then the prompt will display + /// again when the textbox loses the focus. + /// + public class CueBannerTextBox : System.Windows.Forms.TextBox + { + // Windows message constants + const int WM_SETFOCUS = 7; + const int WM_KILLFOCUS = 8; + const int WM_ERASEBKGND = 14; + const int WM_PAINT = 15; + + // private internal variables + private bool _focusSelect = true; + private bool _drawPrompt = true; + private string _bannerText = String.Empty; + private Color _bannerColor = SystemColors.GrayText; + private Font _bannerFont = null; + + /// + /// Public constructor + /// + /// Uncomment the SetStyle line to activate the OnPaint logic in place of the WndProc logic + public CueBannerTextBox() + { + //this.SetStyle(ControlStyles.UserPaint, true); + this.BannerFont = this.Font; + } + + [Browsable(true)] + [EditorBrowsable(EditorBrowsableState.Always)] + [Category("Appearance")] + [Description("The prompt text to display when there is nothing in the Text property.")] + public string BannerText + { + get { return _bannerText; } + set { if (value == null) value = String.Empty; _bannerText = value.Trim(); this.Invalidate(); } + } + + [Browsable(true)] + [EditorBrowsable(EditorBrowsableState.Always)] + [Category("Appearance")] + [Description("The ForeColor to use when displaying the PromptText.")] + public Color BannerForeColor + { + get { return _bannerColor; } + set { _bannerColor = value; this.Invalidate(); } + } + + [Browsable(true)] + [EditorBrowsable(EditorBrowsableState.Always)] + [Category("Appearance")] + [Description("The Font to use when displaying the PromptText.")] + public Font BannerFont + { + get { return _bannerFont; } + set { _bannerFont = value; this.Invalidate(); } + } + + [Browsable(true)] + [EditorBrowsable(EditorBrowsableState.Always)] + [Category("Behavior")] + [Description("Automatically select the text when control receives the focus.")] + public bool FocusSelect + { + get { return _focusSelect; } + set { _focusSelect = value; } + } + + /// + /// When the textbox receives an OnEnter event, select all the text if any text is present + /// + /// + protected override void OnEnter(EventArgs e) + { + if (this.Text.Length > 0 && _focusSelect) + this.SelectAll(); + + base.OnEnter(e); + } + + /// + /// Redraw the control when the text alignment changes + /// + /// + protected override void OnTextAlignChanged(EventArgs e) + { + base.OnTextAlignChanged(e); + this.Invalidate(); + } + + /// + /// Redraw the control with the prompt + /// + /// + /// This event will only fire if ControlStyles.UserPaint is set to true in the constructor + protected override void OnPaint(PaintEventArgs e) + { + base.OnPaint(e); + + // Only draw the prompt in the OnPaint event and when the Text property is empty + if (_drawPrompt && this.Text.Length == 0) + DrawTextPrompt(e.Graphics); + } + + /// + /// Overrides the default WndProc for the control + /// + /// The Windows message structure + /// + /// This technique is necessary because the OnPaint event seems to be doing some + /// extra processing that I haven't been able to figure out. + /// + protected override void WndProc(ref System.Windows.Forms.Message m) + { + switch (m.Msg) + { + case WM_SETFOCUS: + _drawPrompt = false; + break; + + case WM_KILLFOCUS: + _drawPrompt = true; + break; + } + + base.WndProc(ref m); + + // Only draw the prompt on the WM_PAINT event and when the Text property is empty + if (m.Msg == WM_PAINT && _drawPrompt && this.Text.Length == 0 && !this.GetStyle(ControlStyles.UserPaint)) + DrawTextPrompt(); + } + + /// + /// Overload to automatically create the Graphics region before drawing the text prompt + /// + /// The Graphics region is disposed after drawing the prompt. + protected virtual void DrawTextPrompt() + { + using (Graphics g = this.CreateGraphics()) + { + DrawTextPrompt(g); + } + } + + /// + /// Draws the PromptText in the TextBox.ClientRectangle using the PromptFont and PromptForeColor + /// + /// The Graphics region to draw the prompt on + protected virtual void DrawTextPrompt(Graphics g) + { + TextFormatFlags flags = TextFormatFlags.NoPadding | TextFormatFlags.Top | TextFormatFlags.EndEllipsis; + Rectangle rect = this.ClientRectangle; + + // Offset the rectangle based on the HorizontalAlignment, + // otherwise the display looks a little strange + switch (this.TextAlign) + { + case HorizontalAlignment.Center: + flags = flags | TextFormatFlags.HorizontalCenter; + rect.Offset(0, 1); + break; + case HorizontalAlignment.Left: + flags = flags | TextFormatFlags.Left; + rect.Offset(1, 1); + break; + case HorizontalAlignment.Right: + flags = flags | TextFormatFlags.Right; + rect.Offset(0, 1); + break; + } + + // Draw the prompt text using TextRenderer + TextRenderer.DrawText(g, _bannerText, _bannerFont, rect, _bannerColor, this.BackColor, flags); + } + } +} diff --git a/Hyphen/Plugins/Forms/Controls/CueBannerTextBox_old.cs b/Hyphen/Plugins/Forms/Controls/CueBannerTextBox_old.cs new file mode 100644 index 0000000..3533582 --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/CueBannerTextBox_old.cs @@ -0,0 +1,125 @@ +//-------------------------------------------------------------------------- +// +// Copyright (c) Chili Software. All rights reserved. +// +// File: CueBannerTextBox.cs +// +// Description: Text box that allows to display a cue banner. +// +//-------------------------------------------------------------------------- + +// Idea from: http://www.delphipraxis.net/topic13132_editgetcuebannertext+win+xp.html + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; +using System.Runtime.InteropServices; +using System.Drawing; +using System.Diagnostics; +using System.ComponentModel; + +namespace Virtuoso.Miranda.Plugins.Forms.Controls +{ + /// + /// This class represents a text box that is enhanced to display a little cue banner, if + /// no text has been entered. This could be used to inform the user what should be entered + /// in the text box. + /// + public class CueBannerTextBox : TextBox + { + #region NativeMethods + + private const uint ECM_FIRST = 0x1500; + private const uint EM_SETCUEBANNER = ECM_FIRST + 1; + private const uint WM_SETFONT = 0x30; + + [DllImport("user32.dll", CharSet = CharSet.Unicode)] + private static extern IntPtr SendMessage(IntPtr hWnd, UInt32 msg, IntPtr wParam, string lParam); + + #endregion + + private string _bannerText; + private Font _bannerFont; + + /// + /// The banner text associated with the control. + /// + [Description("The banner text associated with the control.")] + [Category("Appearance")] + public string BannerText + { + get { return _bannerText; } + set + { + _bannerText = value; + + // If supported set the value as banner text. + if (IsSupported) + SendMessage(this.Handle, EM_SETCUEBANNER, IntPtr.Zero, value); + } + } + + /// + /// The banner font used to display the banner text in the control. + /// + [Description("The banner font used to display the banner text in the control.")] + [Category("Appearance")] + public Font BannerFont + { + get + { + if (_bannerFont == null && this.Parent != null) + return this.Parent.Font; + + return _bannerFont; + } + set { _bannerFont = value; } + } + + #region Overridden Members + + /// + /// Invoked each time the focus is lost. + /// + /// + protected override void OnLostFocus(EventArgs e) + { + base.OnLostFocus(e); + + // Notify the text box to change the font to the banner font. + if (this.Text.Length == 0 && IsSupported) + { + SendMessage(this.Handle, WM_SETFONT, _bannerFont.ToHfont(), null); + } + } + + /// + /// Invoked each time the focus is gotten. + /// + /// + protected override void OnGotFocus(EventArgs e) + { + base.OnGotFocus(e); + + // Notify the text box to change the font back. + if (IsSupported) + SendMessage(this.Handle, WM_SETFONT, base.Font.ToHfont(), null); + } + + #endregion + + /// + /// Returns whether the OS supports banner texts. It is fine if the application + /// runs on XP or higher. + /// + private bool IsSupported + { + get + { + Version v = Environment.OSVersion.Version; + return ((v.Major == 5 && v.Minor == 1) || v.Major > 5); + } + } + } +} diff --git a/Hyphen/Plugins/Forms/Controls/GradientPanel.cs b/Hyphen/Plugins/Forms/Controls/GradientPanel.cs new file mode 100644 index 0000000..1c7dae1 --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/GradientPanel.cs @@ -0,0 +1,56 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; +using System.Drawing; +using System.Drawing.Drawing2D; + +namespace Virtuoso.Miranda.Plugins.Forms.Controls +{ + [ToolboxBitmap(typeof(Panel))] + public sealed class GradientPanel : Panel + { + public GradientPanel() { } + + private Color gradientColor; + public Color GradientColor + { + get { return gradientColor; } + set { gradientColor = value; Refresh(); } + } + + private float rotation; + public float Rotation + { + get { return rotation; } + set { rotation = value; Refresh(); } + } + + protected override void OnPaint(PaintEventArgs e) + { + if (e.ClipRectangle.IsEmpty) return; + + using (LinearGradientBrush brush = new LinearGradientBrush(ClientRectangle, BackColor, GradientColor, Rotation)) + e.Graphics.FillRectangle(brush, ClientRectangle); + + base.OnPaint(e); + } + } +} diff --git a/Hyphen/Plugins/Forms/Controls/ManagedMainMenu.cs b/Hyphen/Plugins/Forms/Controls/ManagedMainMenu.cs new file mode 100644 index 0000000..e340034 --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/ManagedMainMenu.cs @@ -0,0 +1,242 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Native; +using System.Drawing; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Miranda.Plugins.Forms.Controls; + +namespace Virtuoso.Miranda.Plugins.Forms.Controls +{ + // Impl note: must be public, remoting rejects non-public method calls. + public sealed class ManagedMainMenu : ContextMenuStrip + { + #region Delegates + + private delegate void AddMainMenuItemInvoker(ManagedMainMenu menu, ManagedMainMenuItem item); + private delegate void ModifyMenuItemInvoker(ManagedMainMenu menu, ref CLISTMENUITEM itemData, string handle); + + #endregion + + #region Fields + + private static readonly Random HandleGenerator = new Random(); + + private static readonly AddMainMenuItemInvoker AddMainMenuItemDelegate = new AddMainMenuItemInvoker(AddMainMenuItem); + private static readonly ModifyMenuItemInvoker ModifyMenuItemDelegate = new ModifyMenuItemInvoker(ModifyMenuItem); + + private static readonly ToolStripMenuItem EmptyItem; + private readonly int EmptyItemIndex; + + #endregion + + #region .ctors & .dctors + + static ManagedMainMenu() + { + EmptyItem = new ToolStripMenuItem(TextResources.UI_Label_Empty); + EmptyItem.Visible = false; + } + + internal ManagedMainMenu() + { + RenderMode = ToolStripRenderMode.System; + EmptyItemIndex = Items.Add(EmptyItem); + } + + #endregion + + #region Methods + + #region Overrides + + public override object InitializeLifetimeService() + { + return null; + } + + #endregion + + #region UI + + internal void ShowUnderCursor() + { + if (Items.Count == 1) + Items[EmptyItemIndex].Visible = true; + else + Items[EmptyItemIndex].Visible = false; + + Show(Cursor.Position); + } + + #endregion + + #region Interceptors + + /// + /// + /// + /// + /// + /// This method is static to not let the execution run in default AppDomain but in a domain of the menu itself. + /// + internal static void RegisterInterceptors(ManagedMainMenu menu) + { + MirandaContext context = MirandaContext.Current; + + context.ServiceCallInterceptors.Register(MirandaServices.MS_CLIST_ADDMAINMENUITEM, menu.AddMainMenuItemServiceInterceptor); + context.ServiceCallInterceptors.Register(MirandaServices.MS_CLIST_MODIFYMENUITEM, menu.ModifyMenuItemInterceptor); + } + + internal static void UnregisterInterceptors(ManagedMainMenu menu) + { + MirandaContext context = MirandaContext.Current; + + context.ServiceCallInterceptors.Unregister(MirandaServices.MS_CLIST_ADDMAINMENUITEM); + context.ServiceCallInterceptors.Unregister(MirandaServices.MS_CLIST_MODIFYMENUITEM); + } + + private int AddMainMenuItemServiceInterceptor(UIntPtr wParam, IntPtr lParam) + { + CLISTMENUITEM itemData = (CLISTMENUITEM)Marshal.PtrToStructure(lParam, typeof(CLISTMENUITEM)); + ManagedMainMenuItem menuItem = null; + Image itemImage = null; + + if (itemData.Icon != IntPtr.Zero) + itemImage = IconImageCache.Singleton.GetIconImage(itemData.Icon); + + menuItem = new ManagedMainMenuItem(itemData.Text, itemData.PopUpMenu, itemData.Service, itemImage); + + if (InvokeRequired) + Invoke(AddMainMenuItemDelegate, this, menuItem); + else + AddMainMenuItemDelegate(this, menuItem); + + return menuItem.Handle; + } + + private static void AddMainMenuItem(ManagedMainMenu menu, ManagedMainMenuItem item) + { + if (!String.IsNullOrEmpty(item.PopUpMenu)) + { + string popupName = item.PopUpMenu; + ToolStripMenuItem popupItem = null; + + ToolStripItem[] popupItems = menu.Items.Find(popupName, false); + + if (popupItems.Length > 0) + popupItem = (ToolStripMenuItem)popupItems[0]; + else + { + popupItem = new ToolStripMenuItem(popupName); + popupItem.Name = popupName; + + menu.Items.Add(popupItem); + } + + popupItem.DropDownItems.Add(item); + } + else + menu.Items.Add(item); + } + + private int ModifyMenuItemInterceptor(UIntPtr wParam, IntPtr lParam) + { + try + { + CLISTMENUITEM itemData = (CLISTMENUITEM)Marshal.PtrToStructure(lParam, typeof(CLISTMENUITEM)); + string handle = wParam.ToString(); + + if (!Items.ContainsKey(handle)) + { + if (String.IsNullOrEmpty(itemData.PopUpMenu) || + !Items.ContainsKey(itemData.PopUpMenu) || + !((ToolStripMenuItem)Items[itemData.PopUpMenu]).DropDownItems.ContainsKey(handle)) + return MirandaContext.Current.CallService(MirandaServices.MS_CLIST_MODIFYMENUITEM, wParam, lParam, true); + } + + if (InvokeRequired) + Invoke(ModifyMenuItemDelegate, this, itemData, handle); + else + ModifyMenuItemDelegate(this, ref itemData, handle); + + return 0; + } + catch + { + return -1; + } + } + + private static void ModifyMenuItem(ManagedMainMenu menu, ref CLISTMENUITEM itemData, string handle) + { + ManagedMainMenuItem item = (ManagedMainMenuItem)menu.Items.Find(handle, itemData.PopUpMenu != null)[0]; + MenuItemModifyFlags flags = (MenuItemModifyFlags)itemData.Flags; + + if ((flags & MenuItemModifyFlags.CMIM_NAME) == MenuItemModifyFlags.CMIM_NAME) + item.Text = itemData.Text; + + if ((flags & MenuItemModifyFlags.CMIM_ICON) == MenuItemModifyFlags.CMIM_ICON) + item.Image = IconImageCache.Singleton.GetIconImage(itemData.Icon); + + if ((flags & MenuItemModifyFlags.CMIM_HOTKEY) == MenuItemModifyFlags.CMIM_HOTKEY) + item.ShortcutKeys = (Keys)itemData.HotKey; + + if ((flags & MenuItemModifyFlags.CMIM_FLAGS) == MenuItemModifyFlags.CMIM_FLAGS) + { + MenuItemProperties itemFlags = (MenuItemProperties)(flags & ~MenuItemModifyFlags.CMIM_ALL); + + switch (itemFlags) + { + case MenuItemProperties.Grayed: + item.Enabled = false; + break; + case MenuItemProperties.Hidden: + if (item.OwnerItem == null) + menu.Items.Remove(item); + else + { + ToolStripMenuItem popupItem = (ToolStripMenuItem)item.OwnerItem; + popupItem.DropDownItems.Remove(item); + + if (popupItem.DropDownItems.Count == 0) + menu.Items.Remove(popupItem); + } + break; + case MenuItemProperties.Checked: + item.Checked = true; + break; + case MenuItemProperties.None: + item.Enabled = true; + item.Visible = true; + item.Checked = false; + break; + } + } + } + + #endregion + + #endregion + } +} diff --git a/Hyphen/Plugins/Forms/Controls/ManagedMainMenuItem.cs b/Hyphen/Plugins/Forms/Controls/ManagedMainMenuItem.cs new file mode 100644 index 0000000..99c9ea1 --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/ManagedMainMenuItem.cs @@ -0,0 +1,85 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Drawing; + +namespace Virtuoso.Miranda.Plugins.Forms.Controls +{ + internal class ManagedMainMenuItem : ToolStripMenuItem + { + #region Fields + + private static readonly Random HandleGenerator = new Random(); + + private int handle; + private string service, popUpMenu; + + #endregion + + #region .ctors + + public ManagedMainMenuItem(string text, string popUpMenu, string service, Image image) + { + if (String.IsNullOrEmpty(text)) throw new ArgumentNullException("text"); + if (String.IsNullOrEmpty(service)) throw new ArgumentNullException("service"); + + this.Name = (handle = HandleGenerator.Next()).ToString(); + + this.Text = text; + this.popUpMenu = popUpMenu; + this.service = service; + this.Image = image; + + this.Click += new EventHandler(ManagedMainMenuItem_Click); + } + + #endregion + + #region Properties + + public string PopUpMenu + { + get { return popUpMenu; } + } + + public string Service + { + get { return service; } + } + + public int Handle + { + get { return handle; } + } + + #endregion + + #region Methods + + private void ManagedMainMenuItem_Click(object sender, EventArgs e) + { + MirandaContext.Current.CallService(service); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Forms/Controls/TrayContextMenu.cs b/Hyphen/Plugins/Forms/Controls/TrayContextMenu.cs new file mode 100644 index 0000000..326bf06 --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/TrayContextMenu.cs @@ -0,0 +1,84 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Configuration.Forms; +using Virtuoso.Miranda.Plugins.Configuration; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Hyphen; + +namespace Virtuoso.Miranda.Plugins.Forms.Controls +{ + internal sealed class TrayContextMenu : ContextMenuStrip + { + #region Fields + + private ToolStripMenuItem ManagePluginsITEM; + + #endregion + + #region .ctors + + public TrayContextMenu() + { + InitializeComponent(); + } + + #endregion + + #region Designer + + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TrayContextMenu)); + this.ManagePluginsITEM = new System.Windows.Forms.ToolStripMenuItem(); + this.SuspendLayout(); + // + // ManagePluginsITEM + // + this.ManagePluginsITEM.Image = ((System.Drawing.Image)(resources.GetObject("ManagePluginsITEM.Image"))); + this.ManagePluginsITEM.Name = "ManagePluginsITEM"; + this.ManagePluginsITEM.Size = new System.Drawing.Size(111, 22); + this.ManagePluginsITEM.Text = "Options"; + this.ManagePluginsITEM.Click += new System.EventHandler(this.ManagePluginsITEM_Click); + // + // TrayContextMenu + // + this.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.ManagePluginsITEM}); + this.RenderMode = System.Windows.Forms.ToolStripRenderMode.System; + this.Size = new System.Drawing.Size(112, 26); + this.ResumeLayout(false); + + } + + #endregion + + #region UI Handlers + + private void ManagePluginsITEM_Click(object sender, EventArgs e) + { + Loader.GetInstance().ManagePlugins(); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Forms/Controls/TrayContextMenu.resx b/Hyphen/Plugins/Forms/Controls/TrayContextMenu.resx new file mode 100644 index 0000000..2959f3c --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/TrayContextMenu.resx @@ -0,0 +1,143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALEwAA + CxMBAJqcGAAAAtdJREFUOE99U0tPE1EUblgQV64MCQv3rtwZE2NMiIkbQzTEldENFmpbWvqkpVT6pC2l + 7ZS+3/Td6UyH0k6nBUt5yQKNAv4Gg0YXxMQYg6VzvDbBCGm4m3tz73e+853zncvhXLI0YXpTG6Y/X4b5 + 96aJ1oZm4/VDTYR5OB2mB3RR5rsxXoepYOWm0r8imQ5UjiRu8lZPMm2UeWJINMAQr3f0MaZtiDOAdtBF + a6wuQrO6KA1SD/X4XLAmUrutjTF3Z6LMiKuw+TtVfwvL2x+B3DwEfH0f8q8/QKD8BuZSa6zcU1aIsdI9 + kYu4w1GFqld18fqxId4ADN8AYuMACs334CG3wbjU6BgTjVNnoQXB5V0IULtgRGrUvjIoPcttjjJQ6Z+J + 1BJIIpus70EeBdqyzc50uBZWh+nr6hA9qA5WKX2UaWN4C2ypNVB5y6zIVUx05auC1QFDjGFLW4ewiDKi + hkkuNkXpL+uNsRrYs01QeMgOkt3HUYeq5KsI/UmP5BRbB2BIrP3o1U25j7ox5S93TAgnw4ow6SoecZCX + X3XoAtmCGrMPuhhz3CtY5qEGFW6irQtXQOIqgtiRhy5O4VsZRtkhvfoO7Lkmq/CVRy8SIH8lKi8JMz4K + xPY8K1jAh7oYibs0rAlWOt7SDvipHdCGKqeTbvL+GQE6j8gw4pfaS4Ecw0FozZwK7PkHHKGj2C/3Ukea + UBVMyC4fuQVYvgVoKDpyT+mbbJH8MuUmWZWHBIULB5EtAzxzEsbNqZ9d8gkX8VLgILgiZ3F9FtVkTTaQ + JatgRtM1G1wBjbcEUlSjcD4D43OpvXFL+jnXnOaeK03gKDxVuEus1EWwUicOk84Cqi8LAmsG+HNJ4JmW + YMySHus52xMOXCvFiBO+vWARLOSfTdjzJwJLGoT2nJhny/pe6OMdrjl1PuP/TCjwEX8+d+XvnWA+t8G3 + ZbpfkmfNXuOakrxR01LfGf4P/J24pw50qlAAAAAASUVORK5CYII= + + + + True + + \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/Controls/TrayMenuManager.cs b/Hyphen/Plugins/Forms/Controls/TrayMenuManager.cs new file mode 100644 index 0000000..07637ee --- /dev/null +++ b/Hyphen/Plugins/Forms/Controls/TrayMenuManager.cs @@ -0,0 +1,61 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Resources; +using System.ComponentModel; +using System.Drawing; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Forms.Controls +{ + internal sealed class TrayMenuManager : IDisposable + { + #region Fields + + private readonly NotifyIcon TrayIcon; + + #endregion + + #region .ctors + + public TrayMenuManager() + { + TrayIcon = new NotifyIcon(); + + TrayIcon.Text = TextResources.UI_ToolTip_HyphenTrayIcon; + TrayIcon.Visible = true; + TrayIcon.Icon = VisualResources.Icon_16x16_Hyphen; + TrayIcon.ContextMenuStrip = new TrayContextMenu(); + } + + #endregion + + #region IDisposable Members + + public void Dispose() + { + if (TrayIcon != null) + TrayIcon.Dispose(); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Forms/ErrorDialog.Designer.cs b/Hyphen/Plugins/Forms/ErrorDialog.Designer.cs new file mode 100644 index 0000000..418164b --- /dev/null +++ b/Hyphen/Plugins/Forms/ErrorDialog.Designer.cs @@ -0,0 +1,152 @@ +namespace Virtuoso.Miranda.Plugins.Forms +{ + internal partial class ErrorDialog + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ErrorDialog)); + this.MessageLABEL = new System.Windows.Forms.Label(); + this.DetailsTBOX = new System.Windows.Forms.TextBox(); + this.label2 = new System.Windows.Forms.Label(); + this.OkBTN = new System.Windows.Forms.Button(); + this.label3 = new System.Windows.Forms.Label(); + this.Panel1 = new Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader(); + this.CancelBTN = new System.Windows.Forms.Button(); + this.label1 = new System.Windows.Forms.Label(); + this.label4 = new System.Windows.Forms.Label(); + this.SendReportLBTN = new System.Windows.Forms.LinkLabel(); + this.Panel1.SuspendLayout(); + this.SuspendLayout(); + // + // MessageLABEL + // + resources.ApplyResources(this.MessageLABEL, "MessageLABEL"); + this.MessageLABEL.Name = "MessageLABEL"; + // + // DetailsTBOX + // + this.DetailsTBOX.BackColor = System.Drawing.SystemColors.Window; + resources.ApplyResources(this.DetailsTBOX, "DetailsTBOX"); + this.DetailsTBOX.Name = "DetailsTBOX"; + this.DetailsTBOX.ReadOnly = true; + // + // label2 + // + resources.ApplyResources(this.label2, "label2"); + this.label2.Name = "label2"; + // + // OkBTN + // + resources.ApplyResources(this.OkBTN, "OkBTN"); + this.OkBTN.DialogResult = System.Windows.Forms.DialogResult.OK; + this.OkBTN.Name = "OkBTN"; + this.OkBTN.UseVisualStyleBackColor = true; + // + // label3 + // + resources.ApplyResources(this.label3, "label3"); + this.label3.BackColor = System.Drawing.Color.Transparent; + this.label3.Name = "label3"; + // + // Panel1 + // + this.Panel1.BackColor = System.Drawing.Color.Transparent; + this.Panel1.Color = System.Drawing.SystemColors.ActiveCaption; + this.Panel1.Controls.Add(this.label3); + resources.ApplyResources(this.Panel1, "Panel1"); + this.Panel1.HeaderFont = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.Panel1.Image = ((System.Drawing.Image)(resources.GetObject("Panel1.Image"))); + this.Panel1.MinimumSize = new System.Drawing.Size(300, 40); + this.Panel1.Name = "Panel1"; + // + // CancelBTN + // + this.CancelBTN.DialogResult = System.Windows.Forms.DialogResult.Cancel; + resources.ApplyResources(this.CancelBTN, "CancelBTN"); + this.CancelBTN.Name = "CancelBTN"; + this.CancelBTN.UseVisualStyleBackColor = true; + // + // label1 + // + resources.ApplyResources(this.label1, "label1"); + this.label1.Name = "label1"; + // + // label4 + // + resources.ApplyResources(this.label4, "label4"); + this.label4.Name = "label4"; + // + // SendReportLBTN + // + resources.ApplyResources(this.SendReportLBTN, "SendReportLBTN"); + this.SendReportLBTN.Name = "SendReportLBTN"; + this.SendReportLBTN.TabStop = true; + this.SendReportLBTN.UseCompatibleTextRendering = true; + this.SendReportLBTN.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.SendReportLBTN_LinkClicked); + // + // ErrorDialog + // + this.AcceptButton = this.OkBTN; + resources.ApplyResources(this, "$this"); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BackColor = System.Drawing.SystemColors.Window; + this.CancelButton = this.CancelBTN; + this.Controls.Add(this.SendReportLBTN); + this.Controls.Add(this.label4); + this.Controls.Add(this.CancelBTN); + this.Controls.Add(this.MessageLABEL); + this.Controls.Add(this.DetailsTBOX); + this.Controls.Add(this.OkBTN); + this.Controls.Add(this.label1); + this.Controls.Add(this.Panel1); + this.Controls.Add(this.label2); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "ErrorDialog"; + this.Shown += new System.EventHandler(this.PluginErrorDialog_Shown); + this.Panel1.ResumeLayout(false); + this.Panel1.PerformLayout(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Label MessageLABEL; + private System.Windows.Forms.TextBox DetailsTBOX; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.Button OkBTN; + private System.Windows.Forms.Label label3; + private Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Panel1; + private System.Windows.Forms.Button CancelBTN; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.LinkLabel SendReportLBTN; + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/ErrorDialog.cs b/Hyphen/Plugins/Forms/ErrorDialog.cs new file mode 100644 index 0000000..01e087f --- /dev/null +++ b/Hyphen/Plugins/Forms/ErrorDialog.cs @@ -0,0 +1,133 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Diagnostics; +using System.Media; + +namespace Virtuoso.Miranda.Plugins.Forms +{ + internal sealed partial class ErrorDialog : Form + { + #region Fields + + private IExceptionReporter Reporter; + private Exception Exception; + + #endregion + + #region .ctors + + private ErrorDialog() + { + InitializeComponent(); + } + + public static DialogResult PresentModal(Exception e) + { + return PresentModal(e, null, null, false); + } + + public static DialogResult PresentModal(Exception e, IExceptionReporter reporter) + { + return PresentModal(e, reporter, null, false); + } + + public static DialogResult PresentModal(Exception e, string message, bool canCancel) + { + return PresentModal(e, null, message, canCancel); + } + + public static DialogResult PresentModal(Exception e, IExceptionReporter reporter, string message, bool canCancel) + { + using (ErrorDialog dlg = new ErrorDialog()) + { + return dlg.BindAndShow(e, reporter, message, canCancel); + } + } + + #endregion + + #region Methods + + private DialogResult BindAndShow(Exception exception, IExceptionReporter reporter, string message, bool canCancel) + { + if (exception == null) + throw new ArgumentNullException("exception"); + + this.Exception = exception; + this.MessageLABEL.Text = message ?? exception.Message; + + PrepareReportLink(exception, reporter); + DumpException(exception); + + CancelBTN.Visible = canCancel; + OkBTN.Focus(); + + return ShowDialog(); + } + + private void PrepareReportLink(Exception exception, IExceptionReporter reporter) + { + if (reporter == null) + { + SendReportLBTN.Enabled = false; + } + else + { + this.Reporter = reporter; + } + } + + private void DumpException(Exception e) + { + StringBuilder dump = new StringBuilder(); + + if (e is IExceptionDumpController) + { + ((IExceptionDumpController)e).DumpException(e, dump); + } + + dump.AppendFormat("=== Exception dump ==={0}{1}{0}{0}", Environment.NewLine, e.ToString()); + DetailsTBOX.Text = dump.ToString(); + } + + #endregion + + #region UI Handlers + + private void PluginErrorDialog_Shown(object sender, EventArgs e) + { + SystemSounds.Hand.Play(); + } + + private void SendReportLBTN_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + Reporter.ReportException(Exception); + } + + #endregion + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/ErrorDialog.resx b/Hyphen/Plugins/Forms/ErrorDialog.resx new file mode 100644 index 0000000..c281922 --- /dev/null +++ b/Hyphen/Plugins/Forms/ErrorDialog.resx @@ -0,0 +1,538 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + + 9, 56 + + + 401, 56 + + + + 0 + + + (message) + + + MessageLABEL + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 3 + + + True + + + 12, 186 + + + True + + + + Both + + + 398, 171 + + + 1 + + + DetailsTBOX + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 4 + + + True + + + True + + + Tahoma, 8pt, style=Bold + + + 9, 170 + + + 46, 13 + + + 2 + + + Details + + + label2 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 8 + + + True + + + True + + + 12, 363 + + + 75, 23 + + + 3 + + + OK + + + OkBTN + + + System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 5 + + + True + + + True + + + Franklin Gothic Medium, 14pt + + + NoControl + + + 12, 12 + + + 273, 24 + + + 5 + + + Failed to load a managed plugin + + + label3 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Panel1 + + + 1 + + + True + + + Top + + + Tahoma, 8.25pt + + + An error occured in Hyphen or one of its plugins. + + + + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALEwAA + CxMBAJqcGAAACQtJREFUWEfFV/lXldcVbf+ExqQORUZBjRqqGAdQMajNilpd0UQFFVBwQpuktmpXQ10a + tat1qK5UFEFxWA7IoEyPx5vnkakGrIrj0xqFVdRIogzP7O7z+SA4NDXtD2Wtwze8e8/e59x9zr3fj3/0 + in+rMzIiOTSONpo2nBZG6xuY3szrdVojrYbmyNq37/Iruv7+YQSevH7durwN69e35ubktBiNxrampib/ + vdZWdHV1KSb38k5+kzEyVubI3P+aBCeHZ2ZmZv9x27YWg8HwqKW5ueW2weC4mJNz4/zuPV9/sXXbk/rf + f4rqTz6BIy3db0tPe+Bet/6iT6WyyViZI3PFh/j6QUQ4YcqWLVsuqioqHt5rabl5+eixczcKCtrvqKtw + YccO1K/9DapXrIR7yVI4k1PgWLgI1gWJsMybD+OcOdDNnfuwfvt2Tyvnig/xJT5fiQQHziLz2w0NDV13 + rDbrteMn2+5VV+PSzl2o//hj1KxYgZrlK+BNXwbPkiVwpaTAuWgx7ElJJDAPpjlzYZg1G7qZM1H1/pyW + W3q9RXyJT/H9vSSEpQz0+XxPmo4edd0qLfXfPHUa5367HnWrVtEyULtyFWqFRPpyeNPS4E5NVQg4khbC + ygyYScAYIKB5912UJ0zp/CJrn118Bki8PBOyTpIqYdt05IjzZlHRt5f3ZqEuY7UCXJ+RoVzrFAIrUbNs + GaqXLoWHBFyLF8OZuBA2ZsA6dy5Ms2fBMGMmtCSgnjIFZfHx/nNZWXbxHViOFzUhYpH1+tJqtV7K2ue/ + lpeH2gBg3UohsBr1q8SYCWaglgRqlqbBm5IKNzPgSkyC7cN5sDADZmbAOH0GdCSgTZiCyvjJOBMb13lT + pzMLhmA9sxRSLqJYEZxn7drWL9Vq1H30EWqXL1eilaivMBttPh9az51D9Zo1qE5LRzU14E1OhpsidM1f + APfiZDQ7nGj2emFJT4d26jToEhKgmRSPsthYlE6d1iLCFKxnSlRqVsqmYc8e7yUCNWRuVNa3mk5qKbim + zz9H+/37ePLkCe1b3Kmrg4lgHkZfzfR7GL2b69/idMLv9yvWfP48tKlLUDn5HWgnTULl+FiUvD0Gns2b + 3YIlmEoWpMNJ45DatS5Z+vDSvn0KuIclVs0U15DEwytXA+BC4KndcntgovK9BPfw2hu8q8vPBuXHJZ0e + RXFxqKJpxo9Hyei3URgb+5VgCabSXfkvVbqXr0Jl9az5FWp+vVYRlZvl5aXARGh3mVa//0mPCQF59tns + sDDKZru9J/Ju8K7OLtgPHcKRseOU6HW8qmJGIz/657h2tsRyMDdXliFVCOyVFupau/aCh6JzElhq2rlo + ETwk4uWzi8vgczgCIN8RkVQ/uHXrBfCO9g6od+7E1sGDcXjYMKgIqo+JgXZUDIrfioY2JeW8yWRqE2wh + YJY+rp83776d0UhHs1FQTqbWxdp2k4hr4UIY+P6KwdAD1r3Wcu2Jmmnv7OhE5fYd2BQSguyICJyJjIKG + RDSDIqGJikIBnwvGj78nmIItBHyymWhnzvRbEhNhZh3bPviQNT0f9gULFHW7WF42drYKqvlCaSk6GWFv + 0Kf3XfjmYRtUf/ozNoeGInfQIJQOHgL9EFpUJHR81oaHoyA4GEdDQ7sEU7CFQLtM1rBupY+bZs+G+f05 + sHQTmflLmNlMzBMmwhQbh4q4Cfjn1Ws9O2H3jtjJNb9aU6tEnsNoKwhsHDoUxqghMDBqQ8Qg6MLCUDRw + IA7276fMF+weAlVsGjo2ED0BjbNmwcJ707RfQE9QIxVsplnGxcJXXIyOx+0QwOet/dFjePMOI5+A+iFD + YSEJC9NuYvRGRm8kgbNCoO+zBJQlqEiY0qV57z3oaYYZ7GLvJKCKdaujGcaMhXHsWPhOF7wU+CmRTsU6 + qIH6nFyURw2GhWtvjYyEhVowE9wcGobyoCDkBQU9swSKCFXTp9+vnDoVGkZdFR8PNVVbNXKUolwzG8n1 + U/k9IN1gj9q+RhNLVECft7rsA1CzAswEtzF6a1g4LNRGJQmciI5u7S1CpQxNy5b/vYJdq3LiJFSMHMnS + iUYlTcsSus7Inwd4zHSf3bgRn9G560DOS0h0wENBqghq5RgbozeLPt74KTRJSQ29y1BpRFdLSiylFFop + Iy99cxgqhg+HevgIVI0YATapZwAeffMIZzL/gK1U9CE6Lxwchbr92YExHWhnlYg5+e44IzaQhCM0BKaB + wTjw+htsRGdNvRtRTysunjDhq0KKp4TlU86rauibShplR7vCtipZkMiLeRT7jGLKI7iaIjNzvIpCq9u7 + twf8b2Vl2M2mc+xnQTAycifNQDLHhw59IK34dxs2PG3F8te9Gbk3bnTls4TOUDildKyiiCqpZLmWTJyI + uiNHod68GVvp6CBTWslxVv7moODsHK8l6eq/7Ibjr3uxm8T39++PCmbJTrORcHaf1+HdtMnJJf9uMwps + SMp2LFtlfkzM3ULWbCkjKieAWjoZAVS8no4Ix0FGwkaCCo6xEtTBMU6ai+Md4RGoCgnFCYmUkauYcptE + TwJGPheMGXNXtvwXtmMh0X0g8Wk0pmPhER1FTG85HVZSxVUE0xJAw3s132l4b2ambALK35x876K5OcfJ + chO1m0lE0u4huFlKL3hgxz+MRnOlSvXigSSQhZ4jWe2uXdaTYWH+IomUDqvoWNqoXpoJCZhpVpqdzw6p + ApqbZebhWK8Y54m5gkMU8Nz+A/yNe7OsjY2N//5IFiDRcyitI4kjYWEdhYyijKblmutppkBDsfJq57NE + 7CKYm/ceAVaiDoF1YBD0AwbgcEhIx/msLOt/PJR2n9F6H8tlOU6NGnWXnQuFQQNRTiFpCWAWACktRd2M + lFd3SDAcXHNRuprA+1/7CQrHjrt722Qyv/KxvBeJng8TEabz00ynlM8hOpaN5AwFVcj7/H79cJpWRCun + 4rP79CHwazgxbNiDmq1bXSK4H/xh0ovEC59mV4qLTVWJiY0n34puPRQc3JXTty/EDvP+1MiRrbrk5MYb + ZWXm//nTrPeR+f/2cfr8J5R0LTnDyTFKTjJymJD9PGByL+/kNxnztMO9wt+/AGC+j+mHs3VdAAAAAElF + TkSuQmCC + + + + 0, 0 + + + 422, 53 + + + 4 + + + Panel1 + + + Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader, Hyphen, Version=0.8.6.1931, Culture=neutral, PublicKeyToken=null + + + $this + + + 7 + + + True + + + 93, 363 + + + 75, 23 + + + 5 + + + Cancel + + + False + + + CancelBTN + + + System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 2 + + + True + + + True + + + Tahoma, 8pt, style=Bold + + + NoControl + + + 9, 124 + + + 118, 13 + + + 2 + + + Report the problem + + + label1 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 6 + + + True + + + True + + + 9, 137 + + + 169, 13 + + + 6 + + + To send this report to the author, + + + label4 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 1 + + + True + + + True + + + 0, 10 + + + 177, 137 + + + 53, 18 + + + 7 + + + click here. + + + SendReportLBTN + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 0 + + + True + + + True + + + 6, 13 + + + 422, 397 + + + Tahoma, 8pt + + + + AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAQAQAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAABweLRgcHi40HB4vHBweL8AcHi/AHB4vHBweLjQcHi0YAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAHB4sgBweLjDAwqf5oaMj/lpbd/6qq5v+goOP/kJDb/2hoyP8wMKn+BweLjAcH + iyAAAAAAAAAAAAAAAAAHB4sgCQmf81ZWwf+Wl+H/dnbY/0NDyv8eHr//Hh6//0NDyv92dtj/l5fh/1ZW + wf8KCpzzBweLIAAAAAAAAAAABweLjFVWw/+UlOP/TU2s/xYWkv8WFpL/Dw+8/w8Pu/8PD7v/FhaS/01N + rP+YmM//VlbB/wcHi4wAAAAABweLRi8vrP6VleT/RkbS///////29v3/FhaS/w4Ov/8ODr7/FhaS//// + ////////TU2s/5eX4f8wMKn+BweLRgcHi41nZ83/cnLg/wwMyP/29v3//////9DQ6f9CQqf/Nzeh/7Ky + 2//9/f7//////xYWkv92ddn/aGjI/wcHi40HB4vHi4vi/zs72f8KC87/CgvM/9LS9f//////vr7h/6am + 1v//////zs7o/xYWkv8WFpL/QUHN/5OU3v8HB4vHBweL8JeY7P8WFtf/CQnT/x0d1f83N9n/qKjW//// + ////////wMDi/1BQrf8bG8r/DQ3F/xscyP+pqen/BweL8AcHi/ClpfD/FRXb/wcI2P8ICNb/Nzeh/7Cw + 2v///////////8vL5/9ERKf/CwvM/wsMyf8bG8v/sbHs/wcHi/AHB4vHkpHp/zs75v8GBt3/FhaS/9nZ + 7f//////urrf/6en1v//////29vu/xYWkv8KCs//QD/Y/5WV4/8HB4vHBweLjWRl1f9wcO//BQXi//r6 + /v//////3t7w/0BApv8wMOD/xsb2///////+/v//FhaS/3Jy5v9mZ8//BweLjQcHi0YtLbL+kpLy/z8/ + 7P//////+/v//xYWkv8ICOH/BQXg/wYG3v///////////01NrP+Tk+z/Li6u/gcHi0YAAAAABweLjFFR + 0/+Pj/X/Pz7t/wME6P8EBOf/BATm/wQF5P8EBOP/BQbh/0FA5/+RkfH/UlLO/wcHi4wAAAAAAAAAAAcH + iyAHB6rzUVHT/5GR9P9vb/P/ODju/xIT6v8SEuj/OTns/29v8P+SkvL/UVLQ/wcHpvMHB4sgAAAAAAAA + AAAAAAAABweLIAcHi4wtLbL+ZGTY/5OT7f+oqPb/n5/1/46O7P9kZNf/LS2y/gcHi4wHB4sgAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAABweLRgcHi40HB4vHBweL8AcHi/AHB4vHBweLjQcHi0YAAAAAAAAAAAAA + AAAAAAAA8A8AAMADAACAAQAAgAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAEAAIAB + AADAAwAA8A8AAA== + + + + CenterScreen + + + Plugin error + + + ErrorDialog + + + System.Windows.Forms.Form, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/FusionProgressDialog.Designer.cs b/Hyphen/Plugins/Forms/FusionProgressDialog.Designer.cs new file mode 100644 index 0000000..eaa6e16 --- /dev/null +++ b/Hyphen/Plugins/Forms/FusionProgressDialog.Designer.cs @@ -0,0 +1,82 @@ +namespace Virtuoso.Miranda.Plugins.Forms +{ + partial class FusionProgressDialog + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FusionProgressDialog)); + this.FusionWorker = new System.ComponentModel.BackgroundWorker(); + this.BackgroundPBOX = new System.Windows.Forms.PictureBox(); + ((System.ComponentModel.ISupportInitialize)(this.BackgroundPBOX)).BeginInit(); + this.SuspendLayout(); + // + // FusionWorker + // + this.FusionWorker.DoWork += new System.ComponentModel.DoWorkEventHandler(this.FusionWorker_DoWork); + this.FusionWorker.RunWorkerCompleted += new System.ComponentModel.RunWorkerCompletedEventHandler(this.FusionWorker_RunWorkerCompleted); + // + // BackgroundPBOX + // + this.BackgroundPBOX.Image = ((System.Drawing.Image)(resources.GetObject("BackgroundPBOX.Image"))); + this.BackgroundPBOX.Location = new System.Drawing.Point(0, 0); + this.BackgroundPBOX.Name = "BackgroundPBOX"; + this.BackgroundPBOX.Size = new System.Drawing.Size(200, 100); + this.BackgroundPBOX.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; + this.BackgroundPBOX.TabIndex = 2; + this.BackgroundPBOX.TabStop = false; + // + // FusionProgressDialog + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BackColor = System.Drawing.Color.LightSteelBlue; + this.ClientSize = new System.Drawing.Size(200, 100); + this.ControlBox = false; + this.Controls.Add(this.BackgroundPBOX); + this.Cursor = System.Windows.Forms.Cursors.WaitCursor; + this.Font = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "FusionProgressDialog"; + this.Opacity = 0.75; + this.ShowInTaskbar = false; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Loading plugins"; + this.TransparencyKey = System.Drawing.Color.LightSteelBlue; + ((System.ComponentModel.ISupportInitialize)(this.BackgroundPBOX)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.ComponentModel.BackgroundWorker FusionWorker; + private System.Windows.Forms.PictureBox BackgroundPBOX; + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/FusionProgressDialog.cs b/Hyphen/Plugins/Forms/FusionProgressDialog.cs new file mode 100644 index 0000000..538606b --- /dev/null +++ b/Hyphen/Plugins/Forms/FusionProgressDialog.cs @@ -0,0 +1,89 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; +using System.Threading; +using Virtuoso.Hyphen; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Forms +{ + internal sealed partial class FusionProgressDialog : Form + { + #region Delegates + + public delegate void WorkerDelegate(); + + #endregion + + #region Fields + + private WorkerDelegate Worker; + + #endregion + + #region .ctors + + public FusionProgressDialog(WorkerDelegate del) + { + InitializeComponent(); + + Worker = del; + Shown += FusionProgressDialog_Shown; + } + + public static void ShowDialog(WorkerDelegate del) + { + if (del == null) + throw new ArgumentNullException("del"); + + PluginDialog.ExecuteOnSTAThread(delegate(object delegateObj) + { + using (FusionProgressDialog dlg = new FusionProgressDialog((WorkerDelegate)delegateObj)) + dlg.ShowDialog(); + }, del); + } + + #endregion + + #region UI Handlers + + private void FusionProgressDialog_Shown(object sender, EventArgs e) + { + FusionWorker.RunWorkerAsync(); + } + + private void FusionWorker_DoWork(object sender, DoWorkEventArgs e) + { + if (Worker != null) + Worker(); + } + + private void FusionWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) + { + Close(); + } + + #endregion + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/FusionProgressDialog.resx b/Hyphen/Plugins/Forms/FusionProgressDialog.resx new file mode 100644 index 0000000..cdac14d --- /dev/null +++ b/Hyphen/Plugins/Forms/FusionProgressDialog.resx @@ -0,0 +1,611 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + True + + + + + iVBORw0KGgoAAAANSUhEUgAAAMgAAABkCAYAAADDhn8LAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALEwAA + CxMBAJqcGAAAbxhJREFUeF7tvXeYVVWWPuzkabuns9PBme7pMDP2/Hq6tducUBEzGEBBlKQgoKgokpPk + HAUMmFEJEiRHlZwlQxWhSFVUQeUASKq7vnftvdfea597C/s3z/c93z/j8yz3OeeeulVU7fe877vW2vv+ + FX18GV3yv//972/gf38DmX8DDBBaWu//x6iL732xeACvJ+N+XMsU9+G6iiX34lwFny+5JxF34zxT3IXr + yaiDa5niTlxPRm2ixXwNI8diNfKxiTv+grgd92SOVNr123Bv5kglrsfntdzX8Rgi5Y5l1K9luo+vhXtv + xXtx4P0WyfGteN2GeU2uq9f5mnmdRxf+Xr7PBb/m743e7xZcl+B77HEqMSav63v81zN5eIBsH0S0fTCC + Rznm8/+bGEQp//X2fZLn9r0HpkVq+wDcOwDXOfrjuL8fU9v74bgfrvX1QTim7X1cvIrrHL2JtnH0ohTC + jj0xcvTAcQ83dseI2NoN17pilOhCqa02aGtnEykTnVR0xPWOlNrC4ysYEVs7YOxAhLDjyxglXsKxjvY4 + d/EVxq9exLkKPv/qhUQ8j/NktMO1muI5vFZTPIvXVGx2xzxubouQcz5W8VXi3L/WBvf9JdEa93HwvXJ8 + sfEZdR8f/38VrfDeGYIBFQMEQChY8f96pKL3XI73t5Eq+NLFFxi/wDUbqYLPMS4zkSpYaoJMLMHxEoyL + MS7CuAjjQowLMHLMxzEifx6l8udinOMjlT8b1z4jOjaLUiZmEuXNwPl0SuW5OPYprk2jVO5UXJtKlDsF + 51NwPhnniNxPXHyM8SMTlDsJow3K/dBEKvd9Sh21QTzmvodjiXdx/E6II3L8NqWOTLRxlOMtHCfiMJ+/ + GeLwG5RyUX34dao+8jrOETLysY/xOJ6A4NFGtRnHYbSROvxajVHtXrPjWB/V/ngM3mMMrmeK0e46j3FU + y/khdx2juXZoVIjDOObAtWoOczwyhH9tJF63wa+HcUR0rfoQn49wX89jhmDApAMET3aezBfOElWfQ8jI + x4gLbjSvJUPfe5ZS/nW+ruMMziW+xjHHaRen8HWncHzSRRW+ZyWlEFSNuFCOsQwjRymul2BEnC/GcaEJ + On+CUuePYyzAmI8xH2MeIpfo3FFKmTiMOITzQ5Q6exCRgziA2I/Y5yIbI+IMxx4XuzHuotTXiDM7Me5w + sR0jxzZKnd6KcQviKxunN6vYhOONIU5toBTH6fUYOdbheC1GhBnXqFiNY8RJjlWIlWasPsUjxwr82lYi + VphjG3gI+cDDqIoDD6CTCB51nPwc111UYURUVy0zkarCQwpR7UY5tyMeWhyV8VhdiYdYlQs55lEHv16J + hxxHFY8L3eiO/flC/PkXmDD38FgVju11ifnRcXXlfHwdX7Ohj+WauV4xD68hMBrAACBGZqVJLAGIAYmb + 9AYYNYAmI1gEPElwyLkFSMqAQ4OEwSEAqcLrDBCOChxX4DUABOBImWCAcBTjWpELAcdxAKLAgeOYAQid + swChc0dcABznAI5zDI4coggc+4jO7HXgyMIxA0OBwwODAeLAcRrg+JrBgTjNwNAAYWA4cJwCQAQUDIzT + AIWAgwHC4EBUG3A4UJgRYDDAcIFzAUYAhAYFwGDAweOXmNwOEHwsAOExAgWDAcA4aYFRfdICI2VAwtfk + XAFDgwPH1R4UOPbAWITrDgTmdTkWcPCkt8fmPgMCBosbcWxAYEDhQh1bgPDkD69bQCWAUcH3AAAmBDA4 + ZlAwOFykDlqA1MAgkD8aHBcFwMUYRb8WAyXlGYSB8rUDCrOIAsiFkxYghjmYQQAQZhATzCCWPRggKQDE + sgeHBUcACIODg8EB9jjLABFwBPYgwyBgjzMOHGezcMxh2YM0c5zZQWRA4liDmcOAwzGHAYgwhwMHA4PZ + QwDCoDDg0JGBNZgxDHM4QAgwDHOks0W1AoWAwzOFAYQFRbVjCQGEAQGAYYFgxyRTBIA4tsBkrzYMYpkh + Yg3PDg4QwhIOHNUGEBoA8XFgC8sYgUEck3iAXJwdqgGKCBAODPaaA0bimpFf3yyx3KQWsETyKiG9agRR + ZgZJGTay4IglloBEJBaPDiQGIBYkzCBWWjFIwCDnHUAunHAAYYnF0uqYBYeXVwwOK6+YPQjsYYFh5ZVh + DcgqMtIqgMOwh5FVLK8ADAAkDRynGRwCEA0OBwojrVhSZZBTjjWCpBLmACgYEIY9nJRiYJxywJDRyykn + o5g1WE55pmDpxAzC0klGyxYCCmGJFFgjBkJgCwsGkVJWPhlQSDigMEPwdQMCzxaWJaoNG/B1yxD23IHA + yaZqc10kVZBOwhRBTlnmiKSSsICZ9IolGAwZwJGqmBuAUumODYO0rEligUF4AjMwJMRDMEgk/kJmsWDQ + Eo2BEQBiZRYDQ0bHImAQ40VYYoFFjMRiqeUkVvAgFiDMHin4D7qg5NU5K69SLK/Os/c4ovyHZQ8GCMsr + AnOkjKzaawFiGITZw0kr4zkQZ8AaHJ41HHMwQMAcFDHHRpwLQAQcgTGqtefQksr7DJFUii3SQBFklGEM + 4zOU1wAwDFuwlHKjeIvAFMweSZ+hwWCPWT7psLKIr/GEl9HJJjPpRTLFbBEmuAOHsIGWUAlPEcCR2UsY + r+HZQsklkU8CDvYaDAo+x8jHEhYsiIPDKbXpYgC54CZxEiDRZP9LWET5GA8SAUfNRp2lVgrgsGGNupFY + 7EFg0q33EInF4GAPEgw6m3Nmj5SRVgwQgMMBhM4edubcGnMDDu8/hDmS4GDm2FmzrBLPkQCHYQzDGg4c + LKm8rHJmPGnEvc9gprCsUa1B4Y8tMIKkYmZwrKGkVOQxnITybJEmowQkARyGNZwB9/5CMYVlDwFF8BTM + AhYg2kuwj3DskBEMIqUymGkz+QM4vKE215Rc8scWBN5zCCgAgGoGgQOGAUUUczxALuJBMHmNtHKT2Mss + Me3MLv9T/yHvq4GSyag7s+4YxMorBgnklclkWf/hDbphEEirCzZ7JfKK2YMBwubcZK8ka+XlFWeuWFpZ + eWWk1dmYOSjKWLHfUNkqI62SnkN5DZ2h8n5De42EnNJSymWnaspKVYvh9oAQI66zUelSiiVUekaKGUIB + IxMoxGBrQLCcikAghls8hUgkex5nnLSpFgCIbMLoQRGMtTfSCckkWSjLDI4lDFgcQwgoHEAMi7jXDFgq + AQwDlDlUzQxiJNbNySwWindco2AGMewhTCLnIrucZKopHVxjGjjOYqWne2OZlTIyS3kQMEjKp3mVSRd5 + Jendc0jvQl4Z9gBz2PRu7D1CWtcBhNO5SlaxKTfAMGE9BxlZ5Qy5kVQcmdK4LnUrnsOAhNlDscbJNWCG + dK9hM1PKZ5j0raRrXUbKZaaYMXxGymWpvPl2majYfAMYzmPEfkKMdpBS3nSLTDLZpYR8cn7CegjrI8RX + GGNtWCSZWVKGu0KyT7GPsBkp/fQPDCHZJjupAxOYY3cujCAgsNcBAAGBB4YChQcJAHJomJFYqYwAyf/S + AYRBIeGAId4kSv/+pUwiPiRTXcQySErVQyTdyxIrxZks9iE+i+Uklql/sEFnmcUGnVO7jkEMOGz2KvIe + zndYeRVqHuTqHWQyVmLKXa3DeA4Ol8Y1jGHDeg5d31CSShjDyCrLGlH6luWUAYmTU8qAB1A4cFRhFH9h + GIN9BqdktQGXWoZKy/pUrWUNyxzKXxgJZc22+ItQl5D6hEvBKkD4LJSTTCEjlTkVa+WRfc2wSMQOAhAG + BY6VmTZ1CW+kGRQCFiWTFDAsaDDJRTYZxmAgODDwsQp5zYzuvuqDFwWIMIgCCEstn/rVE/wvKSDWnO5l + sy4ZLTbrDBALkkSx0AAkZLDYg9g0rwWIN+guxUuSvTLySmWunLyymSslrQw4rO9gcNiUrgOH1DnAHMRZ + KmfGM6dxpfCXTN0qcMCAV5vUrctQGbYIxT5bu7CskZ6y1RJKslFsvjk1azNSobgnadognYQ1rK/gLJRl + jrioZ4239hW+NmGyUyKVhB1CFsoySHqhLlmks8U7m2WyTGFBYcCgmMPc4ye6AoYwgGONapn8fmRZJaCw + wNDncsxjdQU6LHy4rzk41Jn0pMTaxhILDHIeT3Rhj/NKbons8tIqOfkvzia2uq4BpqvqkvYN9RA26V5i + sVE3KV6b5mWTbmognOJ12avAHtagW+/BwfKKs1ZI7UpK15hzl7FS4OBULilwGFllquNbLUBMhVxYQ5hD + VcRN8c9JqoyVcAUMkVOSpj2VqHxHNQ2pgMcVb8lEWelks1GWKXjyZ2ALqV0kq9taQhkgKDklLKGq1+l+ + QoCRKcvkQCB1B1+UE6CEVKs13CKX3LGZ4OE4SCn71GfWsMET3oaXUwYoAIFhBwuG8Lq+rl43AHk6g8Ri + gLDE8gABUAxAMrCJAQunfbVh/6bMln49kx+J205sy4l4EAGIbTOxJt1mr1KuQBjaS2ztw7aVWAYhAw7O + XIV2EiurOGDKv7ayKt2QSwHQpnEtc6jKuK5teGCICZcRjGHklE7b2tStbQ2JPYYt8CE968IeB2BYn5Es + 5KVnoEILiJVPtvXD1iisrNJAEDmVyDqJt/CjklC+ep3uISxrxD5CGMIDwLyuJr8whvYT5thNeknDegAE + QBhgeCkV2KO6kkHhmALH5txcyxyGURxAEiYd7eaGQdAweAFPcQaJiQRABCy+NqKMuwfNN/mSdBax1XXJ + ZtlayFmAoAoyqQReIf/MNso7swWx2cbXmzBuxLiBiuARKpGBOmNaR5w5960lnLlC35X3Hg4gxpRzUdBW + yrneEUsrXR3XmSoNDin+sQEX1lCgSLSKhB4qVdcQljApWm3CnZwS6WTqGK7abdK1oe0j+Ir0FpDQ7mHr + FAYUenRZKJFRpkjnCni21UP5hqg2oVKuKgUrfU2Rx0gr0MWZJW+4xT+Ip/Cs4FKxBijOcCsJJYzAk9se + B6bQEorBEUsqAclnAAwHn2PMzCAOIPkAyHkHkAsOJJpBtHHXIPEG/pvAkezTiguHXDQsw5M/D5P+4Nfr + KPv0F7T91ALafHImbTr5qYppOEZUTaXtJz+jPbgn5/Qyyv16NRVBBp3htC2ndnXd45z2HuI7GBiuGGik + VaIIGNU4BByqvuH7qZJ1DccavrEwmZ1i0y0GXOoXrsDnq93SEpKp9UMAkp6atcW7uMKt2UKDIa3fKa2C + rQES6hO2MGelk/gJX48QOSSG2ssjm34VSRRnohwDqHSrffIr2RTJJWEFO+qwGasMDJEBINUAhAUNjy4u + yiAaIEZqCUiSbJIhs/UX10ZCZV23nZyFtziBp3r26eWY/DNoTdXHtLzyPVpa8QYtrBhLC8pH26hwY/ko + nI+iJRXj6MvKN2l15bu0AV+zHV97+PSXVAbGsb4jIa+4Wm6kFQNDwGFTuTFAkrKK6xs6S8WskQEY0lzo + GwrFiGeSU1ZKxW0gYrylQVB31TpvwXUKRGgOdBLKVbeD0RZTbavZUUpWNQCG+oRt+pNza6AFGMFYR20b + rvbgs02SgtVMIPLISSZ7r5NCfgzsEIDhfIKRRvZ+Mdc1sUGm6zz5LQgcS/jRgkIAEhjkqYQHWcIMgoVK + HiDMIsIkGBkohj2Ugdf1El1MzGjiz0Ut8NIObwFylqqQnj1yZivtOLWYVmOSL64YT3PLh9OsskE0vawf + TSt71UZpekwv60szywbQnPLBtLB8JH1R8TptrPqI9p6aR8dPr6GzkFGmWs6NiGzMjSnnsOBgU04eHLp1 + pAYznij4VbsUrm9HV8AwHkOZ72olpWzreWy60/ujEobbASOkah1TJDtkvZSSGoUU6eLahG4Tt92vcRds + aPRT7Ru+30mkjxp1ylVXqB0zGCMd1SXEXygDrc20MdgX8Qv+Xi2XmFFENsWTP/36LICDg4Eyy7KIYZCn + koVCB5BjLLHgAUxokIgncUwSeRPnKXThMAObhDUicfbrDCrkR+ExNp+cDSZ4l+aDFWaU9aeppb1pSmkv + RE8c96ox+PUppT3MfdPwNZ+VDaTFYJo1lW/TzqrpAAnkDnyMbmEPDYjSQmI9B0lXbqa2kagDN66G26If + m3CdstWMIT1T1lv49nPpk1JtIFLljop5vr0j1C3sGgpnrlVTYGgAlDbxzFXsjGslRDbpNo1k1TpZnVZF + u1BjkDpFqDt4Iy2m25tvZ57FQ/hJb32ByKdIBjk5JL5BT/w0RkiARQDBY3U5g8KCxEosHB8ckgEgnkGw + mu8cskeZQKK9SSY2iQqJF89oabCcwFOdmYPBMbt8GH1a1scAgwEyHUBhFpmD68woNvhYYiheHwhA9TXg + YKBMBVD4fD7uYZBkn5xD5TDzJmPlq+Wu1mFa122V3IJDZ6rYhIsR1yZcZ6d0hkoKfgwMAYdtHjQySrJS + vnlQvIUe09dcBBnlahTGWCfBIdkn3doRZ5wsW+ieJiuZbLYp7mmKMlCqHuGr014ySfbIsYirRURZJaP9 + RR7ZrJJNvVpgBEkEQCi2kOvaJ4iZ9oAod0wRjTLxhUX0OQBg7rXAYIDIsQEOAybHAiRRSReJBYCcB0DO + CYvoURhFZbnSJJeY7m8y65Z1ylGvyD69ErLqE0zo0R4cn2KCMyjYfywHcNZAMq2F9LLBxxyTEB/SisqJ + tAySbEH5CEitfoZpGCgMksVgo42VH1AuDLx4DuKUrmoh8Ws5zCInLaucGU/LUK0xFfCwgCmTxxDGkOyU + KuwZWRWv1gur9sR0S1pWme1E+3i0uEgvMMqwVsIAQbJN7CmSfU5SrTbModo2dF3CyyeRRRnYIZldSkqk + pFxyALET3kojCQuGhD/QZhoT3T79RR4FFhBWEDBY1nCgqJjp5JScOxYpn2kAknIAoUU3qV4swyDYJCHf + MQizSBpIFEAMMFSWy0suSfsqE19DazyndvMwUTciQ7W4YgIm9ADDHAyOBRVjMPHfp69OfWYyWQe/XkOH + kNU69PVaxGobANahr1dQ9qlFMOYzaR2AsKziNZoNxrGSrCfNwfEqgGxP1QyqNCwC5pB1Hbp9xGerdPFP + eqhCq4hds+HAoddm+J4pBQi/tDUsUOLVehmXrEar8ULNwq+ncAuMbH+TTsVqlpDepsw9TqFNQ1es5cmv + QWHTsNK/ZAtwqmVDt2t4QASfEBghFN9C3SGYZQ2KCAxm4iOEFZQE0oARcESSyYHATHRhBDk2rzE4LEDs + 1wEUJphNGCAIzyCZAHIMmyWcQ3HOBIOE5VYSLA4oOsMVMUkCHH7Jbiy7TqGXah8m/iqwwRw8/VlSTYUJ + nwMZxeDYfXopALSNTqKn6jwq5hdQOb+A4uB5FAcvoK3kArp2z+O1k/AXRchYZZ+aT1uqptCy8tdoeinL + tO4YX6UlYJHtYKii05A9vPDJp3OlCJiUVRtQhhFJ5cCB5kK/si9a1WdTtdxZGy9SEsaIZVRy2Sr7DNMD + Jb1QpsKtfIUsLooyUNpo6xZwkUku6yTZJdUOHqrUARCh6c+1ZST6lUKjn1SoJY2qq9NiskUySV1BrusM + UjpLMBjChFcSKMEQRgIJYDIcW0/hJj1PdgcCmfzWiFtg8DUJAxIHkOqcwU5iRQDBvlNbwSB52D3kGwGi + DXxNNRPXDRz1cMWyqxT1jl2QPp9DIln26Gk8xzKkbLecmmNqIRdMm7ttWIzbTFwPlmlv59aSXKo6uxsg + mUcrK9+iuWWDAbYe8CW9IL2G0Saki/PgcwI4uIVE0rjJ+gYX/tYBJM5rZOydsh7D90v5tRi2eTBUuy1j + xE2CQT7ZQl5oChRvIavqrG9IZp7c+mt0w3rv4NZb+3USqlkvuTBIAOEb+FTxLRTd7OQ3HsFVn62PSGcK + a6JDujQquqVdV5JJP+UzTHqRRR4U5n6RRzy5rWew19QEd2xgJr9nDPe6Bo+8boAxwwMklTPImfRMADkm + AEFrhweKYxNhEiO9GBjiT1huuVRwWuVdquZ6VeE5sMBJOg5zvgUTmlO6LKtYXrFJXwVvkY2n/UnuzkVF + fXf2V9Rw5iN025yb6fbZN9EdGGvPvYVqz7uZHlhchyZ8NpRKClHkQ2HwGGTXpsqPkO4dbsDBIJkLE7+m + 4k06CLN+lrNTev248Ryy6o/7qCxj2K5bxxqeMeI6hmENvQGC2wnELGM1XbRSx3C+wrR4qAZBv5uHbGoQ + UrICCkm9pkxruJNOfvMB3QUbt4Rbk61YwqdcQy3BNgKG+oKXVC5zlGzHMNLJV6nTvYGWSebYS6RglrVf + 8OaYn/ruaR8ySk4ORVkmJ43kye/lkWUCwwAeADM8aDxIGAQGSG4098oxA4SPEQYgLZDmTQMINmczAMFT + +xwDREdCdkUeRaWDo+Kia1Nx2a0z58uoGG0fx/CkP4R2kezTq2g9quPzIIFYWnGwUd9wcjrlQlpxVf3U + mWJqOOMRempbI3ps+33UaEddary7HjXJfoia7XuY2h1qSq02NqMPZ44xPVfFaD/Zjur6UrwPyyuWWbNg + 3JdDdmVVTaOcqlmUe3IeFZ5aQpWoT1RnzFJpOVVDW4hhjOTCpLigF1jDMoZdi616oPyuHaow5wy2pGDT + t6wJQLBskahFyKIf1b7tFwIl0qu2T0kiVKRDajW0X+hqc+wDrBwyT3LnHSw4rHn2LOC9gTXC/umuJVFC + +siE9+ygnv4BEHaCW4ApAGiwmOsOAAICjNWGNWxU63sOXgwgLLHOAiA+AJKzLrQvEX+STAlLH5eYeFdM + LEXLx2F0w26Hod6E1pC1mMQr2FRDDglApiG9O798DEz7DCOvGCAlp/Lo5jnX0aM776Pr1/831dr8Z7p9 + y9V05/Zr6a6d11GD/bWp7d5mNPyDHqbnqgRGfCeAsAzvM0MAUtoXgBlJX5aPpdVIBmysmEjb4HGyKj+h + Y1VzqOIUnvam+GdZw2andMrWtYTIQqVoZ5BEG4jsD+VbypkdnIxymxbU3N5hvQNnmDIBw6ZYk12t0pgX + KtO2GBca9kJaVfcpSZo1eIX0anPmLJIurIkZFm1v06YuG+SNcJBCovXthFZeQTGAeeJnOPfXHINYQCgG + EBBgtBOeGScGggXKdAsKjB4k7j6+dhEG6QsPsgSAwNpvEw4ozCQCkrPMJFp+uZqJz3jFma4z50qoAM2A + WWgfWV/1KX1R+Q7aRl5DHWMknuyDjfdg38HsEQME9Qk0L5aePka3z7mJGu6+n24DOOpsu57u3nEj3b/r + Fnpgzy3U/NAD9MK+5jTqo15mE4bSr9fTDoBvGRhEADKd6ymIWTDuc/C9FiCztRQSbCUAs6niLdoHoBRW + zYNiZAllwWF2EfEVcJFSdoES+4t4a5w4NesXHvkWcl3NluO4JhGtmfCtG7KZGbOEBYa0dFuzHbdqhEY9 + a6bTWzL0hJeWi9g7xGlWmzaNU6QZagei/yUbJB5AZ4jcPd5Ay7no/wwT3Uxe8RDeIwgo7MTXLBCYwALA + hgWBAYwDBYPEfp0GCh/bqK5ZYjFAFgMMaCmPQOLAwtKLgRIBRPmTtOLiaSr4eg9YYyGtgi9YhJ6pz8qG + GiCEKjnXLGxkBkg+3TH3JmqcVY/u2HoN3WPAcTPV21OLHt1bm17IrU+d9rek0ZMYIAfAIOkAYZklMRXH + 0+BLpuP7zQVYluDnWVs+jnZVvA+QYGL5deCujiFVb1e7SPMVbqcPuzeUKt6pPZ/iXf90oS5sZOaNs6ta + +4Y+SbFKi7djB2uc4wU/wUQne47SWy/EIxjN73S+N9qukBbSoKFeYH2DGORgggNrWFYQIITskTLBwgAy + ic37hSe+TGCZ/Pa1IIMsO7jJLCDxEiqAI2IInvz4mszXBCwXBQh2St8KgOQuQksG1lucAUg4PFgYHBlY + xfsUlRJmoIBRSs4cpKxTXwAckyCjRpqeKg8GPM1tlXxwFCKxcrnCjTpJ6WkGyM3UZO9DdNeO6+n+3bfQ + g1m1qNG+O+npg/dSj4InqMeBNmAQbE6NdG8J1n3vqJoMBhmF9+0L1uDoY4JBweBgkEwp7WbGmWCWBTDx + a+FR9lV8SOW8Is5vn2N7peJdBm1LuVS3Tet4GlPozFOiAzZaPWeXkMbLQ0OLhl/8E/kEZ7K9f5CUaQBB + st8oNswZimm+gCYV51AXiKRQ9NR34JDUqJnAaqK7iZt8ymd64tt73MT2EogndGAJed1IJgGLYQcBikz+ + MAojWBZRDMHnDmCeNSo+xT2f4mGByBloTHoqNukMEOyUnicAYZA4oBiQaLAooHh/IrKLgVKF2kQe2s/X + 0vrKacgooS7hwMHNhjMhcfjaUmSWlsMLsBfRwR5EA6T2PEipnPp0z+4bqR7A8fj+OtTy4H304pGHaEjh + 09Qnpx0YBB4EXbolKCDuQM1jOViBjflyyCgbY2hZ2XBaCEDOxc8y3fR3WaAwSJbg+qbyCXQMP68t5sGA + 60VJLvtkslC+Y5ZNt+ztJNKppoY/Z65NwS1prlVlWgpv0r2ayBqlKpPpVJdNchmjUABzdQVfX5DCmKsT + GFMdvEKaEU5IIMkEiW8IKVRlgBMewD75nc7nCWkmvJvQaoIGgNh7zKSNWCJM7nQPEYPET3gDCp70dhSQ + hHMHBn8fzg1IxIM0T2axHEByFwIYWO9tQkCSAIphFgEJRiO9dOario6jILelajYq22+YXiojoQCOuSgI + fo7+qHUw0mzYs5DO5VYTzmiFWKkAUkB3zr8VgHgUnuNmehzM8czB+6n9kYepW15DGl/8HA069CKNmtTd + dOiW8PvA62Tj/bNRNMyunOziY9pR8R48xxvwHmMAiCE0G6zCIJkKkMwt7Ucry0bSXtxTBT8Sqt1u/bas + 0/Z7x2ba+S+kXY2ZdtvP+HSrX+vg0q9uGaheGx23ascFtXRmCJM+6ifyTXhWCnm5482zlkHB0FoZI/UE + p9NFr0dPc5nE6qmfML8+O6SkjWj++IkuPsGBQIDj5JBmAfN050nvJrJMfHPNAC9Mevs9FCtohnDXo9fl + vT2DXBQg2G/qawYIxggsDjRnARhmlDQJZoGSAniOIn26vnKKkVa2Qg6TjKf055xBOjmf9qPDthgSrOpc + AeodhYgiOnkOwaM5x0ZwSA+Xni6guxbUomePPk6P7bvDgOPlI49Qr2OP0+CC5vReaQcadrgDjf6gm+m1 + qkIdowp1jCrULqpguqsg8aqQdaoCK5Tg++ZVzqDd8Buby183rMFMMrmkKwx9TzDMENpZ/hYV456wrWbY + qMBsnoxIbowsG5TJummRTNKuEXbMCNXmsD461BO0QRZzLB7BplFDFVk6UUX7ixSSDFCU8RFZokyvfZrr + ApnS+KL5lckVzS/G10xAzQKGIeRp7jJEarJrUJjJ7P1AeMLLpNajnfwy8S0TJK/VONEvAgT7HtPwXhz2 + WN6nOmcAJFZzSKwbdS/WffjQl1fhQRYAHKhSn0F8zUBhkAhghFkSDJOQYF+fyaf96E1aBek0G5PO9Ffh + ab24fDzWaUwHOFbR1+cAAN+qIq0pttKuPzrhAgqK98yvRd3yW8Bz3GPA0TvPgmP08VY0pbw7jTjUkd74 + 6FVXJUeFnIt/p1AdN+0iXA3XregrqBI+Y3fFu4YxmEWmlHQDu3WnRaUDAJxxVFAx2S8u8vvGRp2wuhYh + niG5k4a0advUaliok2GBjmun0B2m5skv4bJDUSEsaYRV0UwKXlYGSfYmwQhO/vgsj9fosWG1mSGl33li + e4PsJrdIEzV5rZRJan8tdcKk9xNTP8UVKGKA2ImcKksCRya8Yxme9LgngMmBwV2LgYH3NNfdyB5kIzNI + RoDMBygweRkkyTBA0azigMKMwnLMjGVUfvoA7T65GAuX3jILmbiFhMfPcb775BIqP4NNFGDky4oKqNey + rvTU0mbUamlzG8tamHjGRZMFjakePqasX0FLeunoQ9T7WGMaVvAUjT3emt4ofJ6mV/Si1w/1ovsn3Uod + NzehjlueoI6bGiMamXhlU0PEY9R1W2Naue5NOl8JfwHjnQsQbIBHmQ9pNQ0AYZk1D4Z+XdkoOlz+AXY7 + tV5CtqbxK+j82gddZwgt3PHyz7jaHDpPQ/epL7Ip+WNbKHTrhGqliFonNAu4tKaZvHZSe4OsjoNZDdJG + PIA2skGzy1NbSRjzfvqpHiZrcrJ7WVTjhLdfK+9nR/tUNxPWP93lSa8AoJ7+Bghlwgjpo39fvgchjGG/ + lw3PKI5BMgAEH12WywDBJmwmGCiJYGYRoBgAOYbxcqyUTpzaQVurPgNjjANzcAtJT6R3h9BKSJv9SKN+ + fRbvjQJjj9mdqeGaetRsewNquqMBNd/1KD29uyE9k9UYxb8nqf3+ZtT9YCt69dAz1PloIyOrGBzjTrSl + twpfpPdLXqEPEDOLh9D8ygk0t2gCzTyBqvzxofTR8QH0Tn5vGp/XjUbmdqIBRzrQi2tb0LKlI4y/OA4z + vhWmfDFY41M265BZn0EGriwbRvvK36bTlZiUxkzLzht6swALiLBeIVNNQYpjqjlOmMA97e16BPeU9/n+ + ODvkc/a+KBabXZ/b95JHwJGe3cmU1QmTU0/6GACx2dUTNAZJEgwBRO6prxjCTsYgczQr2MmrJqw6j8HE + T/z4Pp78Mtn9hPeACPfa958aA0OAklFiLWaJJQDBHrenGSAYGSjmmEcNFgYHzo0Uc2FAUoymwI1YgzEV + 6dNRZhET+495ZSPQjj6ZDkP2VDPTID1845yrqfGeenTr5qtQALyO7t55A923+yZ6IOtWqr/vdmp28G5q + d7Qedc5rQH2OPWHA8RrAMbG4vQHHhw4gH5R0AFA64PoLeL01DT3egvrkN6YOR9GicuhearCvFtXLrkVt + jzxJIya1NM2BpZAFO+FDlpUOgv/AakQAZCaA/GXpYNpT/gZV8C8r0Zxnm/ecRHLZobjlOoAitD8oJnDN + cVLhDZVg9cR3DKAnvtb9yZRl8AbpRtVMOvN+sRzJpNmDwY2lijzJZeLZMWj28PSVJ788/YUZgs5PTtzg + ATI8+dWkTrmJ7L+XYwErieRrMdnLpppJX+1G/jp77FjDswcDw93rgGLAYl7H9Zz+8CDNEh5k8b0ACD70 + 8ig+2+80AwSNgjx+jZGBYo5daPBkYJq8kxuQLRKAcI8VF+WG07qKj+gw2sYvnAWQ4FvuQPr28T11TevI + PdtvpPtQAKy7uxbV33sHNcu5m547XI+6HH2U+uZjYhc8DeZ4lt4uam9Y48OSjohONAnxdtFLBjhDClpQ + 59xH6JlDd9Ej+26gWrv+i67c+kv6zbof0S9XfJ8e2HUbvfZxGyObSiqm0I6yCQAIViM6gMwSgJS9DoDg + F6Z2uzBNdsnVZ7KeQGoBrh8oKnCpfh876QMYIsMb6fWQntSZmngSh6d8ukTRgAj62kwwp93TJAZrcD/Z + wvFFJ7F54toJGO5z52lPcpmQcr+dpDwh7cS3r8uk54ltAcWT3D3t+Zq57sBgvod8vTBCuMcDRUDiv4cG + iAKKAKxGgHzFAJkDMGDz51MIHg1QEObcHXugOOAwYAyALNvkVTFApoBBRprUrgXIsACQM8w8pXQnAPJk + 9oPoq7rOggPV8fp776TmKAA+f/hB6pL7KPVz4JgAcLxT9LIBBAPjPTDGm4XtaBTY4tX8+vTC0TvpyZxr + 6b69V9D1u35BV2y9jH6x8Tv0szX/SD/64m/ox0v/nu7dfguN+7i1adkorvgEABkHgAxwAOmCYqJjEACn + onxyaJWWviE92VWPj9fuGfL8kcH1IPhmaSLa2z/BE1kXrZkzShJ5Wsqklyeyfvp6/S1PXpEn7qnrJq4H + Ab+HPGWjJ7xM1DDJ/dNcJqWb3DLhzesyIc0kd09w9T0NGNJAoYEWXjeAUu8nTKJZRcBVXTbF3ovR3FeO + 0QHPjA4gsQdhBvkK1WgDEGy+ZoJBgZHBIYA55a57ACngOADlVa0DQCY7gLDEEoBMAoOsQvKKWamI6sy/ + hZrtf4Tu3nWDAcejDI6cewCOeqbG0T+/CQ0Hc0w40Y7eKX4Z8RK9XtSWRh5vhtfqU9fcu+n5IzdTi0N/ + RtPif1Gd7F/TtTt/DnD8mH616Xt0+ZpL6bIv/56+u+iv6Hvz/o7u/upmMMgzpreopPwj2l72mgVICXsQ + Acgg2lM2HgD5xBe27CQPqcuQoYkzMbbQ5K75LEuQHEnTaTInKhsjUsAbR6Wv7RPaTST/1LRP1/AE5gkc + nuj2jy+TXT2R9RPbTVSZSEEyuQmsJ2jiCZwGAs8IickqkkdJIP9v8SCwkzWlJq0FByYzJrAJDSg3we11 + mfD2Z7bSyl63rBQDwlw376veX58zQNAhnhkgR2YDDNi6Mxmn+RqDRUY+FiC5YweavKo1DiAjnAfp6Rjk + QzpctQJLR/jrTtDdC25F6raB8R2Poa/qqZx76QUwR/e8RjQQadxRSOOOPfEMjTneEv6jMaTWg9Qr7z6A + pw69fPRWeu7IjWhW/DM9AnDcmfVrum7X5YY5/m3j9+jnAMePAY7vLf5runTOJfSdGX9HdTbcDAZpaWRO + SdkkMMhYAKR/AEhJD3iQgQDIa1QJAMXaXWtprbedhPGTWWtgnSEJUkJkRaSf3eRPPvm8pNDgEJmhns72 + 6+wf3U60TE9oecLLxJB7eSK5CcNPU/+z2IlpQefuUfrevmavy+T2kzLxM8rTOrBCeN8woe1klve0/xYB + QPgZZfLH4HA/h0x+Byx/rwNM+BrHHvLzC6AUg8R1EMMgPYiO4LPET+IjyyRO4ZiDz+XYgETO9bG9L69q + FVrKPwaDCECYQYZCYn1AhyuxBuMUNpQGSO5eeBM9e+Qxqrf3BjDHnfTCkfthyB+GZHrUMETvYwyG2tQV + waDobuIumO/bUDi8kZoBHA8DHLdl/YL+uOPH9Ouvvks/XQ9JtfJv6LufX0LfWnAJ/d2sS+iSqZfQX0+6 + hGqvuxktKTBfeIKWlL1PO0rRfpIGkAG0u3QsGGSSexLpJ2+gd/mj2ieWomgzUZMTUCavu8/9UfwT0r+H + nnDh3nCfPEXDUzP8HPK17insmcFNRD8RRFLI5HfvlZyIfsLIkzhMVD+J9eTyT3l52suEFmC5p7abwB5Y + MnHLIGmTk1tA6X62ar5HAKTuteBWvzv/nuF7W5Zx97l7Uyyjo/dx55kl1j0WIIdnYZJjAvvA5s/mGOMp + OXbnfJ0nO1+X13CeX7kaBbdP0PekGKR0CBoC36NDqEOcP4WdDvG1Tec3oNEFPWk8slwTUbD7sLwfTap8 + lT6o6EEfVnSj9yq60PsVXcEirahH3j3ULbcOwMHZqBuo6aE/0UP7f0e3Z/0b3bPnKro761q6dfcf6fpt + /0VXb76Crlz7W/r98l/T75b9mv59wa/pPz/7D3pow7300acv4Bc1mYrL3qXtpaNoKdLQ01EHMRILDLIc + kisLzFKJWoinYvfHC1TPv2z+ZaKgKH9wNUHCEy78Qe396mlo/lj2681r8kfmP5r5w8kfz30PP4Ht6/ZJ + qH4G917261T478ETSH2t/3nDzyA/ozy19ZPa/Ezma9y/yU8uPcnCz2Mno/xbwvcOjBN+xuh3aH6f+t8c + jmUyy89hf2/8uv6Z1L9HASHcEwBvvo+5R/9OcZ7TD1mspsksFgOkOwAy04LhJIp5PhLnVXiNI7rHXcP1 + 4iqs6oMeX4qJZjZPwMSbhSf18rI3KBuFtpOV6NStOkQL539Izy96mtqubErPfPEktfziCXr6i8aIx83I + 580/b0g9draiofmN0H91E8BxPTU5eBXV2/c7qpX1S7oahrz5rvpUZ/G1kGzX0V3zrqU6HHOvoTtd1J6D + NvkFN9HY6S9QUc6b+IV8THmlb9Cm0qG0sATrUJDinQqAzC3pSWuQ9s0pHY8k20e4Dz4EISMf23P+I9iR + X7Ph/lDump1s7mvZzyTeS75GJrNMdvtHS7yvAYSeUPb7B4DIxOT7cN3fG+7RoOGvi77W3a+/h4BU/1z6 + 3yjv4d/HT1T9ewgPBQs2/XPa+/TP4ieqejjI95QHiX2oJH7+xPvo9zXH8u9TP4N/Xwf0cA9+RuNBmiY9 + iABkBiY+dkPHBPahz80xGEDHSX2eQ1UV2yirfDYAMcEAgwHCQFlWNoa2YHLmV+AjFir30fnSLNq/Ywll + fbUAMR8xj7I2z0XMpqxNs2jf5pm0Ydlb1HDp7TSkCIA58mdkqq6kushU3brnl5BVP6X/s+1nVD/7Tur7 + dj06uB01jI39afemARgHYbSxZ9Ng2o3zssOvY9J+SFWl71I22GMl2IJBweBgkCwo6Q3QDKHc0glUXQoP + ApCkSj82waCSSOFYgq8lj+3kt/ebiVwqwLL3yusCGrkmYPTATABLA9aDzwHPA9B/jQVZDOgYMAKyAHZ+ + kgYwh4lov85PomiSymvhe2UEUmJiy8MlE0Cih4awkPm53L/JA9p97wgECjzqoaLBJ8yWBnIBXk7fTAC5 + m2hzNzDI9AQA8FHJVS4q1bFcqzqA1xH8WiU+lAbHZyt3U075AlpTNpHm4Ik8FQCZiok4F8erwCJZZTOo + qnwjUTn2zC3H7url2P6zDKxShnXopfhYs5JNRMVriYpW0Ne5c6npxruoe/7D9FjOf8GvXEE3AxxX7vgZ + /WbzD+g3G39ID2XVptc/epxSJQBAyZsY38I4EeM7mOjvmDFV8h6uoVMXr2WVjKSvSobQ0pI+MOgsrzpD + ZnWlJWCTbaXDqBDsUl36ISY2Amaej6tL4UnMMYOGwcPn9rhajg3r2DCvGTDwuR0N2PjcfE0MLDnXIBSA + Ra95sAoIwxgAJiDkCWRBGgDlQJuBGaP7MCENwNwYJrR+L5mgbvI6cFlgOsbzXx+YOAl0O1E1wASkGuSJ + 76UZ2kkkA27PvsI09lp4GCSPhZmVCnASK5HFYoB0tQAxk12DQgDAIweAkBbY+xasYKJiL+WVL6ONMMKL + S0dg8mHzBKRSeVxSOpI2l2I9OLI+R8vmU37pIsRCBI5L5lJ+8RzELMov+pTo+GIqO/oxPbGhNuTVvXRf + 9m8MOP6w7ScAxw/pX9Z9h/5l9T9R3V2302sfNKBU8TgqLhpFx4pHUh5AsLtgANVa8u908/zf0A3zfk03 + zP0VjVr/BK041JsWF/amOQa4XUzw8cqSfrQHP29F6URM4vcxoTk+wDEHg4WBAm9iAOPCXEMYkNjjFIMJ + waDi6xIGHAY4DmgOYAI0CzxMbgMgAZkAzDJZeD1mNQNEB55TJe/TpLyX6c2DWCeztzUNy3qKvtz9KpUd + mUjnit37eWZMspsAV7OgsKEFngW+AE2zooBA7rPvEUCq30eDOJagQbbWBKoAqMDCAbhaEvv3EsCrh0UA + Mr7WvO5A5RnkBtXNu1gAgonpQaDAUIWJz8HAqOARu6RzAAwmKvFhNBUSWVRevhYgmE6rSl83zGFZpAfN + LsEyV0zCVdD56/E031TyNm3G034zjjfj6b+5+HXEBMo78RF2eZyDP+r71Gjt7Sge3k7X7f45/Z7BsekH + 9C9rv0OXLf97+ucvvkX3ba9F4z54hFJFo6m4eARtL+6P9+1H47Kb0d9PuySKFq/fRm+ubEPT8zsbYDB7 + zAB7LIK82lAykI4ig3UBEqy61DJOCpMtgEWOLWgseBzTGJC4ax4oAUgWPA40DjgeRMJOBkACLAGSZi7L + WsJSmq3C8ce0/8RY6nUEjZs5jej5fY9Qy6wHaNT7zWjr6oGo9eLfZUAoYLPHBpQOYBaE6nXFdgKOTOwW + M5hmyJjJYpkZABSkZsxymv0CeDTwtCxMMmoAq/35AsgzgcvcYwDSBCY9AshdYJAuRIemOnZQjBCBASAw + wOCRAZHlAnKpgoMl027Q2g7KL1sCtnjPAGIm5AyzCINkegn2v8IEno8JuaAEqwt9DKSFxQNoY9EYyjv+ + AbYgmkFlhyZSgzW14Duup//Y+kMjqy5f8236yfJ/oO8v/Wv6/gIuAN4CBnmIqotGgEGG0vaifrS0uCc1 + W3drGkDqtb2W+s9/kj7Kf8WDYx5+ptX4ebJLhlMJgFvNkgzSrJqBUmIjxSODJooAGGYbAxqARINHGMfI + NcU8GY8FHErSWbZxjMQsJaxkQCXyjq8H1ll6tFcEjid33U0vtb2XVizoiW4hC5AgD5UcFN8lktDJwSAX + hd1kcip2Ux5NS8J0f5b0c4GRtM9Lk6CRDxRAxL5Qe79q+L50KRezVmBBxaL8dRkBsggA2dTZAsSwggNA + ghksINg7OEAYD8GBz9kwwX7CeoqKstW0v3QGrYWmX1AyGCBB24mpWrPuZ7BgAwVMTht83J3mF/ejjYWj + KQ9POsqdRmUH36CHVt9Md+y6kv5146V0+dpL6Z9RAPzBEhQA56EAOAsFwI2okDNACocBIIMBEGzzU9yD + blj82wggPxj5LXqg3bU0aHlzmlLUyTDHfAOOvrQDP19ByVgAAfLK+Je3MTHfNqN4GeNnDGgYKG5klnGg + sWNgHHNsGEhkmgZPBiCJXDNsJHItSDkBmZVwzh/hPuuHAjtNPPC8Zw4Gx4PTbqJXnr+fNq/oj492FDno + vJT2UMZfCQgtcETuWcnngOW9lWUdDyAHMPFdXlKa99XAUL4sApb4NsdqGRIjQX4GuaZZzQPLMWDMeCIH + Q6LEs5P++ZzEihmEAbIZADk4JZJKBhDlDhQCDAZEhQKEN9kw2mAOKsOeVsZwb6Wi0qUovGFHdhjoJSX4 + yAJIrJmQM5+a7BGDBGsxXPC6jPnFfQEQeIiCt9H28gmV5Uyguqtuohu3/Bddtvpvjaz63qK/pm/PvYT+ + YfoldOnkv6M7UQB87YN6AMgQAGQQANIHAOlOP5/13Qggl/f4AT3R6zYav6kNPEc3yKqeAEcf2lk8iAqK + R9NZyDtv8ovZ6HMAKAYkPFrDz6NlliTLJMFiZRqzDoPHehoHIABHji2oYhCF84TX4fsUeCImcjKux15k + /CCrGBwNtt9OD4y6jgb1foz2fzXceSXtiywgDMicBDRg04mHyE8F4FhguHNhG2EyAYtiNivjVCLDAyoA + wmcOBYQCQH2vA2oAQwBcBBA16Y2/M1JSgBokpWYrA6icPkZiUSSxDIN0AkAmB4aIWEIAoVhCA4MBIQFg + UBmyUchIXSjFh2yWLKT9JVOMz1hVMoY+Lx5Oi4sHAwz9aS4AMbcYa8N5VV8xAILJvfHECMrLfwtV/Y8A + kPF076rr6U8bfkvf+eIS+qdFqJDPRoX800vorz6+hP72vb+h2wGgsR/UpeoTgwGQAbSj6FWaVdAhTV79 + xys/pfajH6Cpu9rDkPemjSyr8HMcLx6FlcWQVgyQ4jdg9lErMQGAICyr2MyYgCXl2MWc4zhkyxyAwDCG + bVxYicZSzbGMAUg6cMTvWGkmiYIYQJI4YF8jALHjB1RV/HYEjrpbbqGH+l5Pb415inL3jDWeKfgcx0Te + R8VyLkoyeJA4WSc+KiEBbULCZfe8ZHPyT7GVv0cDTGcAHZg8CFUGUOSkzxCq5IZNdCg/5QEpGUQHEPFd + PtsY0vkpB5AEg9RxAPnESibnJYJ8gmwS+eRZwjGFYwsq3QJQcHCqdrNN15ZsQMp2PVUULzHZqf3Iouwq + fo+2YAKuL3qN1sJYzwNIpgIcASDDKffYGwDIh1RxYBzVW3UrXb36CvrRkm/Tj+dfSt+feSn905RL6Vsf + YJz4Pbpn9R00fsI9AMhAAKS/AciQ7MfTAHJT63+nIe82pJX7uwMYAym3eCiVIuuVKhoHIDBAJgAcDJLX + MSLVa8KBBQkED5hilmBWimnQePCo9HJgGwcY8TOGgYKnscCRYECEBIFOEmjWYaBYsAQA7cgf7JmDwXH3 + 5huo0Qs30rT3n6fiHPy7FAOFVLZKNCTAYhMLLsHgJaBjHSfHfAJCwKIkn5nMKptnn+SSjHCM4pMUTioK + aDxrhMSFTlB4oAgzKdaKmC1Kv7sEhAKvlpLm6w5YBskAkI5EOQwQxxIMCBNaOl0EFKUARSmDAjUOE+sN + OGxNYzUm4kqsuVpKZYVz6EThdDpa+DFtgCFnWcUAmVrcleYV9ab1J4bS0WPjARD84Q9OpIlTXqBHNt9N + 9yNbdQ8M+V3wHHUgq+5YczPdgwxX5zlNaPf8tkR7ulF+YV9kwXpS83W3RAD5zsS/oyefvp7GTW9IbZff + TFfN/bl//Vczvk+dltSmvbt6o0VsDF0oYqNugcIgeRPLdfuufYB6r7qfeq28j3phLD04ms4cZ0kmUkx5 + F7DK4r0vUf/1D+HrHqT+ax6iwesa0LbsPmiKfpMu4CmfdxyLyfY9T9OynqcZWe1p/4GhdKoAIARwSote + p8+P49OyCjubtS8c0451plV7X6XCA6/R2UKWdlaqWSkm6ej36dP9HYysEnDUXng1Pft0bfp0LhaT7WxJ + z22rZ15n+fXyrgb0yY72dGjvaGS33oU/4fcJ3kdYyae0nTfKOj6C5h7tQiNynqbO+xrQc9j1svm22tRx + w4P0Oj6ZKWfvKCwjYnkpXip4pP15I2jgJiyAW/Mw9Vr9IH2+sytV5b9D54s/pP3HRlCrlbXot7N/7P82 + f5x1OXX+/H78uyfg341/r2EnnaBQiQrDHCrTl2CwUPx1Mk+n0zW4MkssZhAGCNKrAgxTvGNASIiMAkuU + JdhCA8OAYp0DxhoDDipciViBwGcgnsCH9JxYQieOT6UtheNoMZ76nwIgU4q70OyinrQKTJBVMIqqct9E + 0mAiSGkEffL+U/T6Ww3ozbfq05tvPox4EFHXxM55zxHt7o7P5uxG+wCwVfAfNy3+9wggv37lx3TL8F+n + sYpOA//HJz+ibSu7UdXRkYZNhFUYHMl08fRP21B+1jCAiVkGMsx7FguUDqvr0Len/y39aNa36PK536d/ + X/gTmjS9FR3cOoTOnphIy3O6mknFk4sn2ccLn6X9mwfTl3m96M0TL9C7aO8XcPDqST5/E4vF3v2qHe37 + aggmNH8f7W+sxxm468kAjo1ot+l7JbV4+w7DJAwaAQd7FE4Bcyp44I5mtG3NADp5jOs/wQsFsNhrh4vH + 0seorwzLxV5kh56MwNFg041099qr6KYVWI+z5Lc09fN2VHLwdTwM+GutlGP5tWhvx+h32W9yA8raOJRe + Xn3PRf82/znln2nn+sF0sgAPB+WXLKMEzyQSTzJ/UnMS4PgCb5Qud6ASJsrBBiDsQRbqNO8iAGTjKwDI + JFfVVkxRxp7Cmu4ADJZQIqOYLayU8sAodsAoWgWAMDiWAxQOHMex/y+KgOXHP6VdJ/C0LBqIdeVY9gqA + TAdQlhT2oc0FQygbT5STh8Ek+EUTnpy0fyTRvuFEewcjBhBlYyfILOzEsqcXPtW5Ox3FpNt+pDM8Trc0 + g/7zYbFhT054OX9wwu9px6pudCZ/DCa+lV7vbnwy7Y/XpN91tPHzbnTuOIBUAt9iJBgzAHuWt+iuRZCE + Chx/nv8r6t25Hm3+sicA8hZNz37Bg4MnW89RD9Gb+569KDjGYV3MiPw2NG7e0wATgMZMkpBmzbfcY8BQ + G+CoteHPdM8H11wUHFwvGZj3NI2c25x2rh1AZ04wO4UMm/idXcgQvpbf9hvBceWyX5qHwa9n/Zhmfdbe + gqQk1Iv6rX8k+l026n09PTDtjxcFh/xtGr9+PVqI+N/NTOdAoYqyPpPnABSnxG0qPFwT6SctRS5xwe9r + JNaTlIoBcicYpIMDiGMKBoQJxRZGRomUch7DSymwRhHkFIOjGMAo5GDWEHAsAzCwe/xx7N54fCFy8jNR + 1HqTViH7NBdP/qkACMfsoh60DCDZUjCIsvOGUv7REVRyaDiVHoJnwNb0pVhUX4p2gNIDryJ6U8GBHnTg + UDeAowt9eawTTc57/ht/4T8ZcSl97+2/T7vvF+O/R1PfaUGFAKEFyDjaBumWBNT1r/6S5k9pR+WHR3sp + xkARz/KHuT/zzMGT5tZ3f0dd2t9LW1f2xlMVu71kv2iewAwOfiIP3tA8DRyDvmxOr+1pa5hDwMGTucva + hjTjw3ZUuJ/T0uxVON6lCrCZBgeDJMkcT8ysTW3W1TXMIeBg0A1c1YymvvccpAz+zSrbxseZwPHMiruo + wYDr6bGXr6eGvW6gu979Awk4mDH54XDv6P+mjV/0hdziBIVNIvSB3NS/y5++9Z203+1PRny7hr/ND2j6 + By9QMUDnfZH4o2TngmIt3dUgrUOSufNspLN4mFcMkEQWCwDZyAD5MMEUznQzKNh0s5QycsoxhgGHk1PG + azBzMDBEUqExkSXVcYADsoqZg8FB+dhWJ3825RdgE7cTI2kJinszi1AjcSCZg+NlJyCXjoNN8vvR9mP9 + aEce6hV5fWhHbm9EL9pxtAeiO23O7UqrjnWhL1Adn3e8I/XIalAjQH40/h+pzmP/QW1b3EQdO99Ol334 + j9G9Px/9HRo14BFIoVdReHzNxNfHRtGPpsX3/efgy2jSG83p+N5hkFcsx9iPMEBep5zc/hE4WHbc3+9K + GtqnPlKtA4wkG5f9lAcHP5m1rBqyvAU1bnEjPdvyDurZsR4NX/+UYQ4Gh1TIB/SvT9loxKwutkVNzpht + ONrHM0cSHI0W3k6PNLmG2j59B/Xo8SD12N7YvJ9hJDDTANSGRg1sjIZP7PrCAHFp6AL4sSRzPPkW9kau + fz11f6UevfNaS5r10YsGXLWmXGH+3QwOlpf/Ou779MnbzwLIDDqbUHh4yVU1/m1+Ouo7dFej3+PffSd1 + 7Hof/jaXxn+bsd+lMYOb0KEdkMCcMJD2HnNsW4FCHUdag8T4q/YfKcQav6I7HFyGL6d3DQyy8WUA5P10 + xmApZUAhBjwppxxrsNcwksqxRiGDg2UVM4cDRwHAUYCthfKxOcSx2VSR/wntL5hA604MoQVgkRlF7EXQ + BsJyq6grzS3sTgtPdKelJ8AqxzkAnOPdaFlBVxddaOFxAONEJ5pZ2JGmFXWkRutuyvhH+OG4f6AHG/wf + 6tvlblo0rRVtX9mRrpl6eXTvzwCQwb3q0YHNvQAOpEURFwrH0M2z/y2675/fuJTGDW1Eh7fzhOfslw0G + yHvbmxmZwU9UBgdr84bPXUsfvv4UADXc+JWJ+9EjBeZIgoOr/I0fvY4G965PS2a+TDvW9KFP17WPwMHe + od2Au2ntku6QG9KU+S69l9XGyKokOBouuJ0ebXQt9e32MC2a3oG2r+lHY3e39uBghhq8ogUNfvVRAHio + Nf+uxWYGGFl7jqaTbqOmjW6iccOa0IbPe1N+9hgw+wTDPJ0X3u/BwSzxs9H/BNA9QYcAOm7DYZDcNv8/ + Mv5tftnnh/TEYzfSkD4NacmsTvh3D6Rrpv0y8fD6J/yMDWn/FvwOdSE1UWDVXQtxx4LNyHkW8YDSRVmA + xjFIatH1qhdrYW0wCABygAHi0rSeLSQrBWBklFMOGIY1IKdEUhWyGXfgKGDmwK6NAg6wBx3D4qy86VSU + /y7tPj6G1pwYRPMLexmQTAVILFA6Y9Kj27aIAcOjRCccIwo7GVBMRUxx8YcF/5r2R/ju239HdR/5HQ3o + di+tXdQO9ZV+dB77Z906J574FiB1ofF7AhyjkXmDFwFIuiy7M+09+3Z9gLI29PZm3hr7CdQaaWkNjofx + i27TohYtnfUSVeWBleBXxhxtlQaOkRtbUZMnb8CkakhbVvSiylyWeG/RFvysyd6qp1HwXDKzA96PPZCt + vbT76v40cDy+vDbVf+waGtCzPq1b2gO9beORMXqHPjhkZZsx/kgADF35lAXIlqG+M+BQ4ag0z/Fo02tp + xIDHMYEHYMsCgFOyaQDUH+ddbphDJNQVPX9CIwc0ppxtmNAu4/brmT9M+z3+cNw/Uv3Hr6axQ5rQ1lX9 + qTLvLTqP97t1bpxoYcANfhUFTwBEJFsy65Zs4bGtP8Imie4E1f5j2MdFNWS7kViRBzEAeQlGGC0eYr59 + ZsoBQ+RUEXsNllLKiEeSSjJVwhzwHJ455oE9BBxYe5L7KV3Im0wnjr1FOwtG0hps+GY6bSGxGBTTHEim + FHcCYHQAEMUWFAwOBsl0MMhnJzrS96ene4sbmv+Cerxcm1bNe5bK0UpwAUVFbk25bEYsnf67008hsR6i + g9gCiQEi8fb6Rml/2AbdrqQNSzvReTQHsldJwdAfyusfgYOzOw0GXEuvdn6AdqzuhawXmAZSLMkcnLF6 + uuPt1Kfrg7R+WTdklDjVbFPI2w/3T+utatbjVpo/9UUqP/Kaq/K/TXU33pTmOR55/jrItLq0elFXqjjK + tR7bOvNmwQseHJwl6/T6wwDm43TQTGZbs5mX2yXKVjX84CZq98ydtOyzTvj5sKwAtZoVB7vSyK8a0ZXz + Y3AwSG5vewUk2NOGZYSRMiVHbnz6t2C3+kh6IM2ODgpJX18241vR7/y/O19uGIlloO6qDh3X3GVgASGS + Lm4odZ3YTpKZe0We6fS2A0hqYZJBNrQHQN4NUqqYpZRmDZZSCTnFRtxkqVhWiaRi5oAZ156jgNnDgSMf + 697zsHIR7EG56P06OpnO5U6iE3lv0N78UbSxYCC8B/qpTuATagvxIZyF3WhWIZbE+uiM4xBzTnSmBZBZ + SwrAOjlt0k3f8G9RyyevoVkfNKGivZikxxkcQ2j/4c5p997y4q/ovdcaUf6evgDHKBejaeueTmn31urx + G0i155AWxh8MXoUBMnxrfS+rGBxNUadp0vR6+JUWVJAN+QIJVoBOgWQqt8eUx+APbqO5k5EezRll0sec + GeOq/jq050tXrrSPNH3lFlr4aXvDMtwGk1swIqMhb9n0VniEdlR0AFIR4GCmKQXLCXPI7pQvDbyf3huP + yYyaiK34v0uDDjarMZWbNOSaORgEv+16GT3fug5YsyOAiQIlGGHjwd5pv0OWVlynmTvlJZhvfijYdPX+ + vGHpf5v2/46fsSV+Ru4I+Kb+trjvzcoudU06r93yhYhpBCBpEssA5B1rwJktknLKs4bLUHlgSJbK+Q0G + h3gONuQeHNhS6BjAwdLqGINjmgVILtpb0FbClfPy3DcoL3cMZR1DV+6xQbQJBn1tQR9acbwXLcf69eUF + WDfOkd8d0Q3RlVYf60YbscXotqPdaMTGB9N+sde1+hkN7nkP7V79Mp3DGhFuSakuHEyfbEuvtjdo+Qf6 + bNJTJlNWjZ4wCxIU0vAH++Wn34ve+8r+l5uMVxFnvACQI2CPu1b+wXgOBgfXORoNugHZq7tp3ZKOkCTM + NBNoW37/tDpHi+dvpbGDG9GBr/rTOaS+bcrYpo1nH3g5rX2kNSTbF3NewXtycmAiLc3pnFbneLzrTfAy + DWj3erxnIaefbQNm1vFh5vsLOJi92r5Qmz77+Hn4CQAOpn8f7tFFQF3nuBg4Lv3wr+mKl39KLZvWovcn + tKRDYKTzRZw6fo8+2Zn+8Krd/HeQVk/SAUi7c4XMXLa9JtO9DVpdg5+xPZViZajvaXMtOSE1Hdbx+PU8 + Dgx6bY9mmXiND1gmM4PcQbThRQsQrmeUcGZKpW0ZHMViwsEYmjVM8U+BwzCHklXGdwAcWloxe+QxQNAc + mYvq/RHUX46gxf0IniCH36ZKaOXiI2Po2NHhdCh3MGXnDkD0R/SlbGRrso++StlHelPWkV6Ug82r8w72 + osKcntTj81rRJOY/WIuH/0CzXmtAJfvgF+BzDEAQfVfHvoLvffapm2j5nOcAiCGmfb66aCR8CECCTNv9 + c6/w781PzN+O/xG9NaoR5e7EIn/4lAFbHo7A0WbTPfRkk+vo/fFN6dgefF9uaYHEWnmsV1QEHLu7DbVu + cSstwoYSVUe5/oJsmEsZM4sMymoStY/cNesaeunZOqip9ADT2BWUk7KejYqAbbc+SM0b30QzJz2L1DhL + HGm4fJs2AKAaHG8cfp6eQ3Zr+fzOAByD8h1acbiHr5B/Ezj49/bzQd+lP730C3q86XXU9eUHaPI7bVHQ + HIxUPstErqq/ixRv/PD6LtLsrVvcTotmvAIvhe8r6WXc33ddnA6+9MO/oeda1qYV87oZGRYAotfr2ExZ + 6GGzx8mOA2nPEV8UsxHk2QF8nN/GJ+BBIonlALIPXbRpadtE0c9nqVTxz5hxxRzGczhTXqDAccxJqzws + zGJwoGOXjlr24NYSOgyJdwg/w0E0K6LVnQ5OoPMHx9LJgyOxDH44Vv8ORQzGyt6BiAGIfvjktX4oGKJo + iFaO2rPjzMdPIK86ocVk87Sn6PyOzgYgKQOSQXTHgl9FYOLaSOcXbqety19G5moYGAQpTw+SkdT189rm + fl0hH9SzLu3b1JN2H+kegYMr5E2G3AL2uMuwx9fHuF5iC49zkIHjp7ZUyLtOaUA9X7kPHqUnnS+0mTDu + CWOvUlU4Nq236u7hV1H/Hg8hzdvfsAxnxbrvfNTcJxXy1nPup44v3I06BDJdqDWFvrGJNBdZQKnSM5P0 + XfakqdFsW9UHRT3bkDkru71hQAHHzZOvoLta/57qvnQlPfTKVVT35T/SAy//gVo1qwUpdSd1AyjYw3z6 + wXPwEr2oYO8YOnucJR2zAsumd+mOhXEG6/LB36PuHerSttVImBTr3rT3ce9/Jv4236bO7e/Hz9gPUpEB + Z/vVbKguaX8sLTiJBW9u+UHcx+bW8riWnZQDSMKDMEBeQKUaE9P7jCQwxGtwpsr5DclUeVnFzMHhPEcB + 0rnMHkZaMThgzBkceew9BCCBPegwGIwBcogBggo6dKmpoueMAbuNQoxAoJq+bwiq6YMQAwEMrqozSPrQ + ZdMTprvDj2lYxzspZ/GzaEfpasKyyKA0g/77Tj+hob0foP2buhgDX12IbAlAYpgE46fYbS/ZPvJM95to + 8xcd6ZXN93hZxeBot/R+pEOvg/dohpaUQXjSI3vlCo8aHOwFXprwAOTVY5Aj+OAWBw7uBePjmTnt494q + FP8ebP9nentMU8rbA09j1uC/Sa123e/BwUXAlqPqoO7SAGnbga66z+lg25H8MRIa/DOY9hW0tbww9j4a + 2pczWPi9OKaZurudBwenqq99+zf0wjO1IZueRnKgvY+ls15BUqEnqvD9kM4dhl1jxtKZAu6Clv0A3IIz + ACSz6UbtBTJML0RjMCXv/X2nn+Pfwyle/F14kkeNnq65M+p+tl4mWg3qUtfSKR2vFFVsUyNA1gtARE5p + SSW1DQUOKQB65tDgcLWOi0krwx4fB3l1GBk0A5CJCPRhMUDQ7k45AMgBDZBhAMhQ13ISAJKzvX26sXv2 + X+n9gXXp+Er4q93YlAJVce763X/4lQwG/d9g0BtS/i5ksAxALEhSDihHDvSM2kdYizd69Wrqt+jBCBys + 3Z9ofwMN6FEXtZYuaFuBRCvmouM4NGkO98whFfI23WubouOJvUNcLcWmiytOjKYm2+tEvVW1pl/l5Bhn + sJiV3qB8NA/q3ipOCbfudycMLScGMPlc+wuP5Sj8aXBwNq1tvzrm3vxsMKZZLDaRPtzR2vdW8b/zv6b8 + HBm2h5CGfdVkw8qPjEOMx+aar4P1uIcrbJAhrf+SfmbTvz9vcNrv+45nr0BtqBVqQ/h3uJWbfO8ByNtk + tusWb9AhF90yAb/OxnUTCKtYYIS1OaGxMwBJ13rC3gNOju3PKLFuB4M8j4mHiekLfswY7Dd04Q/M4esb + Uh2H52DWYEPuax3IWB0TaaWyVkZasfeAMWeAOHMe5BUDhNnDAYQZBE8lA5ADjkG4H0sDhPuy9vanyWvS + K+iPNvkdzR7/GJVvQJ/ZHuz7xSABi3yyrWF62rblf9NnHzZH+woyWB4gqJQ7oJwtGEZ/mvcvURHwobf+ + TI+vvSlqPHxmfG1kZm5BK0prKjnAXgYtIWj0q0bsLLAGXbePtGxyIy1ENqzyKAPJtt0zODrseigGB4qA + 9z13JQ3q9TDtXvcq0su2D2wN/II0Hkr7yDPP30affcT+A7Ucs6aF2eNN2ovajzCHVMhbtasF89sOBp1/ + RguQeVgzw8yhDXnDgVfD9/QyvWTa09hdY9zKS1lYZqr7dmEZj5/sfCbt9/1kixsME5Uf5W2WwtLmTPc2 + aHU1fsYXsAQbvx9Za5PWrGnbbuxSgbBYzXogJ8lkPU5ClllA2TU6xoNsSPMgAhDoft9gyMDQzCH1DWkd + Yc/BBUCEl1WKOVApt8VASCusL7fSyhlz7z1EXin/YQBi/YdnkJzRCYnFDAKZtY9lFkus/tRv2R1pBv25 + xlfTyklN6cw2llcMEAuSfkvidnhr0G+AQW9Dp3MhS1DZrz4BBkHrvTDJBZw3W3ptWp1Dd+W+8sXD1AxG + deLoRqil9EYzI2fBbEWeQbLyWM8IHH2wscSL/e+ilfM7wKeMoeMA4aJDHdKZA+C487WrALxaNG/Kc2gC + 5I5j25I/B1ku3Vs1eF9L3HcbLZ/HWS4GnG2kZCm24VhfI6sEHD12NcK9t+Ne+CRkxGSdS+7BYXQDunK5 + I0DaR34w+R+p8QfX0goszebs2QWAiYGy8WAPWpj1IvVb9yC9uqYufjbIrONsumX15Tsw3ekG/XnUVNai + eHm2UMBlQcJLBDSDmL8Nkggr5nVBXxfA6QAS9gmw/kWDQwBi/I8CjSyPtvJKr78RAGHMbNIBkPXtMOEg + a0zRL+E3fJs6s4YrAJ5w4PAZK6l1JH0Hew9hDpfWTQMI5NUhkVcCEGaPcYFBjAdBR6/xIADIPnT1eoAM + gEGPq+KXD/g2dXvmZtrxWWtK7e4BBuGwMqv27Ljafvmg71DXF2+nbctfQhERWhx1EgOSQlSWldwajmY7 + aR+RVK60rHPjYeM211H/7lj//Tkm5zHIG1NstNV4BsiMYx2jxsNkhVzqHH49h+vKZXA0a3Q9vMeTlLOl + H1LBbPgtQF7b3ypqPOw2Gx859xKbbi5M2gZKs0oSAJmJ1hHdW/XM5LvsvaaJ0qaVOXitS8+ldaPeqpo6 + oPX1P03+F/pybif0X7FsCsuVMxn0Hihg7oJ3ucB+RS1lTt7LGbKuLz1A21eB2bn3zDVn+k01ZHMNv0+A + W8kpG21o8KRtvJFhIw5Iac5iJUy6A8heBkiSNVRl3BQAXbbKtI+IIWfm4EIgg4OZw9U7IvZgcHBal+UV + vMdRxx7Ge3D2KuE/DIMogBxgcMCke4mljXr/DAb9MhqFvqtDyyAdGRwGJJZFLpv+D3GVFgZ9ZL8HKGdz + J1MjsQBh9kDwyGwCoCze1iYtWyVdua1H1KbnW92C4mEbSKuByITZGkqIMf8jcNQZ+kekbG+gN0Y+DmnV + y9RTbN+XjQGHm0WNhy9PqEcj+z9KOVu5T4yXEHPR0aaO3zj2XNQ+0mTYLWgHeQygEzNv5Rinj/OzhlO9 + yX+I2ke+CSS/HP99Gj/sSRjvwc7P2PRyukH/ucl6HdrGiQa7ZFlAkunekWhvydnKfWJhpxntW/zS5kh+ + 2YKnZRCbTTNfo0Gi2UVkWY0ehBnEACRhxM0CJ2YOBkaGVC46c22VXJhDSStT75CiIGetAA6uexhzzqld + 1D4OJ+WVGHQABE1whCowHYDEEg/CDLKfjbpIrIGUs/3ldBPY8t9o0pCH6cRqdCnv6ekYpDsmw7Pp97b9 + NX0Ir1IAAEkh0cosyyIitSoPD0gz5MwcXRY+Qk0bXkMfjG9MR7b1gj+QImMAST5qL8mu3GSFXDPH7ROR + Sm13JbVrVYveG9eE9qxncHCdBMBAPYXHYhQzdVcue5tnu9eB+bWVe790GOAoRdNlcrFT4w43mCbKAtNE + 6ZjGrcc/gyZSTiU/+vaf6J8+Dj1WFwPJb/r/iIb1ZcDhIWMYZCLth2RNfo016C3xfbHkWTbDAEj25w3K + fO8b9t6wUQYzCU9+t3GG26ZJ2mSM/JItm/y+AHZZgNRlAmAkFe18i2GQxok6yILbILGeg5bHpDzB9Q0x + 49JwKMBQRUAx5GngkJSu1DykYu4A4tlDah8ue4UCYWTQTQarBoAYicUA4cVTSKPuxq6I81+ksT3up5ea + 30jtm95AgzvcSas/fopOfgX/kcUAsSC5sLM77Zn7DI3tdhe9hOa79k2voUE97qaVc1tT5aE+jkFstd2G + YxIwyIJ9bSJDzuDo+9UT1OjxP+Gp/SDtWtOZzhyDsUeBMbSq2JaVTXk907pyH3ruz9R45M3UaOSNVH/4 + dfTQsGupwSvXUHPUbl5+tjaNHtjAtLMc3IJ1FW4RF+8gyWY+hYzUuePjIFN60ZhBj1H7tnfQi23uMCZ+ + 5XwU346yQXdr7JE2ZlO/a21v3NsQ99bGvbXdvZ1wLxt061MkdcyA+RoeJntTP5r8NhopsUjshr6/oj/3 + /AVd1f1ffNz53BX04HN/pNbNa0EK3Yc1G22RmcK/363ZP48q/q51/dCq/jj256pD7dvUwfetTysXdEGr + DP4dqojJGbFd6/qbe9u3vQs/o7131YKuaGK0e5bpMIBw+5gJYNL2NHOtM+mgcYziwWSZpno/ALKhcUJi + CUD2YlJ6v6GZg4EhLetSJYfnMLJKSSupluuah24pibwHACLyyqd3xX9IilcAkqyDCINYgKSy+lM5Cnb7 + FrenbZ89ayJ7wfPolulEF3YJOCxAUrt6UPn6V2jfgja0bWZLxNOUPe8ZtIz0pHP53IoSqu2WQSAXILn2 + Yh12m213RSsBB2Y1oyfbXE+9O6L9fNGLVHWEK+aYHNKmwjLLSK1RtOBwh6grt8miO6lF4+tp/NBHafLE + 5vThhCYm+Hj+lLa0fukrAEYfZG6Gw3PYhkhOFVuAWJBcwHkpCqjZG3ujA7ibiaz1vakIDHvuhOzUYouP + 3ChZBnOfvbEv7uuBwINiQx/cOwL32iZKK8VkVxcLlrNgkuN7R2CxV0+0y7fHz9fKsI4Eg2fOJ+3oi9kd + aCu6kHN3DwWw+P3cphZFb+FnHAugDcDr/HP2wvftj/6w0Wgv4e8R9iBj4196+DXcO9Dcy5GFe4uhIrhd + JgKHA0vYismtjfHbMVl2McBxo5Vowjpq5xm364wx+1iAZwFynWp3NwBBMW0vJqSRVDXJKgUO00KS8B35 + 3GfFWSsnrYw5d94jqnuIvHL+w7AH6h8mvSsZLPYf4kFEYjmTvt8xiM9kqYIhFw1RVTfLcbN6u+hlluZ6 + qcXZLDbsJqslBUTOXkmwUbctKexH9h3tTM9uxweLujXkshLwmf534KlYC0/5Z6hkPzZmO+GKi1xgZJCY + sAB5M6d11JXbYOJN1LvTvfQVCo2FKHgWAOQchQB8OUBxtoA3kOAMGBcZ7eItHg1AEkCR9LAd8VR2/kR7 + FanQh9Eu8LIsY8EhXsX7FsmAYTyPHrHK3LFUuG+kkWQcx1FnKdw3Cjvnj4H8Q9cDJrxJKZstk+x2SVKg + 1NX8mo9DS4zdiywRzqsk08oCHAGL3+wvucOMbMXkd8yUzc3d7pl83QGEYoDUcgBBUc5kqRKtI7ISUNrW + PTi4Ss71DpZVTlqZlK5tZTcVc9exS7lszNFWYsy5ai2JqudS/xCDzgzCNRBJ80oWS4qFwYfYinp/W1Xn + 9eoaJHsAFA+Q4EcMQAxQbH2EAbIt50U6i36l8+gqzsvDjo/ZLdJkFWt5Bkdb5PKnvdOE8nbCd6DBz1Tf + izgCQFKGTUamtazXH3odjRvSgA5v49WLnOmSYFDYzJcJV0Mx4DCrHBkgtjIf2ES2LrJ1FAsSHLNXcX4l + bGuk2lmcBAtbHVmwSNg9wmQpsewZpljGAMBtiSRgkA0s/EYWNjPGQLGbW+gtk8KxSC07xrvECFg0aLw0 + M/uSxRv8+e1j9WZ/nj2kRuPAYUAjNRsHEONBIgYBQNaBQbIZICpTpbtyfWduDaZcah7STiLSyrSUSOZK + ACLmXKrnCf9hCoTMHlxF14VCYRAHEG/UXdsJCoYeIGg94fYTu7GDYxLjQxxADDgcQAxILJPoxU6ZUrkC + jjbNb6BP3kSrxFfdACiWYsweOmybSgpschj1h6Qhb/jKtTTp9SZ4Cvc3G2/rbJcFhwMJA0TAwuliYRJh + FmYXJbsMgJwEE0aRjJeMfpmwAojvAXOMYhomTdOkbErhzg0gYilmWvMdUMTHSDey7CfmQeI24tN7i2mW + kWp+AEliDzK/JWw6w5jlx1562fZ+G1JrCR5GDL4UNL2pNwyCj9NIB0hbCxDOVPm1HJLKVc2HXlYlUrre + d3DWSkkrqZpHqV3OXIm80v1XSQbhPiyXxTI1EOnFUgxierKkYOj6skxvFliEwZEtUkvLLAaJAogrINKe + rhetc7DneKrbLaaoOPktLN7Z0pXOHmNw2DSwbUuRsD1c3PD4BYp/ejtQzlY9/eT1tHAqEgNHuNquU8KO + SYoViyiAeLklbGJkl5NhRn5ZmWUjnMuy4Fh2yXp6Zo7kxnmyN5jsOOmYxXkUzy7etzimcW36fs8wqeRr + ZkmyjGcWu5NlDB5bkAzVezmXPZTD62HzviDVYnCo/ZZV9izaGRMbC9YMkCxMxqQZj5hDKuUupetb2Nl7 + sLQS7+Eq5gwOn9aVrl025wIQAYfzH4fYf7gmRc8gCYll6iA1AMRV1WMWYYAwiwAgWeJDRGa52oi0oYBJ + 9HoO7Tk4lftE86upE9o4Zr7flA5vBTiwkyGngFMq0xUaHQNQPtr7TFrLevs2tWjDEqxRQS9VBBBs3h2W + +wpIkqP1JlZyOYCohkjPIsImEWhEhgEQvMJRNp2Q2orfNC8AxjRPuuvGqwjLuNZ8myJ2rOIAo9PGUqi0 + CQCWWipjJuDwnsXJK7/tq3gZxySugh/kVtjhMgaSYhjFOsG/aLaxvWRGqtUMkDaYQJiMBiDSW3UR5vAF + QU7nqjb2yJgracVrPo4max8KIKZB0Rl0XyQUicUmXQqFXCxUEov3yTIVdRh115dlAeK8iMgsY9gTAFHF + Q/Eho7+sR23m30EtZ8FjTK1DbUbfQU+hQv58qxtp9IC6aEdpjXoJ9rfCgi4DDKmVGJBIk2NodmRG2ZLd + mSbMepyeG3Q7PdH1OmrR8Ub4j/pYINUjMvLVHhwiubQ3CSAxvV0ZDLzsxMLehLdUNaHll7CK8SfBzItn + icBiAOEYxm/JGnacjL2KkmOuai+A0ZJLgOIBk/AphnX0tYTR98xirieYJPIt4TXZP9kDyvgNJ78EOGZk + b4LxQI0MwgDBRDSGXKdytecAc3CPla6Wa2klLSXGnOuqecKcY2FUXD1Helc6eDMxCFoXbKFQQJIASNT6 + ro06y6yED2GQqLqIrbKL3OpOBStepM+wwGpU5zvR/n4vjUU38MdvNDLA2I8NvisPYU37cU4Fs7RKFhOF + TURyWePO6d/dqJEsm9GW5k9uRYs/bY0U5itIuyJrZmomIdtls14MkFh28QYSsomEjAISXrBlzLxjFGEX + AYfZf9h7E+dRhFUMUESSBVNvJZlkucJotmWV8AzismB+sZcy+opRLINYprGGXfrEnJGPwBF2rExF7GKN + vpViFlBBktniZACPsIgFjP0aZ+qdsQ8fc+GuZ2aQW2HSWzuAMGtIMDgcQGRtRxIcOmvlax5izN2CKJO5 + 0tmrRHrXgEOneF2bO5t0sxbEZbEOOA9iKumuFmJ2WlQ+hI26MeucyWKAOC8iaV8jteLaiLSg8Hh2e2fs + eYc9a5c8i3UkbenQlk50IqsHPhoefUMGGC796yvtaFNnoHiZFQqLwii8g8pptHxXHh5I5QBF5eFBZtXi + +eOoYEvdxGW7AkB4V5Vg3u1xklFCn5cAxILFSS+RYcaLSObLgcEBhsERAcSDRTOMZL5sBd9ILC/FgvwK + qyEDo9jCoz4XKebA4eUWT3Zbe/EG3/kZa+KTKWMBigZIpgyZ9iMBKNFu/VKsFIm1Mc2kC0DwlPaeQ7bp + UW0kBhyulcQzh3TqclrXVc1N1sq1lESp3UzZK/iPqMVdd/HCEzFAojQvg0QBxFXT/QIq7UMMOMAgGesi + GiSBQaLMFky7rY3YRVYhBCShVhL1b2WQWtI2Hy/EYubQNRNVgQeTpFwNJe7pskAxLAIjH7FJlPGS2okU + GSVF7NjESDBn5CXrpVjFp4pVXaW6hFvsY9kVy7BQW5EqfthUTwHDM4kFjv/ICb+FqwaJkl2OYQQwkgiw + Lf3Wqwi76HSyfS2kj+Od+VVKmSXWxRkEADGrAWVFIMDBzMG1jm+SVtp7pJlzaUzMlL1igAh7sEFXNRC/ + FiRRKGSjbkCiu3rZg4gPUdksXxNhqSWFQ10XkU5fMey249d6klAfseAQsHAB0RUTXUtKkkWscYfEUi3z + aSDhLJdZtaiAwuvgVQXeSC3jTWzB0QIiySYMglBHMSwShQNLwsh76aVSw55NvLG3sitZdLTdxAIWxSpq + Z/xQT5EMmKSN45SxTRGHeotuewndyAEopqaS5ldcjcXJsfCZLgE4MWiCHIuyZvu7ZcpiMYM8gwkEjW8k + la6SSzpXunR1QZCzVpzSBXMIe5i15py94sKgrBjU5pxb29G9a6rnrv7BDMIZLHyGhQHIQS4Qsrxik56B + QXwmiwuF3NXLMssBhAuGvh6ii4a6uq4yWkZuuW5f5UV0AVGKiKHSLsyhmMRU3tMbHK30ckXEtDqJXbFo + QCJM4j0JbxihvIkHSrJmEoPFAshJLy+3guzylXlXkZcWlqiWIv1eSm7VVFMJtZUAmCDB2Js4Y2+WEcdA + SRYlbT0llmDSGybSSzJgce1F5JdIMQcKv/O+Zhep8uOaM/vR5704gCQKhQDIWg0Q6bHiKrkLv2WPayfx + 68udtIqMeU3yStU+pP/KbNCg/YeTWAwQKRJ6k87yyrW8+45eAQh8SHZYQOUzWVlcE2GZ5dK9wiJRZT1Z + POQWFI6amITZQ0muCByuVT7qBNYZrmRBUbWnqAq8VOOlEh83Pypv4jJfuhKfziAOIMabqGNXnZfiYwyW + uI5iABJlvkLLvQWPAESuu0ZJ5VcYLKG1hX2MYxRv3FWtJQJKkGGRuVerJa1HCVX9KBvG5txnvgQYoeYS + FSVrZBADEEw+053L4dpIjLSSVhINDtXK7sEhmStZTutSu4e192D20PWPTABJVNGNSQe7SarXt7xDYpl+ + LE71ahZhk54pm6VlVpJFki0ozpeYCruWWqpfyxt2llwJP+JNe9LA61RwemHR76aivYlhDw5hFM0iUjeJ + mUWyXgwWDxh4FFs7kWtSYFT1FNPCYv2KMfDOp0gXcfAmLKtUTcWvUZFUsDP0BhSqpqJSxppp5AOLNKtI + 1sumjONCpTf0uk3fLS0On9ei2lx8Bd9e8xIs+mwXgMYApFGykn4LGKSVBQiDQ2esLgaOZFo3ac7Tah/J + 6rnzH7oG4tvcpYruJBaneaNFU7rdhMGRkFkGIDqblYFFTMrXZbWQqbKrDsPCqohFYNiD1IoZRLYSshku + K7NS/thltWQBVsLAZzLvQXKJPxHznmyjt94kc7ZLmXnd2yX1E+NHVGpYGiKjwqMYewGKrtJLv5dkwZRP + EaZxhj4CiE8RB4YJH3lnTb4Hg1vwFdpexLxbvyLmPnN9RVLJChDqM1yEYcTPiMlP7fsmgPitetymCxFA + XCOiqZhL1kqq5npBFFfNpXKeYI+k/2B5ZSroUiSUdSAKIJLmzdRuImtDfLpXOns1g7gO37RsVobiodRF + fPuJk1mqXyt4EbBJUmp5JmFWSXgSs86dGSRZVFRM4psd485gI7X8bo8MCgFLMPCS7UqmhIMvSTRBRmDR + Rj6kiW1zZCg4xkyimyQlLRxqKpm7ioOx1x3GljmcBHNpYeNHnG/R/iX4j9CBHNLDIX2sWcbWS6T2olnE + NVLKB7Xu72oYJOFBHIPsQXbIew61dNZsF8rVcgEIg0P6rdw68yhzJUtq2ZzrhVFOXkl7u0/vuhYTwx41 + NCrqQqFZly4MIq3vUgu5SCaLAeJ7s6SB0fVopRUPXQHRexHLIPH+Wg4gGhRgDsMeck3VS8LqRL3WXUCj + jXzYj8vuzSXFRAFJYJIYKEnpFeomGUESNUFK93A6UGznsKujGIax8ks27fYGnuWYzn4ZaWVlWMiCBa9i + C5Ghuzh80rAqTDrgeABJW750GssHF5l0sf60r7D4y69xSdRYbCZM+Rb2MQ4gqYXXqvUg8xMAMWld1cJu + WkkADum3Ms2IzByq50rLK1MUVIVBs2uiZK/gPzIChLNXUgMRD8LySkmsNAYBSNiDmHYTaTlxRt1nssAk + bNTTioauy9e3wl+sTytp2LuptSOqTuJBobNbikWkoCipX58CzpTlcgziNq4zncFmp0dVN/EbbNsUsLSq + xFX4uG3FA8XIK9UxbPyJarHX3cI+Paw6h32fl63MS2tLBBZfhLQt+Mmu4nCuGyMzH1u/InWTRLrYfXx3 + 2oIv/5HeNjPmvYlU8aULWbfs1wyQltDfzCBSDGSAyAIoYQ8lrXxRUBlzk9ZlaSXgEHnl1p3L1qLR8lpp + UJRVhAkG4S1/TKGQ20xUR68vFjqjLhJL92V5o+66e73EkgZGkVjJTt9E6lfWjSiZFad+kxmtDIVEaU0R + 8y6bQbgNIWrqCJYO4QCORGFRaiauqMg1FLOfsBkBDp/lSqaHbZExblvh4mPcshKq8lKNF5BIF7HILOkc + FnaRxVtSubdexfqRJKuE4qNhFNcHJq0uvlEyYpOwIYX2MIZF/EYVNm0sdZZkGjkuUDrZtb8LJFZDSKw0 + BmGAYLKZSrljD8McCGYOs0pQUrquYi41D1M1ryG1y+whvVc6eyUrCH0HLzOIAoe0mRhw6AVT0m7CxUKW + VyKxVMtJNvsQllqJbJZeI+JbTxxITCOjtKG4uohpiWfTzj6Ej+O0b9jKNGS2vLwybKJaUwx7ZPIlCbkV + 1UqEWaROon2JZhInwdiw++p7cleVmuVXWguLqsiHrJeSXtLzZeolDjDSuuIkVsiAOYOvpFf4RC6dKk5P + E9uUcGhv0dV5nTKOMl+q1uKzX+rzIy2ThO5j6Tq2TZUASWYGuRlZrCRAGBgOHGzKNUC8tEqwh9mIWuQV + 2EOkVdScKMtrdXqX2UMAIn1YvA5EFkupSnpaP5YAhKWWdPU6H+IzWcnuXikaqrUiUadvhnZ4t2WQbGEq + qV/PJIXKsBvj7qrtUe+Wy3J5qWVTwL7qbirvFhRhbYkGiSoqSvVd/IkUFQ1A0jeN8D1eilECg2gmqWEd + imqEtKBQKxxlPUqNDZEZ2MU3SUqDZFKCWXB4j4KMmM6GRWDxtRaVDpbUsPMmSRCFTyZWrS4syRyDJDwI + A+RpPCUx2Uxgsu3GE5ljFyadCUy6XahSm8CTmQNb/9NO9DuZwKTbwYFJtwNP5R14GnNsx2TbjqewCTyF + t+MpbAKGd3sXom0cnRGdiLZ2tLGFxw4YOV528RLG9ogXbXz1govnMbYj2szxnItnMWIBGMcmDnQqm0BD + pgnUfHwgvb3JxUY8JDbi9xDFU+4c4waJFriGwKfTclRnP+viOYzJaEfVexHZLvg4LZ7HNYkXcPwCpRA8 + Vu99kar3ITCm1LG55q5X723v7uOR4yXc+5IZzfE+G9VmfBljetjrHVzoY7n2Cr7WRnXG6IjrHdXr9vzi + 0cl9Dd8nx3a05xydYZztcUpd4+vV+xHmdT7uYs/dNfP6PlyT4Nf52NwHGeWOU+66GeW1dIkFgKzBxPCB + ibCGA5PABybDao5mKprimKMJ0SoEj6uftLHqCReNMXI8TrSSAyk0H9B6KzkeI1rB8aiKBjiur+IRHCOW + P+ziIYwuvsT45YMu6mGUqItjjgcScT/OEV9I3IdjHffiXMc9RJ/j/HMeddyNcxupdfUuEg/iNcT6DCNf + W/9QHPh8jHDtYRz/pfEI7v1Loj7u+0ujATQ5B+43o4v1GHUkXzPnj4ZY7471KMfmvsfwfup+c46Q1/j8 + fxwNja/4v4rYgwAg8yVuwnGmuBHXM8S8G4iiuB7nybgO13TAAM1DzNVxDc51XI3zZPwZ1xIx509EGeMq + XM8UV+J6TfFHotku5qhjuWbGP7h7eIwjteAqiuNPOI+DEufJ1/k8vufPeI9ELMTvgK9h9K9lPL7avE4L + eEQsDEHqWF+XY3ld3xeuXePeS498fPGgv/B1ue9i99vXrlXfk4/Tg822kUsZXtPXM71OH19Gl/D//jf+ + 93fwv3Mg8xz4fwAUWcpvwH42VwAAAABJRU5ErkJggg== + + + + True + + \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/ISynchronizedSubscriber.cs b/Hyphen/Plugins/Forms/ISynchronizedSubscriber.cs new file mode 100644 index 0000000..ea40237 --- /dev/null +++ b/Hyphen/Plugins/Forms/ISynchronizedSubscriber.cs @@ -0,0 +1,29 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; + +namespace Virtuoso.Miranda.Plugins.Forms +{ + public interface ISynchronizedSubscriber + { + SynchronizationContext SyncContext { get; } + } +} diff --git a/Hyphen/Plugins/Forms/InformationDialog.Designer.cs b/Hyphen/Plugins/Forms/InformationDialog.Designer.cs new file mode 100644 index 0000000..7fab966 --- /dev/null +++ b/Hyphen/Plugins/Forms/InformationDialog.Designer.cs @@ -0,0 +1,136 @@ +namespace Virtuoso.Miranda.Plugins.Forms +{ + partial class InformationDialog + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(InformationDialog)); + this.InformationLABEL = new System.Windows.Forms.Label(); + this.OkBTN = new System.Windows.Forms.Button(); + this.DialogHeader = new Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader(); + this.CaptionLABEL = new System.Windows.Forms.Label(); + this.BackgroundPBOX = new System.Windows.Forms.PictureBox(); + this.DialogHeader.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.BackgroundPBOX)).BeginInit(); + this.SuspendLayout(); + // + // InformationLABEL + // + this.InformationLABEL.BackColor = System.Drawing.Color.Transparent; + this.InformationLABEL.ForeColor = System.Drawing.SystemColors.WindowText; + this.InformationLABEL.Location = new System.Drawing.Point(9, 56); + this.InformationLABEL.Name = "InformationLABEL"; + this.InformationLABEL.Size = new System.Drawing.Size(430, 155); + this.InformationLABEL.TabIndex = 2; + this.InformationLABEL.Text = "Information"; + // + // OkBTN + // + this.OkBTN.DialogResult = System.Windows.Forms.DialogResult.Cancel; + this.OkBTN.Location = new System.Drawing.Point(12, 220); + this.OkBTN.Name = "OkBTN"; + this.OkBTN.Size = new System.Drawing.Size(75, 23); + this.OkBTN.TabIndex = 0; + this.OkBTN.Text = "OK"; + this.OkBTN.UseVisualStyleBackColor = true; + // + // DialogHeader + // + this.DialogHeader.BackColor = System.Drawing.Color.Transparent; + this.DialogHeader.Color = System.Drawing.SystemColors.ActiveCaption; + this.DialogHeader.Controls.Add(this.CaptionLABEL); + this.DialogHeader.Dock = System.Windows.Forms.DockStyle.Top; + this.DialogHeader.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.DialogHeader.HeaderFont = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.DialogHeader.HeaderText = "Caption"; + this.DialogHeader.Image = global::Virtuoso.Miranda.Plugins.Properties.Resources.Icon_232_32x32; + this.DialogHeader.Location = new System.Drawing.Point(0, 0); + this.DialogHeader.MinimumSize = new System.Drawing.Size(300, 40); + this.DialogHeader.Name = "DialogHeader"; + this.DialogHeader.Size = new System.Drawing.Size(451, 53); + this.DialogHeader.TabIndex = 1; + // + // CaptionLABEL + // + this.CaptionLABEL.AutoSize = true; + this.CaptionLABEL.BackColor = System.Drawing.Color.Transparent; + this.CaptionLABEL.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.CaptionLABEL.Location = new System.Drawing.Point(12, 23); + this.CaptionLABEL.Name = "CaptionLABEL"; + this.CaptionLABEL.Size = new System.Drawing.Size(59, 13); + this.CaptionLABEL.TabIndex = 0; + this.CaptionLABEL.Text = "(caption)"; + // + // BackgroundPBOX + // + this.BackgroundPBOX.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.BackgroundPBOX.Image = ((System.Drawing.Image)(resources.GetObject("BackgroundPBOX.Image"))); + this.BackgroundPBOX.Location = new System.Drawing.Point(330, 127); + this.BackgroundPBOX.Name = "BackgroundPBOX"; + this.BackgroundPBOX.Size = new System.Drawing.Size(120, 129); + this.BackgroundPBOX.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; + this.BackgroundPBOX.TabIndex = 3; + this.BackgroundPBOX.TabStop = false; + this.BackgroundPBOX.Visible = false; + // + // InformationDialog + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BackColor = System.Drawing.SystemColors.Window; + this.ClientSize = new System.Drawing.Size(451, 255); + this.Controls.Add(this.BackgroundPBOX); + this.Controls.Add(this.OkBTN); + this.Controls.Add(this.InformationLABEL); + this.Controls.Add(this.DialogHeader); + this.Font = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MaximizeBox = false; + this.MinimizeBox = false; + this.Name = "InformationDialog"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Information"; + this.TopMost = true; + this.Shown += new System.EventHandler(this.InformationDialog_Shown); + this.DialogHeader.ResumeLayout(false); + this.DialogHeader.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.BackgroundPBOX)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader DialogHeader; + private System.Windows.Forms.Label InformationLABEL; + private System.Windows.Forms.Label CaptionLABEL; + private System.Windows.Forms.Button OkBTN; + private System.Windows.Forms.PictureBox BackgroundPBOX; + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/InformationDialog.cs b/Hyphen/Plugins/Forms/InformationDialog.cs new file mode 100644 index 0000000..98ad3df --- /dev/null +++ b/Hyphen/Plugins/Forms/InformationDialog.cs @@ -0,0 +1,63 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Text; +using System.Windows.Forms; +using System.Media; + +namespace Virtuoso.Miranda.Plugins.Forms +{ + public partial class InformationDialog : Form + { + public const string NewLineToken = "[n]"; + + private InformationDialog() + { + InitializeComponent(); + } + + public static void PresentModal(string caption, string information, Image icon) + { + if (String.IsNullOrEmpty(caption)) + throw new ArgumentNullException("caption"); + + if (String.IsNullOrEmpty(information)) + throw new ArgumentNullException("information"); + + using (InformationDialog dlg = new InformationDialog()) + { + dlg.DialogHeader.HeaderText = dlg.Text = caption; + dlg.InformationLABEL.Text = information.Replace(NewLineToken, Environment.NewLine); + + if (icon != null) + dlg.DialogHeader.Image = icon; + + dlg.ShowDialog(); + } + } + + private void InformationDialog_Shown(object sender, EventArgs e) + { + SystemSounds.Asterisk.Play(); + } + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/InformationDialog.resx b/Hyphen/Plugins/Forms/InformationDialog.resx new file mode 100644 index 0000000..7b86164 --- /dev/null +++ b/Hyphen/Plugins/Forms/InformationDialog.resx @@ -0,0 +1,537 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + + True + + + + + iVBORw0KGgoAAAANSUhEUgAAAHgAAACBCAYAAAAL+X4DAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAlwSFlzAAALEwAA + CxMBAJqcGAAAVStJREFUeF7tvQeYVtW1//9LTIw397k33eTGxE41iSUxNgQEhqJIEQSl96oiShsQWDY0 + 9t5FUXoZOkPvMHQYmGGGOvTeOyLy/37X2vuc/b4zFEtyc/OPz7Oefc55z/uSzOd811p777X3+d6ZM2f+ + 37//+xf+CxDwv+1f92/wb7j/4g/4vwH/G/C/rvtiaGpQv/5F9evV++96dev+BsfXPNS27Y1dU7ve8fRT + T5d//rnnq7/4wot1Xnrx5Uaw5i+9+FLrF194qc0LL7zUFi2PW7744ktNXvjbC/Vwb018555uXbuVevih + h2/GbxWrW6fO7/C7P8fxJf9bYfD/VwoGyIsefOCB/2rerNkVjz/22M1dOne5+/XXXq83YvjIltOnzegw + L2N+jxXLs2Td2jzZumWb7Nq5S3bv2it79uyTPbv36vHuXXtkV5Lt3LFbtm/bIZs3bZG1a9ZL5rIVMndO + hkyeNLXz8OEj2777znuN2z3SrnrrVq1LtG3Ttshlv/3tz+8sUeJH/wjo//KAoZ7/aNak6ZVQ1W1vvflW + zcGDBrWZPXN26ob1G3oQ1t49ewHSAG3cuEVyc9dIZma2LF6cKfPmLZLZs+fJjBlzZMqUmTJp0nSZMGGq + jB8/Fe00PZ88eaZMnz5bZs3KkHkZC2XhwmX4fpasWb1ONm7YrA/Ktq07ZMf2nXhw1suM6bO6DRgwqP3b + b79bt1HDxmXLlS1b7P6aNX928cUXf+/vAfxfEjDc4n81b9688LPPPFvhsz6ftVy8cHGnTRs3A+Y+OXjg + oMJcvWqtLKPS5i4AwLkybdpswJohEydOU4gEaK0BHa/tFLX09MkybtxkGTt2kowZM1FGj54AGy8jR6XL + iBHj1EaOTNfPxo2bpN+fgwdl6ZLlCp7QCX8VHqaMjPmpH37w8cPSU2o8+OCDNxUvVuyXRYoU+c5g/8sA + rvPggz9q2aLF1dKjZ/kRw0e0ys7KemIv3Orhg4cUKP+wixctU6DTp8+RqdNmKdRpaKdOnaUKZUvYVO2c + OfMlA/dmzF0ICDC0c3mMa3Pn8DpaPZ6P++fLrJkZUOcc/b1JE6cr/BEjDPhw2vCxMmzYGElLG6MPBNVP + D5GVlSOb4DnWr98o8+cv6jk8beQjnTt1qYlwcj1g/+Tbqvr/POBGDRv+vP2jj/61T58+DRctXNxt3959 + sn/fAVVJdlauLJi/BO5znswkgJlzFSDdKSHSFixYLMvhknNXrtb4uW5VjqzKzpSc5UslN2uprMbx2pwV + sn5VtmxYs1I2rgWQtbmyed0q2bx+lWzJWy1b0G7buFZ2bl4Py5O92zfKzq3bZUPeRlmVs1qWLcmU6XiY + 0qH6MWMmAPYYGTJ0FICPVqP6+fny5SslD6AJfF7Ggh59+/Zvi7hdvnSpUlf84he/+ME3gf1/FnDDBg1+ + 86RIyuhRox/asGFjT0LdsX2XrFy5CnFwCRS4QJU1GwrjMRUJhcBNrpCVWStl1cpsWZO7EscrZMrEiTJ8 + 2FAZMWywvNNnmjzx8jhpJwOkZZdPpHnHj9RadOotrXDepmsftdapn0rLzr31s6YdPtT7e746Tnq9M0Xe + 7b9YFs5fKJmL58vK5ctk97atcvLwATm8dyfAI87jYZqfsUjDAZU9FJAHDxkpQ2CjRo3XmJ+VnatuPDd3 + tYwdM77j0089c3/5lPJFLr300ou/Duj/c4CbNG58Wa9nn717xvSZj21H4rJv7364tw2ydOkKyYDLUzdK + lwqjC1y0aCmy2uVQ0ipZvmyJzJ42Ee5zgrz4dpp0efIDaf3MPGkiC6VOl5lSq8NUebDHKmnQa7s0pD23 + Da1Z/We2qNV7erPUfYq2Seo8uUkefHKjWu0e6+X+J9ZKja5rpGqnlVKzw0y5n7/XZZY0fnKxvPjuROnd + b5JkzM+W3VvWyqG92+XE4UOyc9s2WZG5AuFhpsbtwYMNNG3s2Ikyf95iWQPPQps+fWY3dNfq3Vv53j/8 + 9Kc/vaAs/P8M4EYNG/0W/c3KGXMzOjJZ2o34unrVOgBcBmUujmzBgiWyCJnsihU5snLFclmycL6MSZ8p + r775kXR+frQ06ZYujbpNkY7v7YXtkc7v7ZYneh+WTu8fkkff3i8PvbZTWr20Ta3Fi1ulxQtb1Jr9bbPZ + 85ukaa+Nao2fzYus0TPrpdHT66XB0+tga6Xuk+ukjsB6rpWaqTlS+fFMqdR+uVR7bJY07DxaHv/bTBk2 + YoosWJQth/fvk1NH98m+3bsla3k2ulfTZThi9aBBIwB8hMZtqnpV7lrZAFXPmjW3+2uvvt7gnrvvvu7n + P//5D8+l6H96wOjm/OxJebIcFav9UXRr2JVZvHgZ4ucSuOOlztg9yZbsFStkxbKlcLkj5Pm3x0nz1MHS + 5OkV0uGtDdKr70F5Z8wZeXv0V/LCwGPSvfdBSf1wv7R9ZYe0fGm7QX2BULdKc0J9frM0B9SmhPrcRmlC + qL02ACotTzzUhk+tE1qDp9ZK/SfXwFZLPVktdXuuAuBcqdsDxmO0tZ/IlftSc6VqxxVS8eG5UumRedKi + e7q82nsOHsxMuPJ98tXJI7J9y1aodxFcdroMgqoHDkyToYjbzPTpthmrZ82c80SvZ5+rXbZMmWvOBvmf + FjBGgX7Qvn37G0eMGNnSu+LVzITRP120KFNbZsVLli6XrBVZkrMyR2ZOnSxvvD9UHu3+sTz0XIZ0eXej + fDLptPSZfFo+GHtaXhl6Qh5/e688+uZuaf3yDmn2AoFuk5ZUaqDW5n/bIs0B18A6uM9tAGCCXR/ABVgq + 9qk1ah5sPVmlQAm2To8c2Ep5sHuOPPDESlg2LEtqdcuS2t2ypVbXLLkX6k55aKFUajtVur44VvoNnYYE + bq2c+eKoHDmwHy48S7tbVPPAgcPVfTPjZzdrzZp1MmZ0escOHTpUvPqqq36WDPqfEnCzpk1/9+GHHz6w + fn1e90OHjmgXYtmyLIW6BBnpEvQnlwFsNhKRFZlL0P+cKM+8gESo+2h5+pMN8vnU4zIp84wMmf2VPNf/ + MFS6T1q9vBMQtwPmdrSACrW2ZEtziqVaaeqGPVhANbAwumE1c8NUrFdtPVXtKqlHsFCtgc0BWMIlVLPa + AEuotboul/tpqculFuz+1Ey5r/MKqdRusZRtkyE126fL6x+lw0stQ6zeJ8cOHZAcdKnYDx8E0AOg6CFD + RmmvYN26jdrd6tOnb+uaNWredMkll1zkQf9TAa5b58Efdk1NvT1j7rz2R48e0yFBG1nKQhKVpQMTPF6Z + nQOwSzXz7PD0ICRKGfLK4K0yI+eMTM06Ix+mHxP5dD9A7oBCd8Dd0v3ugBFwABbH6pId2BguYqy6ZEDt + FcRZqLUh4DZ8xsOFap9aLfXhjgm2Xs+cCO6DUC0BU7WErIAJV22FAvZg7++SKfd3WSY1Oi+FsV0mVTpk + Srk2cyWl1RR59JmxMm36fDm6f5ecOHIQ3b8cqHaCuu3+/dM0E2fPgUJAP/yJnt173ndd8eK/1rn+r5Ny + /z3vRXb8m48+/Kjmrl27ex47dlw2bdqqo0056Efy6VyxYiUUuwpP8QodOOjw1AB59MWF0nfqEZm75oxM + XHpa3h55WB5+fac0eX67QqUbbgXFJoP1cZbJk0H1RuWaYpugNXccq7YhVEszd0y37FSrymWcjQGbW3Zg + oeDacMtUb+2uhLtClUurCbg1A7j3dVoq1Tsukftg1TstkWodlkr5hxdJ+VaTpd1To2Xy1PmakB09eFCW + Ig9hAtZ/wDCFzdE1/r1y0A37+KNP295X/b4//lMAfqx9+z8uWLDg0ZNfnJKDGHnahEH7PAwSrFuXJ4y7 + tDWrV8uMaVOk0zOD5eHnM2TgjGOyYP0ZGTrnhPT4ZB+A7pSmf4NCnVINqiVOXrUtXrSMWGNsBHZT5JIV + rLpjU613x3TJDdUdx7GW8dZiLsDS6JYB2LvlOoSbzzVTtaZegqVbNrjLhGAVLqAScPUOi9EuBmDY44uk + ymOLEacXSNnmk1TR2cg7zpw6Krt37NQRNMbnAQDN+Mw+/9q1G2TqlBkd/lcBY8z4kud6PVdm44YNqV99 + 9ZXs339AtmFYcQvHajF2nJe3SbZs3qJZ8ZvvDZJmqUPlnZG7Zd7aMzI84ySy4L2AugPJkIcJoISa4IYt + gbI4G8fYZs9vlGYaZy2J8plxEweWyRNdsVcs1UqzLBmK9TEXcD1Yg5vtjOqFYl3cVeUG8ZZuuSYAK1y4 + 5ggwoBrYRWaPL5SqsCqPLUC7QCq3XySlW82TKm1GyBsfjNHRs9Mnj2HQZo2OhffvP0zdNse/kYR1/V8D + zDnYvn37PnAMsfbUqS8VLrtAOzGzQ8jMnLdt3SwTJ0yUtj3S5NlPV8uc1WdketYpESi22d+2QXnsr6KL + o8kT+62WMIVdnYT4+jenVsAlVLVAseqStT+7Vi2C69yxKpbKpUvWTDlXXbNPqMwtEzDaKKlaoW7ZXLPF + 3ZqpyzTmJqv3PlVvImDC9YAJ+d728wF7vlR8ZKGUbjFDaj06EuPoc+T0sf2yf/ceJF2zNdMm6LRho1P/ + VwA3bdLkfyZNmtQEMV1OffmlHDp0WA5glmffvv06gMHx5M0Y4+VoU6unJsvoBSdkzqoz8nraAWn76g5p + jBEmwmQXR9sALPuvas4NN0dGzKzYMmMAdXAtxtIVuxj77DrNjqM4G8RaJlINIsXGcAmYcTfOmJFIebes + 3SAHNYi53i3HcZfqRcz1cKnajlSvA+vUa3ANcOVH56nd3W6epLSdL3c1HSOpz4+UXVvz5PSJY7ICgyVp + mNgA5H88YEy0F8lclvmwwoVymVAdOXJUYy/t+LHDMgOTA22eGCSvDspzcfaYtMFgRONeW6Fcutx4QCKO + qQFUZsWaOCWCbeIz4wSw1u3xYBs+vQbHLtY6sJop0y3DHVtXyIEFXKqV8TZKqOCW1TXnAxzH3Jpwy7Qa + CpaAqVqLu3TLVCxds7rlJLD3KtwMuaddhtz9yFy0c6XCw/OkZLNZ8kD7oZI+MUP7zzvhBceNnfSPBdyp + Y8c/rlu3rgPhfgnlnjx5Uo4fPyHsErE9duSAjMTMSrtnJ6IPe0zmrTmN7s4egNoK5dH1boM6bZTJFGpD + iL5744E2U/drQ4qq1OTuDlXrFBu5YnXJAOvhuiTKkim4Y4VrVpd9XMKN+rk+ofJw4ZKh3tgtsxvkYq5L + qmooWEuo7lO3zIzZ4m6CW3aqDZXr4RIwrdLDc+RujIrd1XKOlGk2Vj7tP0G+OLJX9u/Z848DnJqaeuPm + zZtTCZcJFQF/gaz55Mkv5PTp0yiJ2S7PvzVaHnl+NtzxV+j+HJX2b2LA/1mCBFSFGYB1CrUkCUa1uoTJ + 92HDjDixy2PxlZmxxll/7EajfIYcq9ZirbpkhetjrSVUVKw3BetcM91xLZjFWyRUXZZCuezrJrnlIKny + cKs+BgUz3sJiuBlOvVCuh/vQHKn00Gy1irAU9J1LNBonD/dMk3Wrc/8xgLt3737zjh07uhGut9OnDTLP + d23fLF2fHypvDtss85Ehvz/mgNTHrE3jXm6AH2CbcujwOZoBTYTpByWS1er7sEycEGNd4tTQdXfY7Yn6 + tX6oMUiiVK0erMZaG7wwl+zhxoA92NrdkEzpKJWH6xIqqPascJlMIe56t8xEimDNJc9Tl1wZRrAKF6ql + cis97OHOkoptZ0mFNrOkfJvZcmfT6fJg+39ADKZyt2/fngA3BJ2zKg9P2xDpO2mPTMv6Ujq+uwMxkePA + HOwHWMJUdcZw/cC/xlQXV5v4Eadn0H/VxMmSpkauq2MgTa0KNoCsisVolHfH9Vy8VbgOMkekaqZmQYVZ + OqRYvYtZjS7LzR071dZmpuzhun5uTSiX6mV3SAG7TFm7QzSXKYfZsgJ28dbHXA/47kc83DmqWjXCVcAz + AXgGbKaUaTnz76vgx9s/VnTjxo2dQ6Dh8YLF2dK463jpN3W/TM48KW1e3gIAmwCN8dOUasc2k0PzI02+ + 3+oHJHxGzG4OhxOpWA/V3LAlTomDFas0vlq/1lsMlRkyJwmqd85SJT/62lrp/BZtjVqHN1ZL8+dyASkT + AxR0xwUoV4cezSXrUKTLlqN+rsbcBYC8QNVrRvWacj3cex4x9Rrc2CVXbDsbMB3ctjPhomdISuvpsBlS + rtX0vx/gNq1bX44ZnvZngztzzhJ5/IXpMmbBcRk66zj6s5sxrrvBJUYAC8AKUUeX3DQd1BnOwdrgfwwz + HEqMQOoAhRsz9okT1YpsWOG6Pm3sjjncaHZ/12x8N0c+GLFNMtccliPHTsmZr2BnzL788pRs23NCxmfs + lk4AXq0jYYYjVIku2bLlRW4gw2XKAEvAzJa1K1QAXJ9MeeVWfGiWQqZqeVweYKnY8oBKS2kFwLByrab9 + fQBjEOOnM2fMaGEJVRx3PezpcxZL19dQ7Lb8lLw5fD8UtxEKcyB1rtUZs1+63ACszcE6qG7gn+eWKCWq + tAFHnbSLY5lw1Ko7tm5P/aQ4q/1aWLVOWSIfbZS1W48C5mnYF3LyxHF0644h6z+qdhzHp744obCPHT8p + I2fugHvmRIFTq1MswVrGTLhuhArxVl2zV61LqCpTubB70BVSl8zuELpCCvcRKJdg4ZIrAKy6ZBgBq2t2 + cKFcA9xy6ncPGPO4/zk8La2+9XP5lPOPE0OePS9TOr8yE/H2C3lxwB5UPRDgBsRNmLaMoXmADkOFBIE2 + pOnQoe+zxu7Xz8MSnh9O9Nc4OJEM1YP1gxSqVk7II3nyyq3WaYW82G+zKRZgCfXIkSNy+LAZj70dPgxl + 45zwz5z5UuZn7ZMHuy2RKhg/tn4u4Zpy1S13JFiq1hIqNc2U55mFbhlgY7ds2TIVq8olVAU7Qyp45cI1 + Q7VqZVtOhX3HCgbci959550qX6B/a33c49oVYjeIkJevXCetZKKkLz4prwzag34kIQIoDXB5rFBhhKnl + L6yU8K0b8K//pJ+usxGmxG6Ni6V0wep+Xd9VhxUBUXKCmR/CNcXqMCOMSdSTH2+Uo8dPyVenT8oRhXrY + wbVW4TrY9pnZsWNU+ymZvXQ34EKdSKB8QsWRKTUdxIhjrY+3FnNj1XIAg6pltkyr6JRLwKZeUy1jLZVb + jnBpLQEYVrYFALf4jhWMgYybdu/e9cTJEyd1VIqjVCdwTLh7dm2Vxl1GSH8kVB+nH8QfmqqMlRqplXVN + 2j+NJ9Xr0/XqeLBN04VZr44Ne/dLoOp6k826O34EyuZt426Pjh33yJb7MfrU5Jkc2bjjGGLtFwqTw6iE + Z22s4BCsPz506JC6bkL+IG01XOdsVS+HHqtHcDkEaYmUH1umahUwhh5phKuA3QAGu0MKWJUbw2XcJeCU + VkysZlCxBhdWpsWU7xZwq5Ytr1qxfEXHExiR4qQBx5YPYwiSfd29e7ZL52cHyifjtsu4hceEMzb1nwTg + p6hSArV6pqgbA4VSpQZzDaDRbO6VpTARQFZPREOH8WCEqtYNJ3qY8Zgx+7KmVp2Uj2Z/sqG45dJvwg51 + tQR1CA+pGsB50AY5Vq2Hb/eYMS5v33VI6nebDVDzdLpPBzAweOFd871uCLKy6+sy1lq8tZhrfdwgY8bD + EsVc7Qo5uJYtqxGswoV7LgMFl2n+HSkYrvk/Ro4Y2ZTK3YaC7x07dskeTBjwj3HwwD558pXh8v6ITZK+ + 6Dj6s3laaVhfoa5D62FaW08AlRYUrhlUFLGFCZEWstmYcDTKFAz80+3WxYiTDU44mArUnSvYLMz62CgU + J+EbSLbkbT0iX30JD4QH9CAm1Q2wKVghO0UXBJZw+R1+xofklT6YrMcf3pIpS6gsSw5Hp6jaeGw5HH6M + Yi6TKo25HMRwcBF7y0VJVaBcDxcKvqv5lG+fZGG13vd69epVnoXnXGTFsk5O93Fh1ynMU37YZ7g8/upS + mbzspLR6IQ+zLcxs10GRMVhTqFMry1+oVG2tMtGqEn0S5KsUfeyMZ3M8zDrou0bHDrAffbLZHj+0iAEK + PV6hfdkeH6yXEyeRESOW5gPsQMfumMBj1RpcA8z2NB6SmQs3SUqLcUiiMhRuVQeWSZXv45pLDgCz0pLK + DYYf4wEMqtYGMhhvXV/XKVeTKnXNd0G9dzWfTPv2gFs0b3F1dnZOFy6hzF21RuuCNm/eKgf279f1Pm2e + HCdTMo/LSwPQhehGaIDprC7auj2pTAdSFWlumOWmNg2XON+qk+quoC0aOvQu183shEOJnJelSm1+Nlas + QXaTAhiFqvzYMnmpb57GTyrVg/Ktd9PJUBPBmuppdNOr1++Uco2HSOVHZpl6H/XKBeAw3roBDD9xEI5O + MeZ61Wo3yLlk18+VssyY6Y7VpsAtAyza0s0m074dYLjm/x4+fEQLqjcLheascmQZ5xa46azlmdK48zAZ + PveIvJm2S2o9QXAAqq4W1sNDZb1wXD9sY73hHCtnamw6TsG5WicdC9aCNrY2DxtVUyhUV8kYKhYgWfjm + hxY5ZuyHFgn45X4E/IUq8MCBA07FsTLjeOyvecXGYJl78LsnMS+7buNOKdPgc7nnoanat02Ot4njyuzj + cujRhh/PFm8VcEtmyz7mGlxChkt2BsgE3PRbTheiIL3MblQRsOKepaxcPMX6qY1566XH85/J85+jjASA + H3hitS4JqQO11klQKMtdqNBcV15KdVoNsSrPVUeoW/WD+66QzQNmtaJXZ+R6AdHmZOmCAZUVFTp954H6 + iXgML3alLZd72i+Vl1XBAKyQAE3jMGA7VUbqdXPXXq1R674XAd6wQ0rX6y2V2kyMJg0Yb80tY8JeJw3i + hCpWLgDrpIFX7yxkyuaeyyFjTgDcgm6ZNhWKJWBrqeBSTb4F4CaoysBqvo7bseBrKWqUuTYocxlW4OXl + yaefD5HWz86V8YtOSLvX89D9AEB1tau0fbC7h+rrhq2lUn39sC8QTzyPa4v9pLpB9XXHLra6wf8EpboZ + Hi2bcVDDslUCfr7POnSPTmpsNcgHDLSLq/mAOvC87pVr3zkgX5w8LitXb5WSD34oFVuPdzNCBtbmc2GE + y+k+7QbBkClH6vVZMlpLpixbtq4QWkBV1wyghEv1erDqnpsS8MRv5qKRWF303rvv1dq//yBUa6vhCZgu + eubMWdK08wAZMO0AKjJ2YMiPbtWDRZ0wK/y1yt9V+hMqKvxZ5e8Lw6281KoizKV6t5pYLREBVIXarA6z + Ye92E2ACqk7fuZYFb1rZqNWNGF58HGPjr6+Sg4eOybGjLCEyuImQY1fskzAPNLllkpU+baWUeACAW020 + REonDAxsPuVGfVw3I8RkSg0DGdHQow1kuEEMwGXMdW4ZUJ1bllJNJ0nJJhNh31DBrVu1Krp69ZpuLGvl + 2iACZlF6zsos6fL0J9Ljw/XSZ8IBtxaHIHMBFUao3VbCbcIUqi3fsNa6Klqgpu40riGOlRh/rvd6pfqC + Nj9V51pOtlOtCjY0B9bXJLM+iqUzNTovkaU5e+XLL45pESAtH+DIDXv4/h5r9yO5pKJPf/mFdHtxjNxe + +yMFXJlwXZlNpFzE2rupYLjiSlSvm8+1cWUzKrc8BzJc3DXAMCqXgJtBvQFcxF3GXqpXSjae8PUVjJX0 + F3/+2ef1d+/ep2uDuLqPgHOwLncY1tjW6zxWBk0/gqm19Rj2Y8E3FUqgHqqplcs3PNT7XTE4ofm64YRK + RFeNaIp05uqLtYA8mH+NQEZg/cR7UBPFCgu3gsBXWHAq7+52C+Xlz1dh9O2Y9n8PKGBTbbILTlAs73MP + BAGf+sLcc8WG70np+n11zZGf7rvHu2WtxHBumXAxSc+4W6E14i6hOriMuQq3Bc3BZcwF2DKMuZHBJcMt + l26isVdKNQbgRt/ARWMzkz9hwXUPLnxagGWbVPAyuOclixZJiy6fSq8+m1CZsRuT2wS5EkAcUAfV1uXA + AIhgrcI/rvT363XsunerLDflsV3zReP2eXyfVyRdrnfBWr3o6qB8sVsIlSsIrKrRCt6qd8Ci8SVbEUOP + BgpOVKmBN4WboWTV2WGs+T2BiYfuL42Wv1Z9Q1KajYRKZwnBRsptC7gwg+oSKoKNXDKhWjKlbQTXxVyo + NwJLqBpvoVwFC/esNuHrA36gdu2LBw0c2JhbCi1csFS3PyDgldkr5f2PB0ud1Lny/qgDmCzIVfUSrgdq + EM1qogoicekGzqNK/2SAPlZaXZO/z9cVe4C+aoLnak6htt6HE+1WUWFF5h6qLQ/xtcgsfLvn0QXStOdc + yV23A12dI85Fm0K9xUAT4R46xP7vcekzZK7cXv0Vuav+Z+qe71ZXjISKYDmAoYq18hq27OdWCN2xy5Sp + XEumzCWbW47hEqxLpky1sJJUrsKdIHc2+pouGns8FeeKPy4I4+p5AmZyNT9jltRr31d6fb5TUt/ZhD8a + AWZFQBWqrsMhSGtNbWY12GKiPILj1+s4WGGROEFSgXavtVrM5qsVXQVFBNUtCbGpu8D8+h+Wq0ZLREzF + jIXNZbqsyN0sJ49j7BlZdUFq9aCp5mMo9z2G8etPAbdEjVekZK33pHzTEYA5w+Ksc8ceLsGqghOSKWbL + yJpVvaZcD1iz5WbTnHLRFWqKrFldsrnjEC7AAu54ubPh+AuPwYi9P+zd+5O6HILkinoDvASr6LPk9Xf7 + S4Pu8+TlgXt0NV0N1CoRqFdrjc4GldUOfvWcLdkwM7Wxbom1wvEKOzvn506Fweo7JkRmvmrCqZTfd8Vt + cd1xUFge1ENZHbKt/an6+GIYl4rAMG6cgmTmgcfGyaDRS3S1Beu1jx7h0KQlVwcPYs8NHB8/dgTXD2Mq + dIP0gFu+tdpLUqLWO1K28VB0j6YCrOsK0SV7t9zaXHN5dcvWxyVQ75atGzQdaqVyEW9pTKYAVV0z4TLW + 0jXDHRtcU++djWANARhWouHXUDB2hyuEEpxuqzAcyU1NMrCJyGIsxJ43h+r9XKT3dmmPxIpjujWhWKrS + gHozmASmGWvgMn2tkl+fE7WuIkKBReqLXazVOnlLVKcWkocwvUp9q2ANMMHaZEBgqEeuAEB3NRwizbqk + yccD58i8xatlXd424bDs1m07JTtno6RPzZSer4ySivXfkr/c+7KUQreobONhUgHLPjXORuaSKFUt4AIq + TQcwqFa4ZarVVAtTd+zAAq72cSOXbMolVIu5BKsxl6pVK9EgHfY1FPzaq69VNfUuUsC6xxO2/XsXsbdW + x5nyt747tc96H9SqUFGExvY+BWpWPVpB54q+HTSFrUBcIXiCK7VJ82h5B2MmPw9dLEpkfLIUxtOEFXpc + redWDsRQqVwHN5rxAWTArUJrNx/J0Qy5q/EIKVX3c6nQ8GOp3ORDqdrsA6nS9D2p2OBtKXX/G0imXpU7 + 739PytTrKylNAbv1NIu3YTIFpWqWzJgbwXVzuQnu2CuXLtmMqo3hmmJj1U4y1dItm2ph4+WO+ulyR4P0 + C3PR2IvqVxkZGY9vwGq/2VhWQsALkGQtXThXGj32oXR4cyPUuw5qIEiuVAfMjoRmauWxhxcvjQwSHADS + ZIflLYHqYui2ICtemIVVAG41QHQtVKauyvPmFOrObT7WzCtWYQZ2LxKtKs44QVCZtVCtJyMjHi1lGg6S + UgBZqk4fKQkrXa+flG00RD+r0HISFDvDRqRUuS5LJlyfJTvVlmtJt2yu2RRrpqpFe1ez6YCKmNvUxdsm + dMtToFhzy1RryUYObkMqdyIUC7iwOxqMl9vr0y4QcGqXLiV3Yo53Cfq73FSM60+54eaAAUPlvkfSMOa8 + UxrKSqiBSjK4Hmo1wDPzSyJNST7+ReDc51FcVIC+QI2t/57/LR87Q5hOkb7OOJpgj6HGdVCJUAnY5mnR + QrmV1VyVxSOEjCFG9mExL1upzTSNrxVbT3HtdFdtQbC+T+tcMd2xumQ3nsx4i1WBHm4ZHJdtPkOhMomy + RMrirSZSBIvWwJpRsR6uKtaBZQuoUK/CldvrXQBgdI1+mDYsrQk3GePOcNwljntQZS5dgs1OPpKWz2XL + Ex9sBNylCpJgE6E6BQWq0mRG1+HE0O04UW3xGllCjD+3dbNmtlArBlslWm5prrdKew/XAU2oYuTnnMaz + qTxCvddDDdp7APfuhzES5YzHNEugCH2uKraCwkWrCZQ3uuQALlRbllAVbKBcB1cBQ7WWSMWmyZTv46pL + NtWqW4ZivXnAt9Ubd2GAMd97ZU52TjdupzDTbQPIkaupE8dKldb9kFxhozDJgsszpVZ1iq0awQK0x/yC + qmSFxZBsTQ4+T6hdshKXKLsNS19CFxsVjBMmV8PTHFgPOMEFc9VAbLFavWqpWMRfB9YmBpw9FIOtSLAE + qnAJFubUSqgR2MAd26DF+eDCLYdwG8XqpXJLNoRrhlpDt1wCqtW4q8pVuHJb3bHnj8HYLrDsfqzb5ajV + dGzGRRe9fFmmvPluX6ndcao8/elW7eZwiwEFBKUl/IGdigg5+qPzWlgTrKvXrRjNCtJYCM4YSRU6JSqw + sPo/PHfH6mbjdbRemdYmmodqijUXrG7Yq1WPPVSn1FCxqtTAdIjRmev6pAAsjUBTWjjXHKhWY65XLuNt + Eyg3Auu6QF65CtYptwFauuX6NKiXcOsRMFyzgh3n7dyAMaF/yciRI5vt2L5Dt+vhLq3caXXZksVS/9He + 8tDLa6TdK6sxFWZ7SIQA7wUQ/rH1GlWkx+5ca5PiY79cQ1fTBWq8V9WXBFV/J65rMqD2byXCZY2xq6KI + 4NIFx/HVxocN6j1YY2tmU3mmTqy9bW0Qy6OlpbSagy7NbMRQGNqyLWfB3dLoegnRsuQUXC9PwIy3yXCR + QJWF+YRKIQNwGbpmB5ltacRbWqnGUzTmltKkyoGmgn3sVfU6BQOwQUZbd9y5AWOXud9jW97UVTlrdOMt + AubkwqiRI6TKw+Ok67t5Urd7JgDzD2wukX/kyj6uuT96ZS1VCZSVoDJ8lg9YEiytPDSzIvFAjfrv2Wf8 + dywxilsDaurUifZAqTFcxldTbAog3tl0lt6v6sa1yoCuLawKZoTuRdWjtTyfK9Ue5TkNDwFUfFv9aeib + sk9LuIFBseWQUNGoXsbaUnC/dLV3QI231Rknf609Wv5y/0i5qcZwuaH6MPlTtaHyxyqD5Q/3DlIrXnmg + FL9ngBRzVrzyAFwbINfh+h/uhVUZpPf/qeoQfH/ouQH37NHzzu3btqt79nspZ2Uul5ffHY4ylMnS5Z31 + EVwD6/7I+sdmIXd47q65e6wW2IOL79XfSfieX4Tl2+A329m997C/6qokDHKQBYdgFbAlSz6m2jEnAjKg + xtnS8IlFMm7WFlmYtVsWwRau2CULlu/UlrY422zJSrOlsGU5OM7eqcdzlmyXUVM3SOdXlyEbdhkyFFoK + rpcQb31wnPwZAAnvDwBBWEUr9ZPCFfvKteU/C6yPXFsBVt61FfxnwXW9n/f41t2P80Jm5wb89ltvP8CJ + BW6EScDcnpd932ad+kizXjnS/NlsDM4vxB/Z/aH9H9vBjf/oDg4V4de7cs2rO058GFzXJILs1sfqGlkP + 0lRpv89rNteaX53BJLsDG8K12R0zut/qCAe56/ejbOeknDjO7STMjh09qHYUOxAcwbbARw7tx0bj+zCl + uFcOHdiL6g/aHkxG7MH5Hvni+H7ZvHWXVHtovFx3LxRYdbAUu7u/FKr4Ocz++NemEBRaWCGafgar4Myf + +2vJ5/4+tv53+dv6e/wNPT474KpVq/5s6pSp7fiCClZHTpkyS7e2nTVjOkZx3pU2L6yW2qlLsNuLuURf + iqKtS1A8YFWNh5DweVyfpHAc9PheB0i/y991/w6TnwIsSoqcKk2tUCcyX53N8Rkw4ysnALR7Y7M8JZvM + kiffW6lw9+3bh132dqntxIs5du7ciVrvndj5h7v/bEdZ8HbZunWr2qZNm/AuhnU6o7Z48RJsZzwX4wRz + ZOf2TVKj1Wfym9vfViVGAENQIVQH8toQXHQcQrMHwO7jA+LPw+PoQTk74GpVqxbZvHnLE5zU5/bz3M94 + 2dJl8mHvwfjjTJOWvbI1ceJuqXer+T8619S40hS9Fp7bnhIeePi9qJwl33cKgmm/6bsv3u3G6rS512So + Wv/kgGoS5fqv7OqUaDxDnv4gW86cPm5wFWwiXOxSoHCxFQWqR9di970sjOgthGfjqwGmyZTJU/C3moyN + vifJti0b5L5m78ilt7zgAPfNr9JYaaHqYhX7z+luvdJ5rbw3Dz64Ft13HgVjeLIkn1q+i4CAp8FF52JH + 12d6vQZ3Nkka9lyORVDmFgmqkm6N6/6wDmolQOA1ve73lNB7EqHpd/2EOL/jjq1O2MVI/S1XqMbrUGTU + N/UqdVBtes7uqehbD9Nnx4BqgxI2MHFHoxny1PsEfEx27sLO7AFcgt2yhe9VWA+oKwB1Af4uTDpn4MGf + hh3lpqpNVsCTAHgiXimQJ1Ubvya/+vPTcMefAi4AF6jOwC0TnN6Dex3Ewmhpen4udes9dP/ePWtbsILv + qVTpov79+tfegj2LCZfG/u/SxQukcadB6kprdVmMP551+vWP6OKZur5g0ZSHHq+1MWhmNk9qQK1NNINt + ZtDs9xPVaUp1VRJ+gN8rlLM3Ok1nMLXrE1VS2HAirUSjmfLUezFgqphq3bBhA4oJs1HYsBBvTpmNfISv + 0ZkBw0M/jZ5tqil3sil3AjZuGz9+vGzZtF6qNnpVfnnTUwD8iSZRhQkugFQ4BBZAvDZSaAjfwYtAmqo1 + hnuFe8DRw3AWwP9xySX/iR3m2qxdk6fvFaAxk545JV0qNu2tw5LaV3RwrVgbf0Bf/un3jYgKud2Et4fl + 7tdJcD8Z7o71N3Gf/bYrBCcgd59VRThTmPHAfjQ1B4BROYwD6EEmDyHa4AQU3HA6ACMGf3lMXfDqVasx + 9s6YmoGHe5ZWi84E3BkzDK6CVdUmgk0fl479qcbhJVnrFPCvbnIKDuGGAN3xteVj1V6Lez3k8LpXdfgA + 8PPEc8Rnl0WjLVjBlSpW+vXcOXO7LMMWvtzzkIAZf9PHT5fbHuirfV4D7MD6mRPdDIS1vXF1vq1G99dc + /a9WN+CB0M/ian79nh/287+pq+rM/IQ54YXHpshwVImqtN1mdOgwGvD3k+zYbghQ/chTBRzfXn+qdHt9 + iRw+sAtTonyJB16vM4svvDKbOTNW7hSFOwVb7xMuFTsB71Iaj91e0/GehbEyZuwY2bwxBlwICg7dbiGF + aaZJEiB7UAbLYPNYz1Nc647jGOzuwed6v7tPv8drKZ8XDPiRhx+5Lg9vBuO0IDegpovOylwmb/VOl1sa + YBkGMlpVbPDHj47VJXINa7z8IgQUfken0/y9OqZr7pQt19bS9FqkSIuXeq7K5Pxq7GZ9hURcKeHHgznY + D8PokrX4bY404ZiD/rdjmO+aCgOldc/JsmfnZiRNc+COOSxLsHyXklctEimn2klwx9xHk+44AjtmLF6R + w/cijcYbU9Y6Fx0r2NTowAaK9TAjqClOlR5YCC4EebbPPeDyZwHcunXrO/m6N744ioD5noCVK7D1grwr + t2OEhjGQ6rBFUW6fCF885veN8MsuFJBfhsH9JPx2P/E1D1FnYdy9Njnuqw49RJtX9UaQUekLXS3HgKMy + GAfTDRsqXAeVLpnDg7c8OFYHG6iu/7nzU2nVY5ICNtWaS2a81QwZYKfAHWsSpWC9asfhtTdQ7RgDO2rU + KLw9ZSRWeKyRKg1fkV/dCMDlPlWFmvLi1lRrVghQ9XNTnt3nlOnV6T9z6jRlJ5g9GMG1ghX8aLt2lVmW + MgmuOT19ivaD1+RmS9vHewEw5kGhMi3xdGtVw9aWNxr42IJzdZ12npJwjwEK1+N4JVYAPJsw93XD7t6k + GRsCLOem5jjfqgP9OtjvxobxGcd8//rAGB3aY9JDK4IE6LJSfQB4MvZf3qzu2OCy90C41v2haidMmKCq + ZawdO87gEize3wSwo/CmsxFqG9avTgBcqHy/SL0KMzKXIUdQw8+84gk96TvuQfCwPdQk6PkBV6hQ4Xtv + vP5GXb7rj69nI2BuOL0KqxYaPPKmAqZb1a0DdH8IV4Gv5+HKc1sslaJrbGLTgm41/kbiZ/7cftPXCYcl + Lr6GiW08x2p1TQaxnJqvlrBzXr9LwY4G2EEB2H6Aa8OEBngSdt3bZFlymCG7WEu4FmsTVUuwVC3Bpg0f + jgUAaZKHN6OFClbAkSKhNLphDy1w23HS5Fy5Kjt26/YdU3jkAZyK+RDY754jBmMLpEvwNDbl/K+9XHGy + ziDNxlOd0mIMFjrZCjcPWFe7ObMFUga6nF8J58DrssewWt/doxWFCb8RuFb+lpa4+NZBjdTpy0sxkxOV + mtr4r57jf2sZzNrcikH86zBQz76oKZZgcRxZP/ktALfsMRG7tGKn9LNkyIy1zJDHJKjWwA4fnobt9dMA + dxhefzMUo1u5UqVB7KJNwf2cqw6AhaB4rPE3ycJrUTyOQfpkzJKswE0XFINLlLjjv/HyqYe43lcBQ8UL + UR47ZvQoKdVgEPZ/4DSZ+8NySYXux8RVb+7YwSrr74ng8XM+AARqUBWCwnO/p61XH1tX2Z9wLa4ZJkAm + SX7GxqokDCyPOV/K2RgPMhEslWvqNQXjVXXdJ8r2reu162MjUomxlmB9rB05aqSpFoolWFS94BV1Q7Gl + Pm0IAOco4F+6GJygOFWkuWwFogAB3yvQX0uxByK+J1GhvP+ahO9QuXbPNQY6v4v+/e9//6vlmcsf5zv+ + CJhumstDhw4ehC7S5wCMzNPBtE0/DG5ZXdrojwkvPtf1rPzcQfVqY5t4n39w4gcoKm9xILVATY11TL4y + wqm2OcDCSmL+9EZMtxWt1F/hFcFsjcE15ZpbTgbcB6/lmSDbNq9TsD5D1n4tXHLBqjW4XrVU7uDBQ/DG + ssGybo0B/tWNz8g1mmTRRTuI+sfnsbfQ3cbuOwIeud6zfRaDjV203psfMF6udFl29spUFrUTMC0LbzwZ + 0L+f3FzzE+xJbID9ji7+uAz/6B6Yq8jnwuToXve5FpmFSzL8PRE4D9DmU7VuyVUdRhPkWn3oJsy1IoLH + KG9Fe8uDY3R+VMESYgLcEGzi8WUlAfiJCRiBWoM4y0SKYPEOYPZrfYYMxVK1w6Fa75IJlUbVDh48WAYN + HKS2dvVKubcBBjqgYA84UmKgOkI38LByjK92XAjHds0bzvWaS7bcsd7La9F5wkOQH/A1V199ZW5Obne+ + L5evQuW7brlysH+/z+XP930MwIhruujYVpWb8dhXKPgV53F7l/uchd16n5qr2A+PWcmv63CSykijakMH + 01dDsHVwWVF4PdxxkUouxhKszrPSqGSaj735QV9W6jNp3m2CbMpbpYoNVeu7PtiuQuFStUOHMtbyLScO + 7CCAhQ0cOBDVpgNkDV5He6+66Gfk2rKYTUrBdGEI04EJoZr6HNAEuIHaFThhu5bf0XMHNjwuSMEAfM2q + 3FU9Ocng32zNlYQG+CNuUWsLoPxCKF1d7mCi5XX/mYHnNWcJ565yX78bPBz6u4FCtbqfpaRxy4xYzdUO + s9vDiXNzx/3NJXuLwBagXu0m4TrsspKfSTPsfJu3PsdGo1wi5eFaIpXoks8Gt3///hFgumgDbEo1M5CF + CCkE6o71ujONsRFUD7EfvEL8MPBYz/PdV4CLvuaaqwtzHJblOXxxMd9ny7dnD+jfV26q/qGUpit0EHXb + gOiYyysMdvQ5l1zo53ZNj3X/CK5Kd9D9d7SK367ZCjqWjlpbWstIDbKag1sC1YXXozIiiq8erouvRQCX + Fsdbr+ZQ2Q4wFNw0NR27pGdZvxZJpe/XhmCHqTtmrIU7pmqhWK9aglXrZ4AtyUIMBuBrnYLjuJukVOei + Y5ccxujYhSdATIDqle1hK/D8Lvraa64puma11WARLt9puw7vrh04oJ/cCMCloC7bC4ILofyGH35/iPDc + wcE9pdx9Hi4fBP99XVDlQFoVf2xWHxxcQyFaKcAt3WSadn1Yn6RJE6olTLlOvc4lJyZThB0nWwqd6kVb + yCm4MRavr8pZpnE26temWb/Wx1mqVsGqOx6k7jgCizylXz+z1XTR9V2SVcYAK5woseIxrqn564n3RPE4 + itGhq47VHH1ff98p2Vx3gYCLKWCMXhngcUj51+NJ7S83VvOAuQcTqu1ZnM3WHZfSvZncNQ8mWjhl62vs + O16Vrno/quL3MF01P5dqODPwLGabojVNxe4eYMAAtagC9oMWIeRYqRFcdcmmaoIl5EI4v6zU59Ko4xjJ + Xr4oGo3KnyEPjpSrqh2IvUhCwA6uAs7FW0UB+Jc3xAqOYSaCjZKswF2rKwcwb5GyzxKj40Qt4SEqIMm6 + 5hoHeBbgjsf/2XGyHntxDB40QG6o9oGUxB9Zly1yOYW2XF3uwLnzktHn9hDoubtHv6fbDPiWi5gNpLXu + XraA6QGXgnpLoB6Y/VrCZBcoNFUvXbJ2jUKwsXKZaBVxcC32IvHhOex3JT+XBh1GoSQ4w/q1QffnXLHW + q9crFy/7EpoCRhb9yxufdTF4gMXdwCz+4n8DLFY4VZyk9iAmR15ArwX3+ePEuF4Q4KuLMAbTRdM9882W + ees2yGA8rddXeT8CXFJ3cjHABIgdXcw8ZHwWXdNjWgAwBI3aX/0t1gDrAis8FGquJhjHt6LO9zqUhCbD + NeUSIhStWbNlzHbNQFscjs957NWroNEn/X2pvlgGOwKL2WfoXiORS0as9fE2IdZCpYy1yWATATMGx4AV + pAeqUJ2bdtcNWGDq1s9iZfNfvwZwvfFBuCalgBiMJKvQ6txVGIudre6ZgNcTMBR8fZX3UDMMN5kAz8BS + efmB2hrWO50ZMFtj45Vq1/BdNd6PFrXCdk7IUzGGPFaKYQy5yN1QLtyxV24cd30XyMdYD9N3j7xyTa1e + tT6DLly+vwJ+sF0ahmQnJfRrB2PQIuz+xPH27HBDBf/KAb42hQp2aiVkH38jgPi8HO0cUM/1GYGH0HEM + 2AX2g6/KWZnbfebMueqe09LGagzmSNb1VT6QO5Hg3BmsKCdUA8i9IUKgbplFtCkIwfllj7zXg+Q1V7Ef + XuMquoaTEW9HWYxVsKghdoBDuOaevZJ95uxU61ywQqWS9dzFYfeZKbif1HpoiEydPBbvJT6Lal2W7FXL + 1is2ubV+MAc6nnVZ9EAALhhiIYCluq2N77HjELg/9/dY6z1D/oejAMBXX30VVjOs7Dp71nwAHqvvp+XE + Q9owVMpX/QDVh1MUJqGW0BZLKLTF+lSseCsBWGxtUbI/t3WsEUj9zC9c9sc4B1BW+fM+doFurDnCwHrV + IrEy2JZceYtdsnfNAUwH1VTrMmcolqpVNbvj35XuLzXbDJaJ6SMTFDtggOv6AO6FgCVo3ucB//IGAC6D + uqmUgTAPJAYZQ8UDoEDZ+mN/ngjU7ivI+DAkPBT5FXzVVVf9BmPRHbmCn+6ZgFdiB7vRo0bIn6t/jOrD + KQbQQbUNP7AIiipWoM64rDEE6RYpG3hTrK6O0xXpbAGVi6rQ3oH2+vvSDKwalmoQLhQcgfUJlU+uorib + BDlSbaBcDxhtofL4Y9NFE3DrQTJuNF+2nL9v2+8c8TZUrz0EbqCjPhQMwNeW4XwuAEcK5XEMMjy+FvcR + MK95i8/9A+IegMgjhJ4hAXx+wFdeecXPFy5Y2I77bxAuLRM76UyeOF5uqd1HbiMIAgWYO2g8jsDyGla7 + 6TUeO4BcJOXXsobX3HWC1UXM+Ox2zAARbqRc75pdd8jiL7tIcdYcHWsyxRGtwE0nuGZ8VgGmgH1rkH9f + egAK1Qdi3dVg7fr47s/XA4vEC0rnd9euWSlVCPj6Xga4HKYrCU1Bu9YfJwENwYawY3XHD4H//NqyuFY2 + 9hBO4fkBX3755T+eOnlqy+WZ2cgmR8swAF6AFQ1LFi+CuobKLVyiiAXHBGnmQLv9IfQatxBw102h3FbA + by8Qn1OpvM41Ozwm3D9xZMqptigXWKlyLbEqwr6vg6sQE9RLsAbX+rnu3MdZtuqWTbFmPCb0/nI5FHxf + y4EycjgHL8wtny1Dzq9YA+vhGmDOJqEu+gYALusApwAyLQLKYzMDFZ9f6HEydH+uXqHswPyAf/3rX1/U + 97PPGq5C3FXAeA/tTKxN2rUD64DbfCw31h6jYG9vyE0+CBPbBvCcrYI3mGYG2+8bEV7nHhIJcFH4pm75 + HsCkabyNkyo99nHXd4sCt0yg7CpZN8mgmYXHplwP1uAmAh6RZiNT50qgPGD/ACTDZdZt04UE/JwBVrCJ + dm051IMlXPPnyde/Dnjv+rUtuCarc6dO1Tdv2orJ7HEKecKEqXL04B5p+9iz8scaowwwtukh0MQW17jC + XFVue0WoOdAKlWrVPSTwQAAq29vQ3qBuGRCdalW5kXp9/HWuOXTRDrYHW4TAVMUBWHXHicr1nytk2OVw + 0dVbDpDhw86v3DDZClXL2E247DdbRcfrBrgMp/gKgpZ0DfcUVugh6OAe/ob+jl3jA5L/IUl4GAoGjB3t + ymzdsg0FZRMVMCcd9uzcqlWVf6gxUoHdBpC3ASKNUG+rj1Xlei3a4cVvBBJD5+eECotawL4Bk/MKNwAc + waVbDlyzDWjEiZSeh+pVsOaeFbazQhp7vUt2x+5aBLhFf0kbevauTzJYDzcEOwQT/hwkWb/OAb7+eQDm + kKMHY23hCNYQ+yyFrbPwOOl70T35rif+Pn/z2nKDCgbctGnTm1h0R+UOHcpqwXTZgcVU73ySLsWqDVd1 + 3gYwBHqrQuN5fI0bgETA+Zlbca7X6xpcA5yuXSGqNjRTr+8GubirGXQcg6PRqwiuB+vVaxA15rrEKnLJ + /np5VFY66L8vPVCqNe8vw4bYUGOC9bOuT+iSfSJGuFQshzPNbBSMRXdVG7yBJOtvCrgwoan62DqoHmjU + UsFD1AqVQ6lR0ufJ5wbbg/UPiPs37HrBgEuWLHkFukrduKMOATMOb96QJ3MWrMQf/mO5BXBuhWJvBbCo + 5bHCBETf+r0iEs7xUGDYkffehEmDBLAE7eOu7xYpaKdS3ybEYJ9ceZdM5XLkymfMDnCgZsugw1g8EAMd + cNHNB+QDfC7VmnJjuATL8h2OY7NstmpDAL6BgDlyNTRSqELEucFk648Nkr9ukPk9/107tmv+QQiUn/+B + KRjwj3/845+g6Kxd5rIshTt48EhZgfcxrMlZKiVqvip/roOV6gRad6zaLfXQ6jnh2XUDbZuB+Guc4vNw + /1J7FLYhGGR93CDu+thLqDpy5cxcs4Euqqq18ec4ucrvlj3Iwli14F21dZM8YBt8KAwlX15qIAAnKrjg + JIp9ZIuzXrkGdqiC5dwxpxo3blgDwG+qgguVwb+RMiwJqANL0JHhHt6n9/qW9/GY9/G6fyDc93juvh8/ + CBH0ggH/53/+54+Gpw1HJr1OYzABc4e7XVs3SI2HBsqfao6JoRGwGuApQINux+5aHV4bJ7fgGu+7mfXJ + KGONYq4CHqhdIgM8UD/TqcAE15wYbz1gD1nPE5SaBNaD9rEY/dDCzjzgNLjofm40Kjk71gEQl0TRHQ8d + auZnn1j1QbijUAS/aSOWrijgF6QQ+qcGzsNwxx6ih5oANoTswYat+9wpPAF8pPpz7NHRtWvXSozDjL9D + hoxEJf9k+QI7qz738odSpHJ/Vexf64yJ4N4CiGaAr+aAYnnILdiX4la23GREl4sMgWsGRBTHadaM4yhr + VtfsASfGXVOu6w4BfOGKAKTnmPgHWG8+9uZTLgEHcdfD5eDD5YjB1VsM0CTrbLHWZ8g+3nqXTNV6uKwG + YZGeLj5r+BZcNAHzQQrUmXxM0OXSAtXyONmCe/y9+r0YtB2Hbv0cgO8qXfr6jRs39+TCMwKmkvdgIfTA + waOlKKbtqETCJGQ1qphKRVVjCJtVjlwD5O1P9w0zuITq4PrzuO/rukUEF8Vd75oNqPV13XEE1yuWbaIV + UrBwya4tjH6pAuY1HP++9CB0kwZqN8mUa6NZCRkyVavKjWNtqNoxWHhGuCzY27IZO+828oD5b6GnkFIQ + OHeNn8F4j97H1kN254Su15J/Jzr3D4F7WMoNO/sWDrfccstlS5cu68TqSrpoWi7GpLkfxW0135Q/P2AK + /isAqunxaC1bjcDjnJ/djKI4Ar6xJmqVUWZjqnXKVdCmWHPN7rigGOziMJWrSgZE6/cG6o3A8gEIFVsQ + XPzhFfggxOBBcl8LAHYDHQbWMmTWOieCxQu/UGFJuKNQAM8VhSzS46oHwuXaJa7wr9bobbn0hhcRgw2w + V2WRcoANM+hsCS0+5zW9R1sHXdvgmsK375i530hU/tkB//CHP7z4096fNOZLr4YNHYX/syNkDrLqowd2 + SJ22b6E/PFahMp5yzU8EmrAB9GbC9ddx/pdao6U44q7CBOQQMKHGAxvBoAYhB8lVEbhur+go7ipkp1zt + /pxdxQYzNK9iB7jlIBkJwMmqtXgbq5ZwLdaOUriswqSlp6frqkOuQNy+daMC/tX1BjiC4yF5uB5k0vUi + 5TCTlgJzD8N5W32A4ofIqfzc2yg99eRTFfPwLkLOCw8aPALLVybISWwl9NanU+TaSp/LzXDJN6tCDSaP + CVePadjUi+r9C9o/oNSmGNWLuGtZs1OuU7NXsPV1CRL3KmC0CtmuFVbzw5IG1ACfzahSp9TILWO0R6/R + bNDh8lKDpUbLwTJ6RJwhU72+sN1nyKZagrVY68FyURq3byBcrkbcgUVs1RtjExYouHDZwQYrAaIDqNe/ + uRXGd03B7vfDByJl+LkBY51S0VW5q7tzC6XBADwYsXjblq2yaH6GXF/1E7kJ49IKUm2UtoR5M7pAf/HH + AMwxZk2kVLmBObdM2FSxdY0I1MGNFGxwLcFi68zBLQiwXosgepgFtR7wEAAeImNG2YBFCDYNlZUWa0cp + XA+W7piq5apDLnfhmiYuXON64p1Yhnpf43cB+CUHeGQSSJ57I5yCjpPv8fd5dSf/Zvig0J2PODfg3112 + 2U+xm8zDfC8hAQ8cOFwWYq+Oo9gIrFqLj6V49RExVAeaYKlcgmZflxUZ5pphZwUcu+VItQ52qOgoY3Yx + uCDVWlwO1OxirI+1idANrikYgFsNkbEBYJbLxhnyuVQ7WXfY8XC5rngXhnZjwEMCgOcDGUMtGkEPQZ/l + 2Lv0RG9wbsAX//CH3+vZo0fVzZu2IPkYo3F43NiJ6C4dknc+SpNCqKwwFwzFJpgHPFr+WG2IU60D7CFT + tTpyFSdWPsbSJVPJVKpvI9BRl+hsrpnrf+PkyY7Poly65/IcVRriAA+VcWOGRaNRcYZsqmUiNRaJ1NlU + S7BcPM59s/bu3g7A76Gb9DIUPFSKpowKIKMMCecEaC0/S2z9NX+9oPPE3+RvJcEvdx4Fnzlz5v9Vr1b9 + T6jJ6sltHAiYXabteH1s3uoV8ucqr8n194+VP9dygGuNRDI10s5hXOGnqkXBXD4X7WOwz5rZOpdsLtq5 + 5YJcM7tJkXsmUMIO2xCod9WEGcdcD5ZweXxF6SFSD0V36WO5sMxcckGxlhmyxVqv2mm6EwD38SBc7nI3 + b9482b9vp9Ro8n4CYA/z/C26oinnMv+A5G/5QJgp7HMrmIB/+pOf/ASbfD2ciQIAdpUGDEyTudj5/dih + fdizsrcUwV6M6ooDuATMcebr7sUejQo4MLpq3w++m6NZvltkUKMYnA9yYtwN3bO5Zadc3zrVFkFLi1XM + hMdUG1n5oXLlXUOlacc0mYCarDhDZiIVZ8hhrOVOO3TJXrXc04PbGHKHnkV4C9zB/bulJgBfesMrUqQs + +v4KzAEpz9YDDI/PB/bCoRvgUecH/KOLL/5ej+497t2IV7dzVGvQIIy1Iqs+ivcGjRk3Ednwh4A7WgET + Ko0rD1iZQbDFqV4PWBMsnGu3yLtmQnWgA8DmrgFHBzt8kmVumTAtzsaqTYAcAC2ibjg2Oze4RdAWAVwO + IV5Zeqg07zQcpUmcHrUBi7jrk1+13ASNWz1wFx6vWm5ruHgxXxa2DBuW7pOaTT+QS68nYBQynFORBDdG + ipaHsY3s2wDXB+r8gKniW2+99VqU0nadg91mBwPwgAFpsjIrV44f3CXVm74mxaoCas0YLqcAWaSurjk5 + sfIDGzq44VUbAHbKjWKvAnagNf76BIqQzQy0qVTPI/UmwjXQTrkAq3DVhingFp1GYCcd2+fKMmSCjTNk + 7rTDrQtj1c6OVLtw4SK8JHsJ3sKaqXtYHkN38v6mH8mvr39VBysMGv7oIUQeB+fFcA8thOzPC7qefC36 + N+KH6cIAf//73/9R7497N+DOs5w+HAg3PT6dY9OH5YPPx+tmmzcRMMCy5fISgxuo18dhHXcO1OvdtKoX + oCPAXMXg1WuAi1Y05drYs1dyEmQP2sdbp15TK7NZg0q4ajgvgrHhK+8aJi06j0RdtCVR+WMtuz+mWrpj + bpTGWBuqNjOT71DOltzcXN2O+P5mH8FFAzAV7GGiLUYjTN86sMVSUODvIZfHsTe9HpwH3yPUgh8CVf+F + AaaKa9eqffO6det7Tpo4XZMtuur1KIjfij0Zy9R7X66rZoBZemNumbuT++TKdZNc/PVuuqjCDd0zjqNB + Dq9cr14P19Tq1Wst4mqgZJ5Trd49e7imVq9cjNtCuUVoGOa7snSatOwyCis6JiSp1ro/iarNwNaOC2Qh + Yi1Vm5mZKVlZWbISm7XmYlUId6L94uQRqeUAF8XgQwRLAYewkkCGUM8G2AMvoPXqdw/KhQP+zW9+81Ps + vtOGq/2ZSdNNT50yQ07jDZ1vvD9UrsZi6htrjkK3yEasCDc/YHaNHHRVMYF6wAY30QLlqnq9Jao3gqsu + 2sD6WBvDtXgbm4fLFoCh4Fapo3XpCgcs4n5tHGtnuwzZVEt3vAxvQF8BuCslJ2eV4KXZOlafh9fcn8JL + pms1/1h+fcNrYoDHJYFNOleF8trXNafuZNh4OAD7wgFTxc2aNiu5ZfM23f2Ogx4EvQlDmVsxNVbygXel + WJXh+s4Ar+CoewS3XFxdcwxX3TThetfsjjXeumtFCBVG11xUXXOYVHnYgXod2PzKta6Qh2sqTgJcepi0 + 7joG4+3c2c9GpMJ+LTclnY9thJkhm2qXR6pdhcV6VC23G87L24C54M1y+tTxAPCIALAH6JX7dYGe6/4k + V55yAa/VIVhvv7700l9gGK5dNmaVhgwZoSqegv7xlyeOynufjJTfl/kEydVgtTjBcu7aZ9CaRQeuOQG0 + 7/8Scn7QhZ0rjpUMVxxdI2ieE6Z30TxOVq2Hi9kZKNcbXXSbbuMkYy52ki0gQ+Z2wj5DpmqxUQ1Um2uq + XWeqxYuzsQP8ZuwtvVXOfHVSajfvDQW/DgVjPXN51LMVoM7iuF5cr/NzHlv79a0A8F8X8PfwX/NmzUtv + 2woVYwe8gYjDjMd5a9bJvj07pVLDt+VqzOgQcNw98vHXKVi7SA6wTuw7Nx0qmcpVwKZer2Rto5hrQM09 + O7fs4Pruj2XJoWt2qg3AFimPMVvYlaWHA3A6ivyxjaEbjcL7GqN+7ZIlSxNiLVW7dq2plntKb9y4CdsQ + b9E9prn1/5kzX0jtFp8kAY4BGtjQxiedJ38en/sH4ZwPQwqAp5zntTqhev3xZb+97FeTJk58ZGU2YjEH + PqBiuuyvvjyl+zdeedebUO9Q3TIwyqSjCQaDHSVXDmoxdc9mCjWCOzgGfJbEKgKu7tn3bR3UCmHG7OFa + zI3NAF8FwA91Hy+LFs52/dr5LkOOYy1VywzZqxYvy05QrYe7a9duAD4VAEb9WfnzAeTnF2IE7X9rfILq + CwD+9WIwIeO/7zXEdv+bNm7qORnVHgMHpUl/QM7GXlpfHDsozTq8J5fd1VfLcnQkS+Nvoorj7DkG6wGH + kL16i1YEPFoE2btj56IJF+qNAPMYcPMlVAWALVoeMzAwAn64xwTsiz1fVWv92mTVWoZsYGPVboVH48s6 + +AoEwk0E/IYUK4cJl3yALwTm170ndu0O9tcHTMi//OUvf4LptFbcEZ6L06jiURjlOoS3lTD5+HPVN6RQ + pcF4QRMgM5uORrAs/sYx2AAnK9gnVnFLwL475F2zbwnTJVER5ILgmnKLqplqPVy2V5YeAcCT8KAu1gyZ + o1E+1rLrY6plEpUXuWPGWqqWYPmWcA83P2AUO5SfcB6F+s/ZXogR/vl+8wLePprspqlgXsOu8Ddw03Bu + VMo+cf/+w3SM+syZL+XjT4fI/5T8AG/i4lu7wj5wAJdgCTtwz6Zec8umWsbfZKAFnHN0yrtnKtdblC0n + JlQG1wB7u7LUcHkEG4KvysnMlyFbrHXuOIi1hMuXd4RgQwU/oDGYCg4AVwhVeQ6QFfjZRDM99sZrZ/te + PsV/MwUT8I9//B//8eorr9bhEpfR2I1nALpNnIzIw+DHUYzDtun2uVyBRVeqYrrqQLlewTFgQHVx1xIr + nhcAOoBt2XOcXKk79q45cs+J8dagJsPFNFv5kXIFActUDN5ka4acqNoN+WKtqTZ2ycmQNclqHgCu4MCE + sHgcgLxO74mN59fp+YUC9vdFoL8ZYK/iP1x33ZXzMuZ14l6WNvgxDOuZJmAi4hBWQqyVW2q8hy18h+h7 + 9P4AyAmx1wNXBRtgM4J1cHGc3zXTJbuYq0DD2OvU6/u4ziWHrjlRuQa3KGZ3rig5AoCny6YNq8Qy5HWR + apkhe3fMDPlsqk1w0V85wDci6cRwYnGFNUGuA1AF500V6s5xnPBZ8nV3r6k6+M7ZXfo3A+yTLYC+qFat + Wndu3rS5J98tzMEPuurZKM47ffKEpI2eIleXeQdgh6iSw9ibrN4EwAnqdTAJ3as2aj3gwC1XKDhb9rE3 + dssxXA/40SdnoCRpvYu1cRKVGGsLdsn5FEzALT6VXzvABYILQevxJAeY7bnMlG3qTjw2DxAp/psD9pD/ + C/998N4HjTZvgqtGUR4nIgajb5yDwRB2FXq98hni8cf6Dj9m1pF7jpIrr17nlr2affyNMmgP2EENVazu + GXOuhJsPMFxyhbO7ZsKNAD81C+ugNzl3nNivDTPkgmJu8rWvTnOgwwMeG8ALVXo+kOf7PHgoAtceQP72 + gOmur7jiisvxIovHuKclC+QJOQ3tdmSZh/bvlcYd+iIe93dJFyEzJicC9f1fumhLtMx8klVU3XHgmuH6 + iyKxKqpwzYpqawouWoGJlYOrgOOEyrtlgi0WAG73JEtttuqAxTdRbQj59JfHNQb/5sa3pDjGiWN1eijn + g/dNPw+UXWHitwPsVPx9uuoHatcusWH9hp7zMhZpVs2uU/q4SQC8D6A3YNVAb0AeoJD/UBmQo9gbgnZQ + HWCF61wz3bNCBlhLpoK+rsJ1Co66QmcDnOiaCbhY+dFy+Z0j5KGes+XAPns/4YXG2rOp+ctTxxzgtx3g + yedxux4o7zuX8b4L/a3vBvD3APj7F1100Y87depUbfu2Hfo6HsZjJl0zsWvtV6dOyka8ZuaWGu/LlVin + 80dALl45Cay6Zqfc4FgBO6gR4AiyV2+ie2a81cSqINdcAYBpTr0KuAIAlxgpbXvMxWtjd7l+7YXF2rMB + PvXFUUw2fCL/cyMB450R54VyPrAFfX5elX97BQcJ1/d/+rOf/qJf337NWZRH9RrkNLyWdiEG30/J5BlL + 5bp7PsSCbLzR+h5z1ZZBJ5qqVNULFwyleouVy2veJQeuGW6ZrtkAu7hLyBXonr1yQ7ijFS4V/HsAbtN9 + Liox9hbYr72QuBvec/L4EVR09Abgd84BeLL84Sxq9dfP9nnBKs8H/LsBHGbVxYoWvWbypCmPbcjbpBup + ETBd9tLFy/BewOMyfOwcue7u3oCM8WpALo4MOx9kBWxG9UaQVblQrV4LY6+PufFIlarXm4+/Cco1sAZ4 + jAHukSEnju3/TgAfR7VLzSYAfFMIuGCVEmJ+m4JrsV0XHF84/EnfHeAgHv/gr3+9+U9LFi/twp3ircTH + 5o5X4k0uZzAR3j9tOsD1xospADgZshvkSADsIBepSLhQLM0nVC72WlLlAEdgw+TKXHOxChZzI6uACgvY + VaVGSzW8ZIRDjqynOnRw/ze0A3hr+GHZilBVCkO2v/vLe1AwNlIFoGTVnQ/quQD7754nXn/ngBmPL4Jd + XL1atTvWrVnbHdsiYmXeKIVM2LmoCDlz6qgMHD5dilf6GK9/wdQiVKzuWuFCpRqLnXqDpMqD1TboGlmC + FbvnWL3JrpnzspY5q3KdeqngoqyAwJBih6eny5SZWTJ9FjZ/m5Gp7Zx5K2Xu/AuxHJm3MFcmTcuUFo/1 + kcuuF7nmDsyRY6IhBByC+zbHIVz+jqk8wUt8t4BDV/2DH/zgxy1btKyIQRDM0KyAgg0yu1E5mGo8gyxz + ZPpcxOIP5fIymCOuBGiAG4LV5CpSr3fbYey15Co/XIBl3A1ib7FIvUlwVcFjMTJk1RBX3DFAfnvTy3Lp + dd3k0mJd5NLiqWhT5Vc8zmf2WWxdceytm1xxM1Y1YGE5ByRitSa63m8DOPm7Bbjx7x5wCPlHP/rRf3Xs + 2Kn6NoxXL1mcqW7aKzmb7vrLEzJ9zjIp9eAH8jv8IYp6yCFon2RFsGP3nABXkyufWHm4puBiNLpmNadc + 55rpnj3g4hU4ST5KCt+FrXjveF+uvu0tufp2FDHc9rZcxWO016C9RtvQ3sG5t3dx33ty7e0fSuFS/eW6 + ctjRQGPs3w9sQb/9xwpT8f9lyt8HcBiPL7nkkp92f6J7rS1Y37R40TK4aa41prvm7urLdbSLb+qs2qI3 + ulBcVsoYGyiZgF3c1fgbDGjkB+y6Ri5zJliLu0HszQfYqZdwYcUrcE6VasbDgHncgg0PCdx5bHhIynnD + 7wHqdewaYcjwnHAreuhTgweAx7CKruWxWnhveJ7/wSHcIuXwUFX8pGtUb1VQ9ca3vcb+MewHgPyz1NTU + 6ihGS126ZHkq5pBTsVoxFeU+qfMzFqZ+efJEKgZDUht3+Dz1irJ9UgEUNsSswtBUgFXjMaAGloZjb8Nx + 7G0EjkemAixsVGCjcUwbo1a8/Fi0tHGpUK+zdLS08bAJziamYizZ2SS0oU3G+eRUgEQ7RQ0wnE0NjsPr + OK6Iz2i81x9H13j961j824CbWqjsuNQb7303dWz6pMf+P1GT9NNQELkfAAAAAElFTkSuQmCC + + + + True + + + + AAABAAEAEBAAAAEACABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAB + AAAAAAAAenl6AJQxEgCUMRQAmTIUAKg/GgCsPxoAsz8cALo/HwCqQBsArkQeALBAGwC2QBwAsEQeALpA + HwCWRiwArkwqALBHIQC/QCAAskkhALBLKgC/WDEA3l0tAMJcNADGYDkAymI6AM9lOgDKYzwAzWU8ALxo + TgCkZlEAsGhUALptUQC9b1MAv29UALR1XwC4dmQAzmlBAMpsRwDVbUIA1G9HANRwRwDRcU0A3XVKANp2 + TgDDaVAAx21XAMhtVwDKfV8A5XJHAO1zRQDhfFMA5X1RAOh/VwC6g3AAvYNyAO+DWQDNhmkA1ItuANeN + bwDBjn0AyYx4AOaKZADui2UA8JFrAPSTbQD0lG4A6pp2APeceACLiYkAkJCQAJuXlwCloaAApKSkALGw + sQC+ubcAzI+AAMmRgQDMmocAzJuJAN2cggDWppMA16qbANesmwDhoIcAzqyjAMuwpgDEsq4Az7SqANuw + oADFtrEAyLi0ANO5sADdu7EA3by0ANDJyADR0tQA19jaAPXk3QD/+fIA+vv7AAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD///8AAAAAAABKRgEBRkoAAAAAAAAAAEpFSEtfX0tIRUoAAAAAAEhHV00tDw8eTFdHSAAAAEpHViIM + PV1dHwQvVUdKAABFVyEMC1JkZCQEEi1XRQBKSE8TCwtSYGQkAxISTUhKRkswFRMLUmFkNwMMBx1LRgFf + JhsXC1JhZDwDDAkUXwEBXyomJRtSYWQ3AwsLFF8BRks7JSslU2JkIwULCh9LRkpIUysrLDUyMRYbGBdP + SEoARVtQNTVAYmM/GiY5WkUAAEpHXFQ1RGRkQiU7WEdKAAAASEdbWUNAQD9RW0dIAAAAAABKRUhLX19L + SEVKAAAAAAAAAABKRgEBRkoAAAAAAPgfAADgBwAAwAMAAIABAACAAQAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAgAEAAIABAADAAwAA4AcAAPgfAAA= + + + \ No newline at end of file diff --git a/Hyphen/Plugins/Forms/LocalizableDialog.cs b/Hyphen/Plugins/Forms/LocalizableDialog.cs new file mode 100644 index 0000000..4529ec9 --- /dev/null +++ b/Hyphen/Plugins/Forms/LocalizableDialog.cs @@ -0,0 +1,103 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Native; +using System.Diagnostics; +using Virtuoso.Miranda.Plugins.Resources; +using System.ComponentModel; + +namespace Virtuoso.Miranda.Plugins.Forms +{ + [Flags] + public enum FormTranslationFlags : int + { + None = 0, + TranslateNonReadOnlyEditControls = 1, //translate all edit controls. By default non-read-only edit controls are not translated + NoTitleTranslation = 2 //do not translate the title of the dialog + } + + public class LocalizableDialog : SingletonDialog + { + #region Fields + + private const string MS_LANGPACK_TRANSLATEDIALOG = "LangPack/TranslateDialog"; + + private FormTranslationFlags translateFlags; + private readonly Collections.ControlCollection nonLocalizableControls; + + [Browsable(false)] + public Collections.ControlCollection NonLocalizableControls + { + get { return nonLocalizableControls; } + } + + public FormTranslationFlags TranslateFlags + { + get { return translateFlags; } + set { translateFlags = value; } + } + + #endregion + + #region .ctors + + protected LocalizableDialog() : this(null, FormTranslationFlags.None) { } + + protected LocalizableDialog(FormTranslationFlags flags) : this(null, flags) { } + + protected LocalizableDialog(string dialogName, FormTranslationFlags flags) : base(dialogName) + { + translateFlags = flags; + nonLocalizableControls = new Collections.ControlCollection(); + } + + #endregion + + #region UI handlers + + protected override void OnLoad(EventArgs e) + { + if (!DesignMode) + { + if ((translateFlags & FormTranslationFlags.NoTitleTranslation) != FormTranslationFlags.NoTitleTranslation) + Text = LanguagePack.TranslateString(Text); + + foreach (Control control in Controls) + { + TextBoxBase editCtrl = control as TextBoxBase; + + if (!nonLocalizableControls.Contains(control)) + { + if (editCtrl != null && !editCtrl.ReadOnly && (translateFlags & FormTranslationFlags.TranslateNonReadOnlyEditControls) != FormTranslationFlags.TranslateNonReadOnlyEditControls) + continue; + + control.Text = LanguagePack.TranslateString(control.Text); + } + } + } + + base.OnLoad(e); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Forms/PluginDialog.cs b/Hyphen/Plugins/Forms/PluginDialog.cs new file mode 100644 index 0000000..a48e1ab --- /dev/null +++ b/Hyphen/Plugins/Forms/PluginDialog.cs @@ -0,0 +1,171 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Threading; +using System.ComponentModel; +using System.Reflection; +using System.Runtime.CompilerServices; + +namespace Virtuoso.Miranda.Plugins.Forms +{ + public class PluginDialog : RemotableForm + { + #region Fields + + private static readonly List ActiveDialogs = new List(); + + #endregion + + #region .ctors + + protected PluginDialog() { } + + #endregion + + #region Overrides + + protected override void OnShown(EventArgs e) + { + RegisterDialog(); + base.OnShown(e); + } + + protected override void OnClosed(EventArgs e) + { + UnregisterDialog(); + base.OnClosed(e); + } + + protected override void Dispose(bool disposing) + { + UnregisterDialog(); + base.Dispose(disposing); + } + + #endregion + + #region Properties + + protected MirandaContext Context + { + get { return MirandaContext.Current; } + } + + #endregion + + #region Methods + + internal virtual void RegisterDialog() + { + lock (ActiveDialogs) + ActiveDialogs.Add(this); + } + + /// + /// Remove the dialog from the active dialog tracking list. + /// + internal virtual void UnregisterDialog() + { + lock (ActiveDialogs) + ActiveDialogs.Remove(this); + } + + public static void CloseDialogs(PluginDescriptor owner, bool force) + { + foreach (PluginDialog dialog in UnregisterAndGetActiveDialogs(owner)) + { + try + { + if (dialog.InvokeRequired) + dialog.Invoke(new MethodInvoker(delegate { dialog.Dispose(); })); + else + dialog.Dispose(); + } + catch { if (!force) throw; } + } + } + + /// + /// Gathers active dialogs of the plugin and unregisters them. + /// + /// Plugin. + /// Unregistered dialogs to dispose. + private static List UnregisterAndGetActiveDialogs(PluginDescriptor plugin) + { + Assembly pluginAssembly = plugin.Plugin.GetType().Assembly; + List dialogsToRemove = new List(2); + + lock (ActiveDialogs) + { + foreach (PluginDialog dialog in ActiveDialogs) + { + // Account only undisposed dialogs from plugin's assembly + if (dialog.IsDisposed || dialog.GetType().Assembly != pluginAssembly) + continue; + + dialogsToRemove.Add(dialog); + } + + foreach (PluginDialog dialog in dialogsToRemove) + dialog.UnregisterDialog(); + } + + return dialogsToRemove; + } + + public static void ExecuteOnSTAThread(ParameterizedThreadStart threadStart) + { + ExecuteOnSTAThread(threadStart, null); + } + + public static void ExecuteOnSTAThread(ParameterizedThreadStart threadStart, object state) + { + if (threadStart == null) + throw new ArgumentNullException("threadStart"); + + Thread thread = new Thread(delegate(object _state) + { + try + { + Application.ThreadException += Application_ThreadException; + threadStart(_state); + } + finally + { + Application.ThreadException -= Application_ThreadException; + } + }); + + thread.SetApartmentState(ApartmentState.STA); + thread.IsBackground = true; + + thread.Start(state); + } + + private static void Application_ThreadException(object sender, ThreadExceptionEventArgs e) + { + DefaultExceptionHandler.Create().HandleException(e.Exception, null); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Forms/RemotableForm.cs b/Hyphen/Plugins/Forms/RemotableForm.cs new file mode 100644 index 0000000..1935354 --- /dev/null +++ b/Hyphen/Plugins/Forms/RemotableForm.cs @@ -0,0 +1,42 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; + +namespace Virtuoso.Miranda.Plugins.Forms +{ + public class RemotableForm : Form + { + #region .ctors + + internal RemotableForm() { } + + #endregion + + #region Overrides + + public override object InitializeLifetimeService() + { + return null; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Forms/SingletonDialog.cs b/Hyphen/Plugins/Forms/SingletonDialog.cs new file mode 100644 index 0000000..e1fe92b --- /dev/null +++ b/Hyphen/Plugins/Forms/SingletonDialog.cs @@ -0,0 +1,134 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Forms +{ + public class SingletonDialog : PluginDialog + { + #region Fields + + private static readonly Dictionary visibleDialogs = new Dictionary(1); + protected static Dictionary VisibleDialogs + { + get { return visibleDialogs; } + } + + private string singletonName; + protected string SingletonName + { + get { return singletonName; } + private set { singletonName = value; } + } + + #endregion + + #region .ctors + + protected SingletonDialog() : this(null) { } + + protected SingletonDialog(string name) + { + this.singletonName = String.IsNullOrEmpty(name) ? GetDefaultName(GetType()) : name; + } + + #endregion + + #region Overrides + + internal override void RegisterDialog() + { + lock (visibleDialogs) + { + if (!visibleDialogs.ContainsKey(SingletonName)) + visibleDialogs[SingletonName] = this; + } + + base.RegisterDialog(); + } + + internal override void UnregisterDialog() + { + lock (visibleDialogs) + visibleDialogs.Remove(SingletonName); + + base.UnregisterDialog(); + } + + #endregion + + #region Methods + + public static TForm GetSingleton(bool createIfNeeded) where TForm : PluginDialog + { + return GetSingleton(createIfNeeded, typeof(TForm).FullName); + } + + public static TForm GetSingleton(bool createIfNeeded, string name) where TForm : PluginDialog + { + if (String.IsNullOrEmpty(name)) + throw new ArgumentNullException("name"); + + lock (visibleDialogs) + { + if (!visibleDialogs.ContainsKey(name) || visibleDialogs[name].IsDisposed) + { + if (createIfNeeded) + return (TForm)Activator.CreateInstance(typeof(TForm), true); + else + return null; + } + else + return visibleDialogs[name] as TForm; + } + } + + private delegate void ShowSingletonInvoker(bool modal); + + public void ShowSingleton(bool modal) + { + if (InvokeRequired) + Invoke(new ShowSingletonInvoker(DoShowSingleton), modal); + else + DoShowSingleton(modal); + } + + private void DoShowSingleton(bool modal) + { + if (Visible) + Activate(); + else if (modal) + ShowDialog(); + else + Show(); + } + + public static string GetDefaultName(Type type) + { + if (type == null) + throw new ArgumentNullException("type"); + + return type.FullName; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/FriendlyStrongName/Desktop.ini b/Hyphen/Plugins/FriendlyStrongName/Desktop.ini new file mode 100644 index 0000000..e36c1c0 --- /dev/null +++ b/Hyphen/Plugins/FriendlyStrongName/Desktop.ini @@ -0,0 +1,3 @@ +[.ShellClassInfo] +IconFile=%SystemRoot%\system32\SHELL32.dll +IconIndex=19 diff --git a/Hyphen/Plugins/FriendlyStrongName/FriendlyStrongName.snk b/Hyphen/Plugins/FriendlyStrongName/FriendlyStrongName.snk new file mode 100644 index 0000000..8d3bd51 Binary files /dev/null and b/Hyphen/Plugins/FriendlyStrongName/FriendlyStrongName.snk differ diff --git a/Hyphen/Plugins/FriendlyStrongName/PublicKey.publickey b/Hyphen/Plugins/FriendlyStrongName/PublicKey.publickey new file mode 100644 index 0000000..5eac4be Binary files /dev/null and b/Hyphen/Plugins/FriendlyStrongName/PublicKey.publickey differ diff --git a/Hyphen/Plugins/FusionException.cs b/Hyphen/Plugins/FusionException.cs new file mode 100644 index 0000000..af8a74c --- /dev/null +++ b/Hyphen/Plugins/FusionException.cs @@ -0,0 +1,96 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Reflection; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Resources; +using System.Runtime.Serialization; + +namespace Virtuoso.Miranda.Plugins +{ + [Serializable] + public class FusionException : Exception, IExceptionDumpController + { + #region Fields + + private readonly Assembly assembly; + private readonly Type pluginType; + private readonly MirandaPlugin instantiatedPlugin; + private readonly string fusionLog; + + #endregion + + #region .ctors + + public FusionException(string message, Assembly assembly, Type type, MirandaPlugin plugin, Exception inner) + : this(message, TextResources.UI_Label_Empty, assembly, type, plugin, inner) + { } + + public FusionException(string message, string fusionLog, Assembly assembly, Type type, MirandaPlugin plugin, Exception inner) : base(message, inner) + { + this.assembly = assembly; + this.pluginType = type; + this.instantiatedPlugin = plugin; + this.fusionLog = fusionLog; + } + + protected FusionException(SerializationInfo info, StreamingContext context) : base(info, context) {} + + #endregion + + #region Properties + + public Assembly Assembly + { + get { return assembly; } + } + + public Type PluginType + { + get { return pluginType; } + } + + public MirandaPlugin InstantiatedPlugin + { + get { return instantiatedPlugin; } + } + + public string FusionLog + { + get { return fusionLog; } + } + + #endregion + + #region IExceptionDumpController Members + + void IExceptionDumpController.DumpException(Exception e, StringBuilder dump) + { + FusionException ex = (FusionException)e; + + dump.AppendFormat("=== Description ==={0}{1}{0}{0}", Environment.NewLine, ex.Message); + dump.AppendFormat("=== Assembly ==={0}{1}{0}{0}", Environment.NewLine, ex.Assembly == null ? TextResources.UI_Label_Unknown : ex.Assembly.ToString()); + dump.AppendFormat("=== Type ==={0}{1}{0}{0}", Environment.NewLine, ex.PluginType == null ? TextResources.UI_Label_Unknown : ex.PluginType.FullName); + dump.AppendFormat("=== Fusion log ==={0}{1}{0}{0}", Environment.NewLine, ex.FusionLog); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Graphics/LoadingBanner.psd b/Hyphen/Plugins/Graphics/LoadingBanner.psd new file mode 100644 index 0000000..5784e9c Binary files /dev/null and b/Hyphen/Plugins/Graphics/LoadingBanner.psd differ diff --git a/Hyphen/Plugins/Graphics/Thumbs.db b/Hyphen/Plugins/Graphics/Thumbs.db new file mode 100644 index 0000000..251a93a Binary files /dev/null and b/Hyphen/Plugins/Graphics/Thumbs.db differ diff --git a/Hyphen/Plugins/Helpers/EnumValueFriendlyNameAttribute.cs b/Hyphen/Plugins/Helpers/EnumValueFriendlyNameAttribute.cs new file mode 100644 index 0000000..5c44c23 --- /dev/null +++ b/Hyphen/Plugins/Helpers/EnumValueFriendlyNameAttribute.cs @@ -0,0 +1,84 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Reflection; +using System.Collections.Specialized; + +namespace Virtuoso.Miranda.Plugins.Helpers +{ + [AttributeUsage(AttributeTargets.Field, AllowMultiple = false, Inherited = false)] + public sealed class EnumValueFriendlyNameAttribute : Attribute + { + #region Fields + + private string friendlyName; + + #endregion + + #region .ctors + + public EnumValueFriendlyNameAttribute(string name) + { + this.friendlyName = name; + } + + #endregion + + #region Properties + + public string FriendlyName + { + get { return friendlyName; } + set { friendlyName = value; } + } + + #endregion + + #region Methods + + public static Dictionary GetFriendlyNames() where TEnum : struct + { + Type enumType = typeof(TEnum); + + if (!enumType.IsEnum) + throw new ArgumentException("TEnum is not an enumeration.", "TEnum"); + + Type thisType = typeof(EnumValueFriendlyNameAttribute); + Dictionary results = new Dictionary(1); + + foreach (FieldInfo field in enumType.GetFields()) + { + if ((field.Attributes & FieldAttributes.Literal) != FieldAttributes.Literal) + continue; + + EnumValueFriendlyNameAttribute[] names = (EnumValueFriendlyNameAttribute[])field.GetCustomAttributes(thisType, false); + + if (names != null && names.Length > 0) + results.Add((TEnum)field.GetRawConstantValue(), names[0].FriendlyName); + else + results.Add((TEnum)field.GetRawConstantValue(), field.Name); + } + + return results; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Helpers/IniStructure.cs b/Hyphen/Plugins/Helpers/IniStructure.cs new file mode 100644 index 0000000..0be472c --- /dev/null +++ b/Hyphen/Plugins/Helpers/IniStructure.cs @@ -0,0 +1,652 @@ +/* /--==###################==--\ + * | Bram's Ini File Handler | + * \--==###################==--/ + * + * This handles Ini files and all their content. + * + * Some explanation: + * Categories are in fact sections, but i didn't think + * "sections" so i wrote "categories". Sorry. + * + * comment lines in ini files begin with #, ; or // + * multi-line are not supported (Because I've never seen such) + * + * It ignores comments on reading but can write them + * + * How it works: + * All data is saved in one System.Collections.SortedList which + * contains the category names as keys, and all key-value pairs + * as values, saved as SortedList too: + * + * explanation sheet + * + * SortedList Categories + * { + * {"Category1", {Key1, value1} + * {Key2, value2} + * ... + * } + * {"Category2", {Key1, value1} + * {Key2, value2} + * ... + * } + * ... + * } + * + * that behaves like an array in an array (array[][]), but with dynamic bounds + * and strings as indexers. + * + * I hope you did understand this, it would have been easier to explain + * in French or German... + * + * You can make with it what you want, but I would be pleased to + * hear some feedback. (Ok, I admit: I would be pleased only if it's + * positive feedback...) + * + * Send me an email! kratchkov@inbox.lv + * + * Thanks + * + * DISCLAIMER: + * THIS CODE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY + * KIND, EITHER EXPRESSED OR IMPLIED INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THIS + * CODE IS WITH YOU. SHOULD THIS CODE PROVE DEFECTIVE, YOU ASSUME + * THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION . + * You take full responsibility for the use of this code and any + * consequences thereof. I can not accept liability for damages + * or failures arising from the use of this code, or parts of this code. + */ + +using System; +using System.IO; +using System.Text; +using System.Collections; + +namespace Virtuoso.Miranda.Plugins.Helpers +{ + /// + /// Handles Ini categories, keys and their associated values, static methods implemented for file + /// handling (saving and reading) + /// + public class IniStructure + { + #region Ini structure code + private SortedList Categories = new SortedList(); + + /// + /// Initialies a new IniStructure + /// + public IniStructure() + { + } + + /// + /// Adds a category to the IniStructure + /// + /// Name of the new category + public bool AddCategory(string Name) + { + if (Name == "" | Categories.ContainsKey(Name)) + return false; + if (Name.IndexOf('=') != -1 + | Name.IndexOf('[') != -1 + | Name.IndexOf(']') != -1) // these characters are not allowed in a category name + return false; + + Categories.Add(Name, new SortedList()); + return true; + } + + /// + /// Deletes a category and its contents + /// + /// category to delete + public bool DeleteCategory(string Name) + { + if (Name == "" | !Categories.ContainsKey(Name)) + return false; + Categories.Remove(Name); + return true; + } + + /// + /// Renames a category + /// + /// Category to rename + /// New name + public bool RenameCategory(string Name, string NewName) + { // Or rather moves a category to a new name + if (Name == "" | !Categories.ContainsKey(Name) | NewName == "") + return false; + + if (NewName.IndexOf('=') != -1 + | NewName.IndexOf('[') != -1 + | NewName.IndexOf(']') != -1) // these characters are not allowed in a category name + return false; + + SortedList Category = (SortedList)(Categories[Name]); + Categories.Add(NewName, Category); + this.DeleteCategory(Name); + return true; + } + + /// + /// Returns the names of all categories + /// + /// + public string[] GetCategories() + { + string[] CatNames = new string[Categories.Count]; + IList KeyList = Categories.GetKeyList(); + int KeyCount = Categories.Count; + for (int i = 0; i < KeyCount; i++) + { + CatNames[i] = KeyList[i].ToString(); + } + return CatNames; + } + + /// + /// Returns the name of a category by specifying the index. + /// Useful to enumerate through all categories. + /// + /// The category index + /// + public string GetCategoryName(int Index) + { + if (Index < 0 | Index >= Categories.Count) + return null; + return Categories.GetKey(Index).ToString(); + } + + /// + /// Adds a key-value pair to a specified category + /// + /// Name of the category + /// New name of the key + /// Associated value + public bool AddValue(string CategoryName, string Key, string Value) + { + if (CategoryName == "" | Key == "") + return false; + if (Key.IndexOf('=') != -1 + | Key.IndexOf('[') != -1 + | Key.IndexOf(']') != -1 // these chars are not allowed for keynames + | Key.IndexOf(';') != -1 + | Key.IndexOf('#') != -1 + ) + return false; + if (!Categories.ContainsKey(CategoryName)) + return false; + SortedList Category = (SortedList)(Categories[CategoryName]); + if (Category.ContainsKey(Key)) + return false; + Category.Add(Key, Value); + return true; + } + + /// + /// Returns the value of a key-value pair in a specified category by specifying the key + /// + /// Name of the category + /// Name of the Key + /// + public string GetValue(string CategoryName, string Key) + { + if (CategoryName == "" | Key == "") + return null; + if (!Categories.ContainsKey(CategoryName)) + return null; + SortedList Category = (SortedList)(Categories[CategoryName]); + if (!Category.ContainsKey(Key)) + return null; + return Category[Key].ToString(); + } + + /// + /// Returns the key-value pair in a specified category by specifying the index + /// + /// Index of the category + /// Index of the Key + /// + public string GetValue(int CatIndex, int KeyIndex) + { + if (CatIndex < 0 | KeyIndex < 0 + |CatIndex >= Categories.Count) + return null; + SortedList Category = (SortedList)(Categories.GetByIndex(CatIndex)); + if (KeyIndex >= Category.Count) + return null; + return Category.GetByIndex(KeyIndex).ToString(); + } + + /// + /// Returns the name of the key in a key-value pair in a specified category by specifying the index + /// + /// Index of the category + /// Index of the key + /// + public string GetKeyName(int CatIndex, int KeyIndex) + { + if (CatIndex < 0 | KeyIndex < 0 + |CatIndex >= Categories.Count) + return null; + SortedList Category = (SortedList)(Categories.GetByIndex(CatIndex)); + if (KeyIndex >= Category.Count) + return null; + return Category.GetKey(KeyIndex).ToString(); + } + + + /// + /// Deletes a key-value pair + /// + /// Name of the category + /// Name of the Key + public bool DeleteValue(string CategoryName, string Key) + { + if (CategoryName == "" | Key == "") + return false; + if (!Categories.ContainsKey(CategoryName)) + return false; + SortedList Category = (SortedList)(Categories[CategoryName]); + if (!Category.ContainsKey(Key)) + return false; + Category.Remove(Key); + return true; + } + + /// + /// Renames the keyname in a key-value pair + /// + /// Name of the category + /// Name of the Key + /// New name of the Key + public bool RenameKey(string CategoryName, string KeyName, string NewKeyName) + { + if (CategoryName == "" | KeyName == "" | NewKeyName == "") + return false; + if (!Categories.ContainsKey(CategoryName)) + return false; + if (NewKeyName.IndexOf('=') != -1 + | NewKeyName.IndexOf('[') != -1 + | NewKeyName.IndexOf(']') != -1 // these chars are not allowed for keynames + | NewKeyName.IndexOf(';') != -1 + | NewKeyName.IndexOf('#') != -1 + ) + return false; + SortedList Category = (SortedList)(Categories[CategoryName]); + if ( !Category.ContainsKey(KeyName)) + return false; + + object value = Category[KeyName]; + Category.Remove(KeyName); + Category.Add(NewKeyName, value); + return true; + } + + /// + /// Modifies the value in a key-value pair + /// + /// Name of the category + /// Name of the Key + /// New name of the Key + public bool ModifyValue(string CategoryName, string KeyName, string NewValue) + { + if (CategoryName == "" | KeyName == "") + return false; + if (!Categories.ContainsKey(CategoryName)) + return false; + SortedList Category = (SortedList)(Categories[CategoryName]); + if ( !Category.ContainsKey(KeyName)) + return false; + + Category[KeyName] = NewValue; + return true; + } + + /// + /// Returns all keys in a category + /// + /// Name of the category + /// + public string[] GetKeys(string CategoryName) + { + SortedList Category = (SortedList)(Categories[CategoryName]); + if (Category == null) + return new string[0]; + int KeyCount = Category.Count; + string[] KeyNames = new string[KeyCount]; + IList KeyList = Category.GetKeyList(); + for (int i = 0; i < KeyCount; i++) + { + KeyNames[i] = KeyList[i].ToString(); + } + return KeyNames; + } + + #endregion + + #region Ini writing code + /// + /// Writes an IniStructure to a file with a comment. + /// + /// The contents to write + /// The complete path and name of the file + /// Comment to add + /// + public static bool WriteIni(IniStructure IniData, string Filename, string comment) + { + string DataToWrite = CreateData(IniData, BuildComment(comment)); + return WriteFile(Filename, DataToWrite); + } + + /// + /// Writes an IniStructure to a file without a comment. + /// + /// The contents to write + /// The complete path and name of the file + /// + public static bool WriteIni(IniStructure IniData, string Filename) + { + string DataToWrite = CreateData(IniData); + return WriteFile(Filename, DataToWrite); + } + + private static bool WriteFile(string Filename, string Data) + { // Writes a string to a file + try + { + FileStream IniStream = new FileStream(Filename,FileMode.Create); + if (!IniStream.CanWrite) + { + IniStream.Close(); + return false; + } + StreamWriter writer = new StreamWriter(IniStream); + writer.Write(Data); + writer.Flush(); + writer.Close(); + IniStream.Close(); + return true; + } + catch + { + return false; + } + } + + private static string BuildComment(string comment) + { // Adds a # at the beginning of each line + if (comment == "") + return ""; + string[] Lines = DivideToLines(comment); + string temp = ""; + foreach (string line in Lines) + { + temp += "# " + line + "\r\n"; + } + return temp; + } + + private static string CreateData(IniStructure IniData) + { + return CreateData(IniData,""); + } + + private static string CreateData(IniStructure IniData, string comment) + { //Iterates through all categories and keys and appends all data to Data + int CategoryCount = IniData.GetCategories().Length; + int[] KeyCountPerCategory = new int[CategoryCount]; + string Data = comment; + string[] temp = new string[2]; // will contain key-value pair + + for (int i = 0; i < CategoryCount; i++) // Gets keycount per category + { + string CategoryName = IniData.GetCategories()[i]; + KeyCountPerCategory[i] = IniData.GetKeys(CategoryName).Length; + } + + for (int catcounter = 0; catcounter < CategoryCount; catcounter++) + { + Data += "\r\n[" + IniData.GetCategoryName(catcounter) + "]\r\n"; + // writes [Category] to Data + for (int keycounter = 0; keycounter < KeyCountPerCategory[catcounter]; keycounter++) + { + temp[0] = IniData.GetKeyName(catcounter, keycounter); + temp[1] = IniData.GetValue(catcounter, keycounter); + Data += temp[0] + "=" + temp[1] + "\r\n"; + // writes the key-value pair to Data + } + } + return Data; + } + #endregion + + #region Ini reading code + + /// + /// Reads an ini file and returns the content as an IniStructure. Returns null if an error occurred. + /// + /// The filename to read + /// + public static IniStructure ReadIni(string Filename) + { + string Data = ReadFile(Filename); + if (Data == null) + return null; + + IniStructure data = InterpretIni(Data); + + return data; + } + + public static IniStructure InterpretIni(string Data) + { + IniStructure IniData = new IniStructure(); + string[] Lines = RemoveAndVerifyIni(DivideToLines(Data)); + // Divides the Data in lines, removes comments and empty lines + // and verifies if the ini is not corrupted + // Returns null if it is. + if (Lines == null) + return null; + + if (IsLineACategoryDef(Lines[0]) != LineType.Category) + { + return null; + // Ini is faulty - does not begin with a categorydef + } + string CurrentCategory = ""; + foreach (string line in Lines) + { + switch (IsLineACategoryDef(line)) + { + case LineType.Category: // the line is a correct category definition + string NewCat = line.Substring(1,line.Length - 2); + IniData.AddCategory(NewCat); // adds the category to the IniData + CurrentCategory = NewCat; + break; + case LineType.NotACategory: // the line is not a category definition + string[] keyvalue = GetDataFromLine(line); + IniData.AddValue(CurrentCategory, keyvalue[0], keyvalue[1]); + // Adds the key-value to the current category + break; + case LineType.Faulty: // the line is faulty + return null; + } + } + return IniData; + } + + private static string ReadFile(string filename) + { // Reads a file to a string. + if (!File.Exists(filename)) + return null; + StringBuilder IniData; + try + { + using (FileStream IniStream = new FileStream(filename, FileMode.Open, FileAccess.Read)) + { + if (!IniStream.CanRead) + return null; + + using (StreamReader reader = new StreamReader(IniStream)) + { + IniData = new StringBuilder(); + IniData.Append(reader.ReadToEnd()); + return IniData.ToString(); + } + } + } + catch + { + return null; + } + } + + private static string[] GetDataFromLine(string Line) + { + // returns the key and the value of a key-value pair in "key=value" format. + int EqualPos = 0; + EqualPos = Line.IndexOf("=", 0); + if (EqualPos < 1) + { + return null; + } + string LeftKey = Line.Substring(0, EqualPos); + string RightValue = Line.Substring(EqualPos + 1); + + string[] ToReturn = {LeftKey, RightValue}; + return ToReturn; + } + + private enum LineType // return type for IsLineACategoryDef and LineVerify + { + NotACategory, + Category, + Faulty, + Comment, + Empty, + Ok + } + + private static LineType IsLineACategoryDef(string Line) + { + if (Line.Length < 3) + return LineType.NotACategory; // must be a short keyname like "k=" + + if (Line.Substring(0,1) == "[" & Line.Substring(Line.Length - 1, 1) == "]") + // seems to be a categorydef + { + if (Line.IndexOf("=") != -1) + // '=' found -> is incorrect for category def + return LineType.Faulty; + if (ContainsMoreThanOne(Line,'[') | ContainsMoreThanOne(Line, ']')) + // two or more '[' or ']' found -> incorrect + return LineType.Faulty; + return LineType.Category; + } + return LineType.NotACategory; + } + + private static string[] DivideToLines(string Data) + { // Divides a string into lines + string[] Lines = new string[Data.Length]; + int oldnewlinepos = 0; + int LineCounter = 0; + for (int i = 0; i < Data.Length; i++) + { + if (Data.ToCharArray(i,1)[0] == '\n') + { + Lines[LineCounter] = Data.Substring(oldnewlinepos, i - oldnewlinepos - 1); + oldnewlinepos = i + 1; + LineCounter++; + } + } + + // Lines[] array is too big: needs to be trimmed + + Lines[LineCounter] = Data.Substring(oldnewlinepos, Data.Length - oldnewlinepos); + string[] LinesTrimmed = new string[LineCounter + 1]; + for (int i = 0; i < LineCounter + 1; i++) + { + LinesTrimmed[i] = Lines[i]; + } + return LinesTrimmed; + } + + private static bool ContainsMoreThanOne(string Data, char verify) + { // returns true if Data contains verify more than once + char[] data = Data.ToCharArray(); + int count = 0; + foreach (char c in data) + { + if (c == verify) + count++; + } + if (count > 1) + return true; + return false; + } + + private static LineType LineVerify(string line) + { // Verifies a line of an ini + if (line == "") + return LineType.Empty; + + if (line.IndexOf(";") == 0 | line.IndexOf("#") == 0 | line.IndexOf("//") == 0) + { + return LineType.Comment; // line is a comment: ignore + } + + int equalindex = line.IndexOf('='); + if (equalindex == 0) + return LineType.Faulty; // an '=' cannot be on first place + + if (equalindex != -1) // if = is found in line + { + // Verify: no '[' , ']' ,';' or '#' before the '=' + if (line.IndexOf('[', 0, equalindex) != -1 + | line.IndexOf(']', 0, equalindex) != -1 + | line.IndexOf(';', 0, equalindex) != -1 + | line.IndexOf('#', 0, equalindex) != -1) + return LineType.Faulty; + } + + return LineType.Ok; + } + + private static string[] RemoveAndVerifyIni(string[] Lines) + { + // removes empty lines and comments, and verifies every line + string[] temp = new string[Lines.Length]; + int TempCounter = 0; // number of lines to return + foreach (string line in Lines) + { + switch (LineVerify(line)) + { + case LineType.Faulty: // line is faulty + return null; + case LineType.Comment: // line is a comment + continue; + case LineType.Ok: // line is ok + temp[TempCounter] = line; + TempCounter++; + break; + case LineType.Empty: // line is empty + continue; + } + } + // the temp[] array is too big: needs to be trimmed. + string[] OKLines = new string[TempCounter]; + for (int i = 0; i < TempCounter; i++) + { + OKLines[i] = temp[i]; + } + return OKLines; + } + #endregion + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Helpers/MessageQueue.cs b/Hyphen/Plugins/Helpers/MessageQueue.cs new file mode 100644 index 0000000..5f52f83 --- /dev/null +++ b/Hyphen/Plugins/Helpers/MessageQueue.cs @@ -0,0 +1,261 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Threading; +using System.Runtime.CompilerServices; + +namespace Virtuoso.Miranda.Plugins.Helpers +{ + /* CLASS ORIGIN: Spearhead project */ + public class MessageQueue + { + #region Fields + + private volatile bool enabled, suspended; + + private readonly Queue> queue = new Queue>(5); + private Thread QueueThread; + + private readonly ManualResetEvent waitHandle = new ManualResetEvent(true); + + #endregion + + #region Enums + + protected enum CommonWaitTime : int + { + QueueSuspension = 50, + QueueItemProcessed = 1000, + QueueProcessed = 1000, + } + + #endregion + + #region Events + + public event EventHandler MessageSending; + public event EventHandler MessageSent; + + #endregion + + #region .ctors & .dctors + + public MessageQueue() + { + QueueThread = InitializeQueueThread(); + } + + protected virtual Thread InitializeQueueThread() + { + Thread thread = new Thread(ProcessQueue); + thread.IsBackground = true; + + return thread; + } + + ~MessageQueue() + { + SetState(false); + waitHandle.Close(); + } + + #endregion + + #region Properties + + public bool Suspended + { + get + { + return suspended; + } + } + + public ManualResetEvent WaitHandle + { + get + { + return waitHandle; + } + } + + protected Queue> Queue + { + get { return queue; } + } + + public bool Enabled + { + get + { + return enabled; + } + } + + public bool QueueHasItems + { + get + { + lock (Queue) + return Queue.Count > 0; + } + } + + protected virtual bool ClearQueueWhenDisabled + { + get + { + return true; + } + } + + #endregion + + #region Virtuals + + protected virtual void ProcessQueue() + { + while (Enabled) + { + while (suspended) + Wait(CommonWaitTime.QueueSuspension); + + lock (Queue) + { + while (QueueHasItems) + { + waitHandle.Reset(); + RaiseMessageForwardingEvent(); + + DequeueAndSendMessage(); + Wait(QueueItemProcessedWaitTime); + + RaiseMessageForwardedEvent(); + } + + waitHandle.Set(); + } + + Wait(QueueProcessedWaitTime); + } + + waitHandle.Set(); + } + + protected void DequeueAndSendMessage() + { + lock (Queue) + { + KeyValuePair data = Queue.Dequeue(); + SendMessage(data.Key, data.Value); + } + } + + protected virtual void SendMessage(ContactInfo recipient, string message) + { + recipient.SendMessage(message); + } + + protected virtual int QueueItemProcessedWaitTime + { + get + { + return (int)CommonWaitTime.QueueItemProcessed; + } + } + + protected virtual int QueueProcessedWaitTime + { + get + { + return (int)CommonWaitTime.QueueProcessed; + } + } + + #endregion + + #region Methods + + public void SuspendQueue() + { + suspended = true; + } + + public void ResumeQueue() + { + suspended = false; + } + + public void EnqueueMessage(ContactInfo to, string message) + { + lock (queue) + queue.Enqueue(new KeyValuePair(to, message)); + + SetState(true); + } + + public void SetState(bool enabled) + { + // Queue is used as a sync object here... + lock (Queue) + { + if (enabled) + { + if ((QueueThread.ThreadState & ThreadState.Stopped) == ThreadState.Stopped) + QueueThread = InitializeQueueThread(); + + if ((QueueThread.ThreadState & ThreadState.Unstarted) == ThreadState.Unstarted) + QueueThread.Start(); + } + else + { + Queue.Clear(); + } + + this.enabled = enabled; + } + } + + protected void RaiseMessageForwardingEvent() + { + if (MessageSending != null) + MessageSending(this, EventArgs.Empty); + } + + protected void RaiseMessageForwardedEvent() + { + if (MessageSent != null) + MessageSent(this, EventArgs.Empty); + } + + protected void Wait(CommonWaitTime miliseconds) + { + Wait((int)miliseconds); + } + + protected void Wait(int miliseconds) + { + Thread.Sleep(miliseconds); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Helpers/Sandbox.cs b/Hyphen/Plugins/Helpers/Sandbox.cs new file mode 100644 index 0000000..b2504bf --- /dev/null +++ b/Hyphen/Plugins/Helpers/Sandbox.cs @@ -0,0 +1,185 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Reflection; +using Virtuoso.Miranda.Plugins.Resources; +using System.Security; +using System.Security.Policy; +using System.IO; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Diagnostics; +using System.Security.Permissions; + +namespace Virtuoso.Miranda.Plugins.Helpers +{ + /* CLASS ORIGIN: Loki project */ + public abstract class Sandbox : RemoteObject + { + #region Fields + + private AppDomain hostingAppDomain; + protected AppDomain HostingAppDomain + { + get { return hostingAppDomain; } + } + + #endregion + + #region Nested classes + + private sealed class MirandaContextInitHelper : RemoteObject + { + public MirandaContextInitHelper(MirandaContext context) + { + if (context == null) + throw new ArgumentNullException("context"); + + MirandaContext.InvalidateCurrent(); + MirandaContext.InitializeCurrent(context); + } + } + + #endregion + + #region .ctors + + protected Sandbox() { } + + public static void Unload(Sandbox sandbox) + { + if (sandbox == null) + throw new ArgumentNullException("sandbox"); + + if (sandbox.hostingAppDomain == null) + throw new ArgumentException(); + + if (sandbox.hostingAppDomain == AppDomain.CurrentDomain) + throw new InvalidOperationException(TextResources.ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain); + + sandbox.OnSandboxUnload(); + sandbox.UnloadHostingAppDomain(); + } + + #endregion + + #region Virtuals + + protected virtual void InitializeAppDomainSetup(AppDomainSetup domainSetup) { } + + protected virtual void OnSandboxUnload() { } + + #endregion + + #region Helpers + + protected static StrongName GetStrongName(Assembly assembly) + { + if (assembly == null) + throw new ArgumentNullException("assembly"); + + AssemblyName assemblyName = assembly.GetName(); + Debug.Assert(assemblyName != null, "Could not get assembly name"); + + byte[] publicKey = assemblyName.GetPublicKey(); + if (publicKey == null || publicKey.Length == 0) + throw new InvalidOperationException(String.Format("{0} is not strongly named", assembly)); + + StrongNamePublicKeyBlob keyBlob = new StrongNamePublicKeyBlob(publicKey); + return new StrongName(keyBlob, assemblyName.Name, assemblyName.Version); + } + + #endregion + + #region Methods + + protected void SetUpHostingAppDomain(string name) + { + SetUpHostingAppDomain(name, null, null); + } + + protected void SetUpHostingAppDomain(string name, Evidence evidence, PermissionSet permissions, params StrongName[] fullTrust) + { + if (String.IsNullOrEmpty(name)) + throw new ArgumentNullException("name"); + + if (hostingAppDomain != null) + throw new InvalidOperationException(); + + AppDomainSetup currentSetup = AppDomain.CurrentDomain.SetupInformation; + AppDomainSetup domainSetup = new AppDomainSetup(); + + domainSetup.ApplicationName = name; + domainSetup.ApplicationBase = currentSetup.ApplicationBase; + domainSetup.PrivateBinPath = String.Format("{0};{1};", MirandaEnvironment.MirandaPluginsFolderRelativePath, MirandaEnvironment.ManagedPluginsFolderRelativePath); + domainSetup.ConfigurationFile = currentSetup.ConfigurationFile; + + InitializeAppDomainSetup(domainSetup); + + if (permissions == null) + hostingAppDomain = AppDomain.CreateDomain(name, null, domainSetup); + else + hostingAppDomain = AppDomain.CreateDomain(name, evidence, domainSetup, permissions, fullTrust); + } + + protected void UnloadHostingAppDomain() + { + if (hostingAppDomain == null) + throw new InvalidOperationException(); + else + { + AppDomain.Unload(hostingAppDomain); + hostingAppDomain = null; + } + } + + protected T InstantiateRemoteObject(string assemblyName, string typeName, params object[] args) where T : class + { + return Activator.CreateInstance(hostingAppDomain, assemblyName, typeName, true, BindingFlags.Instance | BindingFlags.CreateInstance | BindingFlags.NonPublic | BindingFlags.Public, null, args, null, null, null).Unwrap() as T; + } + + protected T InstantiateRemoteObjectFrom(string assemblyFile, string typeName, params object[] args) where T : class + { + return Activator.CreateInstanceFrom(hostingAppDomain, assemblyFile, typeName, true, BindingFlags.Instance | BindingFlags.CreateInstance | BindingFlags.NonPublic | BindingFlags.Public, null, args, null, null, null).Unwrap() as T; + } + + protected void InitializeRemoteContext(MirandaContext context) + { + if (context == null) + throw new ArgumentNullException("context"); + + if (hostingAppDomain == null) + throw new InvalidOperationException(); + + InstantiateRemoteObject(Assembly.GetExecutingAssembly().FullName, typeof(MirandaContextInitHelper).FullName, context); + } + + public void SetUnhandledExceptionHandler(UnhandledExceptionEventHandler handler) + { + hostingAppDomain.UnhandledException += handler; + } + + public void RemoveUnhandledExceptionHandler(UnhandledExceptionEventHandler handler) + { + hostingAppDomain.UnhandledException -= handler; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Helpers/TypeInstanceCache.cs b/Hyphen/Plugins/Helpers/TypeInstanceCache.cs new file mode 100644 index 0000000..28aca20 --- /dev/null +++ b/Hyphen/Plugins/Helpers/TypeInstanceCache.cs @@ -0,0 +1,52 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Helpers +{ + internal class TypeInstanceCache : Dictionary + { + #region .ctors + + public TypeInstanceCache() { } + + #endregion + + #region Methods + + public T Instantiate(Type type) + { + lock (this) + { + if (ContainsKey(type)) + return this[type]; + else + { + T instance = (T)Activator.CreateInstance(type); + this[type] = instance; + + return instance; + } + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Helpers/Utilities.cs b/Hyphen/Plugins/Helpers/Utilities.cs new file mode 100644 index 0000000..479dc58 --- /dev/null +++ b/Hyphen/Plugins/Helpers/Utilities.cs @@ -0,0 +1,38 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Helpers +{ + public static class Utilities + { + [CLSCompliant(false)] + public static uint GetTimestamp() + { + return GetTimestamp(DateTime.Now); + } + + [CLSCompliant(false)] + public static uint GetTimestamp(DateTime dateTime) + { + return (uint)(dateTime.ToUniversalTime() - new DateTime(1970, 1, 1)).TotalSeconds; + } + } +} diff --git a/Hyphen/Plugins/Hyphen/Configuration/Controls/AboutContent.Designer.cs b/Hyphen/Plugins/Hyphen/Configuration/Controls/AboutContent.Designer.cs new file mode 100644 index 0000000..b94c59e --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Configuration/Controls/AboutContent.Designer.cs @@ -0,0 +1,169 @@ +using Virtuoso.Miranda.Plugins.Configuration.Forms.Controls; +namespace Virtuoso.Hyphen.Configuration.Controls +{ + partial class AboutContent + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Component Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(AboutContent)); + this.panel1 = new Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader(); + this.panel2 = new Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection(); + this.VersionLABEL = new System.Windows.Forms.Label(); + this.HomepageLINK = new System.Windows.Forms.LinkLabel(); + this.pictureBox1 = new System.Windows.Forms.PictureBox(); + this.categoryItemSection1 = new Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection(); + this.label1 = new System.Windows.Forms.Label(); + this.listBox1 = new System.Windows.Forms.ListBox(); + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); + this.SuspendLayout(); + // + // panel1 + // + this.panel1.BackColor = System.Drawing.Color.Transparent; + this.panel1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(128)))), ((int)(((byte)(0))))); + this.panel1.Dock = System.Windows.Forms.DockStyle.Top; + this.panel1.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.panel1.HeaderFont = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.panel1.HeaderText = "About Hyphen"; + this.panel1.Image = global::Virtuoso.Miranda.Plugins.Properties.Resources.Icon_232_32x32; + this.panel1.Location = new System.Drawing.Point(0, 0); + this.panel1.MinimumSize = new System.Drawing.Size(300, 40); + this.panel1.Name = "panel1"; + this.panel1.Size = new System.Drawing.Size(792, 40); + this.panel1.TabIndex = 0; + // + // panel2 + // + this.panel2.BackColor = System.Drawing.Color.Transparent; + this.panel2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(224)))), ((int)(((byte)(192))))); + this.panel2.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.panel2.ForeColor = System.Drawing.Color.Black; + this.panel2.Location = new System.Drawing.Point(10, 46); + this.panel2.MinimumSize = new System.Drawing.Size(300, 20); + this.panel2.Name = "panel2"; + this.panel2.SectionName = "Hyphen"; + this.panel2.Size = new System.Drawing.Size(765, 20); + this.panel2.TabIndex = 1; + // + // VersionLABEL + // + this.VersionLABEL.AutoSize = true; + this.VersionLABEL.Font = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.VersionLABEL.Location = new System.Drawing.Point(127, 72); + this.VersionLABEL.Name = "VersionLABEL"; + this.VersionLABEL.Size = new System.Drawing.Size(51, 13); + this.VersionLABEL.TabIndex = 2; + this.VersionLABEL.Text = "v0.0.0.0"; + // + // HomepageLINK + // + this.HomepageLINK.AutoSize = true; + this.HomepageLINK.Location = new System.Drawing.Point(130, 85); + this.HomepageLINK.Name = "HomepageLINK"; + this.HomepageLINK.Size = new System.Drawing.Size(121, 13); + this.HomepageLINK.TabIndex = 3; + this.HomepageLINK.TabStop = true; + this.HomepageLINK.Text = "© (Assembly copyright)"; + this.HomepageLINK.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.HomepageLINK_LinkClicked); + // + // pictureBox1 + // + this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image"))); + this.pictureBox1.Location = new System.Drawing.Point(21, 72); + this.pictureBox1.Name = "pictureBox1"; + this.pictureBox1.Size = new System.Drawing.Size(100, 50); + this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize; + this.pictureBox1.TabIndex = 5; + this.pictureBox1.TabStop = false; + // + // categoryItemSection1 + // + this.categoryItemSection1.BackColor = System.Drawing.Color.Transparent; + this.categoryItemSection1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(224)))), ((int)(((byte)(192))))); + this.categoryItemSection1.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.categoryItemSection1.ForeColor = System.Drawing.Color.Black; + this.categoryItemSection1.Location = new System.Drawing.Point(10, 149); + this.categoryItemSection1.MinimumSize = new System.Drawing.Size(300, 20); + this.categoryItemSection1.Name = "categoryItemSection1"; + this.categoryItemSection1.SectionName = "Components"; + this.categoryItemSection1.Size = new System.Drawing.Size(765, 20); + this.categoryItemSection1.TabIndex = 4; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("Tahoma", 8F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(238))); + this.label1.Location = new System.Drawing.Point(18, 172); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(239, 13); + this.label1.TabIndex = 5; + this.label1.Text = "Hyphen uses these 3rd party assemblies:"; + // + // listBox1 + // + this.listBox1.BorderStyle = System.Windows.Forms.BorderStyle.None; + this.listBox1.FormattingEnabled = true; + this.listBox1.Items.AddRange(new object[] { + "RibbonPanel, © Juan Pablo G.C."}); + this.listBox1.Location = new System.Drawing.Point(33, 188); + this.listBox1.Name = "listBox1"; + this.listBox1.SelectionMode = System.Windows.Forms.SelectionMode.None; + this.listBox1.Size = new System.Drawing.Size(224, 104); + this.listBox1.Sorted = true; + this.listBox1.TabIndex = 6; + // + // AboutContent + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.listBox1); + this.Controls.Add(this.label1); + this.Controls.Add(this.pictureBox1); + this.Controls.Add(this.HomepageLINK); + this.Controls.Add(this.VersionLABEL); + this.Controls.Add(this.categoryItemSection1); + this.Controls.Add(this.panel2); + this.Controls.Add(this.panel1); + this.Name = "AboutContent"; + ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private CategoryItemHeader panel1; + private CategoryItemSection panel2; + private System.Windows.Forms.Label VersionLABEL; + private System.Windows.Forms.LinkLabel HomepageLINK; + private System.Windows.Forms.PictureBox pictureBox1; + private CategoryItemSection categoryItemSection1; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.ListBox listBox1; + } +} diff --git a/Hyphen/Plugins/Hyphen/Configuration/Controls/AboutContent.cs b/Hyphen/Plugins/Hyphen/Configuration/Controls/AboutContent.cs new file mode 100644 index 0000000..8a15f91 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Configuration/Controls/AboutContent.cs @@ -0,0 +1,56 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Configuration.Forms.Controls; +using System.Diagnostics; +using System.Reflection; + +namespace Virtuoso.Hyphen.Configuration.Controls +{ + internal sealed partial class AboutContent : CategoryItemControl + { + private AboutContent() + { + InitializeComponent(); + } + + protected internal override bool OnShow(bool firstTime) + { + if (firstTime) + { + Assembly assembly = GetType().Assembly; + + VersionLABEL.Text = String.Format("v{0}", assembly.GetName().Version); + HomepageLINK.Text = + ((AssemblyCopyrightAttribute) + assembly.GetCustomAttributes(typeof (AssemblyCopyrightAttribute), false)[0]).Copyright; + } + + return false; + } + + private void HomepageLINK_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + ProcessStartInfo info = new ProcessStartInfo(Loader.GetInstance().PluginInfo.HomePage); + info.UseShellExecute = true; + + Process.Start(info); + } + } +} diff --git a/Hyphen/Plugins/Hyphen/Configuration/Controls/AboutContent.resx b/Hyphen/Plugins/Hyphen/Configuration/Controls/AboutContent.resx new file mode 100644 index 0000000..38dc1b1 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Configuration/Controls/AboutContent.resx @@ -0,0 +1,199 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + True + + + True + + + True + + + True + + + + + R0lGODlhZAAyAIcAAAAAAP///9rw2tbh1u347d7o3pKWknBxcP3+/ebn5oiJiISFhBCxCxu1GAaqAAql + BA+sBw6nCBOuCxemEBWgDyCuGxyTFyayHjqvNDu0N0O4PTCGLDpyN33GeoXRggq1ABO7CCucIzCsKEq7 + Q1O/TEWVP2rKYnXJbmamYlN+UEtrSZ7embnltqa2peLy4RvGDCnOFyO2FUbLN0nUOk7VQE3JQVbWSlrE + UX3Wc224ZWmrY22uZnmzdKHOnK/PrMrqx2p1aePs4ji+Jid0HVPZQ1baR1/fTVChRt/13Of45fP78vH5 + 8DjWIFPQQE3DPFfIRV7RS2vnVlWLTF19WJTEjG2NaE7JNlC7O13cRmLWSmvQWGnGV3PSYHjUZYbYdYy1 + hHiHdV1nW+z26lLcMWjgTGTMTIDuaGSlVdbw0ErZJmXTR3HdVHDUVma4UICdeOjw5oXvZH/bY2eKXIaz + eKvgnNTpzmduZev553vlWHjUV4HjX3nHYJXbfJzjg6TkjlBlSdDxxVlcWPz/+2XgOG3lQHrcVonZarno + p8TeupDnar7VtMnSxXjkQ4bnVo/pYozlY5bzaqHhg6joinmhZWVpY/X98ZnqbZrpcYvGarXqmMfrs2N0 + WtHywPL97PT976HtdKr3fqjvfKXse6juf6rvgavvgqntgazvhFR1Qa3vhq7vh6/wibDwi7LwjbHujLPw + jrTxkJjLerbxk7fxlLjxlrrymbzym73ynb3ynsHzo8HzpMLzpcPzpsT0p8X0qcb0q8n1r8r1sc31ttD2 + udL2vNT3v9b3w9f3xNj3xdn4x9z4zN75zuD50eH40+X62Ob62uf63On73p+rmOv74u785vD86fH769H2 + us/yudv4yeL50+375Pj+9NDXy/b98ff98v7+/v39/fv7+/j4+Pb29vX19fLy8u/v7+zs7Onp6ePj4+Dg + 4N/f39zc3NnZ2dXV1dHR0c7OzsnJycLCwr29vbe3t7GxsaqqqqOjo52dnY+Pj4uLi3t7e3V1dWlpaWRk + ZCH/C05FVFNDQVBFMi4wAwEBAAAh+QQAAAAAACwAAAAAZAAyAAAI/wADCBxIsKDBgwgTKlzIsKHDhxAj + SpxIsaLFixghcqsWrZnHZtGqcctIsqTCTs6QXQvmq6WvYNeQOfNksmZJQdGMCdtFCxarn6xg0dolLNs2 + m0grCtI2LJesVaRGSZ1KatWsXsWOJt36MNowW6yijiqlqqyqUlJLveqVjSbXtwkrGcvFSmoqWLZy6c1l + C9apsbOEQYNL2CC1YbSitrrl65qyx8qu+ar1l1UuY24Lw0VpLNirUaduEWtGTZBpQdSY9Wo1ihQtYcZm + at6KYFoyYblmrRq1atcycD5GCL/RYhuxW39bzcpVVOvsmtOI8XoqdlUvZks02KBBJMoOBMt27f9ubRWr + 8+cZOyXj1UrsqZ/Xs9OQMSMKD/C7fv4du7YtepLOCCNLVHfd0suB2I1QBA1YwDEHeAf2cotfgAn2H0bf + ICPeKKnY4gsxzITIjBIjGIHFGpDMUYmIzBAzWWW9LIPAhRZVc01io8DyC2lL9LiECyNEsUYjoMxxjo9K + pLYaaLcY4w2NFUUTDCxj2XJNNcEJNwIJWujxiCWh8NHFmFxwUZwwibk2DDVQUqRaXavoskw42hFRhBF4 + eGnJJ5+MEooleGBBxA7fHIPcKK8EM1ibEjHjS12q5KKMICMQMQMRZODhyCWfWOIIHoOkAcMLL+zgjTG2 + /AWLoow2+ugokU7/qiCmmibiSCOMhMoEqR+AoMOpqebIaqsQvcmbbwiQYAYckDSLa65pMMHEqCA0oEOh + h74CzDPEQiQlladYWU0LX5RbbhzQMnGDDjqgwG4L06BJippsduuQjTjqyMw2CPTrzTllECIqDDuEg4AY + LLBQBza6sBaaMZVc1AwaLowDTmEZ6rLbKbX0QswyII8IxRijElzJMl444AAVdLgSFSu+yFijHmv0wM44 + mgU4C1qnLLbLLvE9sSsIvoL3hAMUyBGLKbDaMkw0FwGyRhZgzFOOZp5k08sraIG2Civx1QDDBx8wgAJ4 + QjhgASqYNB2MNoJcdEgWT/gzD86abVNML7OE/yWVdSOKDQIDDZy9jMpDSHHFE1scsownP7DwwzjhCIRE + wm+Ig8YPYojTjCaavGGxQF40cQQYLNMRxOgDQXMIHaqPToDk4wjggQc+lFO5Q9tkgxstu/UmYwvsvjsN + HYirrDIG3YxjgsrynCOQBw5A4EMCWqjhQyR7fnLJIudcDIUMRzjRRBZrGLKIORdbI0khalghxAVUoCMO + 9Rh0IIHyOawjzkOegEZnPhMaEG3DGwj0RnS4oLwHbIACKjPAOjqgMjC842IakMAFFAAPNRTiS7GYwyUS + MQd5kCMJMkhhE3SQAz0k4gvwGIc1ElGILVRBDiKAwATqgQ7qTcABEShBBP+Qdo90ROQwOFpML2BjjCbu + xAkqewAHNiEFlaVAHj6w4t0CIIEYlIAf7/igJSZxgH0YQg9twEc6WKBCKdhhAYm4xCTscY73beGN+DiD + yhTgjhOojAJh4EcJVLYAd0RELnSRSs9mcQtb2OIWs2jFBRC3CWnkQGX+oEcBVLaBephjBTEQQgoMgIgv + YeIf+YAHH9bQBn2wYwUyaIIU/IEPRXCqCveoA/ykwI959KACagOjBlTGAX7QAwPBfIdEvAIWsZDiFNA8 + RVQgoLY/GCAIw7RAP+QxDmBuAB/ouIEQrvAPe2hiT5tQwDvEEYcsHGEf7cBBE8oQhny0QxN8+kc9DhH/ + PyHEYH9IU4EEgWkBf9gDHZPcgALaIZGlNKVv0pxKay6BODB0Ixz7U2g7wDECteWjB0KwwhQW8I5DeK+c + 57hDFmQpQS1k4QzbHEcmPoGJbXpBfiHIaQmkUMZ5BIGY+3CHGIiZjwRMBCc66QUuegKLptKiCyr7gzTQ + 8QNiqjEAFJTAApxghTYY9BwzrWk8xHGIJsggDPgoAPrkIEFwiGKMC+WCEEIQCH4oQB/5qMc7zsEClang + HujoqwP+io6KBHAZx1hJMBZ7jec5gBL0GAf1HBAGe5gjAD3o4hGsUIZN6MMd4ejUJPbBDhaY9QgHmMcP + 1qAHOQB2GpZ4hByKeoJ//06hHu5gxwAKYLHJ/oMe5JgsZMlxEQR8gxrQSC40qJHNfsADHFtA2gHk8b86 + hNIKapBDP6w2jRHGYQ9cMKsG6rmOQ7hQn+XgxCMKQQk6+oABKhNBBoDZg3SIgwRq60c8woFfbe4XKRld + aAASStKLjSOkajiDP4oIDk4kgmYrJV8Y9hGPcfghEZiYbjgyUYg2TFcc5uDBEJUXgSqYMKECRjFDkbKO + fCzAHkZUBz5ebMQAoAG7bQiDAdrxP/Oy4Q9TkMMB+JFK9qXDHgvIxzoCgI56JJkd4BCHOuxRhRSkAAj9 + 0EeFZUzjAHAZxkkpRzvekQCclYMd7iizjZ+ghjwEQqQBFRZIH1hJy3rQIx5lNrA63rEO4o4jAe7os0DE + gQ54zMPO8nDHOcJx5jSbGc1qns0PbrAF7O5hE71kn0CmJgV1loMcu4tIOMZRjnKI42L2CgALELwDOyiA + HuGz3EpTgA+jptokYuiBGw7Qj3zEY9EDEQc89LGAeVz21iWR8jzoIQ91kAPVAgnHOdzhDvshuyRRLvWp + r83tbnv72+AOt7jHXZGAAAA7 + + + + True + + + True + + + True + + + True + + \ No newline at end of file diff --git a/Hyphen/Plugins/Hyphen/Configuration/RuntimeConfiguration.cs b/Hyphen/Plugins/Hyphen/Configuration/RuntimeConfiguration.cs new file mode 100644 index 0000000..33644fe --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Configuration/RuntimeConfiguration.cs @@ -0,0 +1,122 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Hyphen.Configuration +{ + /* NOTE: WHEN ACCESSING THE CONFIG FROM THE OUTSIDE OF THE LOADER, REMEMBER THAT ITS SINGLETON + * RESIDES IN THE DEFAULT APPDOMAIN, THUS IT IS NOT INITIALIZED IN OTHER APPDOMAINS */ + [Serializable, ConfigurationOptions("0.0.0.6", Encrypt = false, ProfileBound = false)] + internal sealed class RuntimeConfiguration : PluginConfiguration + { + #region Fields + + private static RuntimeConfiguration singleton; + + private string customFusionAssemblyName, customAssemblyProbeTypeName, customPluginManagerTypeName; + private bool loadPluginsOnStartup, lazyUnload; + + #endregion + + #region .ctors + + private RuntimeConfiguration() { } + + public static RuntimeConfiguration Singleton + { + get + { + if (singleton == null) + throw new InvalidOperationException("Configuration not initialized."); + + return singleton; + } + } + + public static bool Initialized + { + get + { + return singleton != null; + } + } + + protected override void InitializeDefaultConfiguration() + { + lazyUnload = true; + } + + #endregion + + #region Properties + + public string CustomPluginManagerTypeName + { + get { return customPluginManagerTypeName; } + set { customPluginManagerTypeName = value; } + } + + public string CustomAssemblyProbeTypeName + { + get { return customAssemblyProbeTypeName; } + set { customAssemblyProbeTypeName = value; } + } + + public string CustomFusionAssemblyName + { + get { return customFusionAssemblyName; } + set { customFusionAssemblyName = value; } + } + + public bool LoadPluginsOnStartup + { + get { return loadPluginsOnStartup; } + set { loadPluginsOnStartup = value; } + } + + public bool UseLazyUnload + { + get { return lazyUnload; } + set { lazyUnload = value; } + } + + #endregion + + #region Methods + + public static void Initialize() + { + singleton = RuntimeConfiguration.Load(); + } + + public static void Reset() + { + singleton = PluginConfiguration.GetDefaultConfiguration(); + } + + public static void Reload() + { + Initialize(); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/Configuration/RuntimeConfigurator.cs b/Hyphen/Plugins/Hyphen/Configuration/RuntimeConfigurator.cs new file mode 100644 index 0000000..2e3a852 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Configuration/RuntimeConfigurator.cs @@ -0,0 +1,86 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Configuration; +using Virtuoso.Miranda.Plugins; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Miranda.Plugins.Forms; +using Virtuoso.Hyphen.Configuration.Controls; + +namespace Virtuoso.Hyphen.Configuration +{ + internal sealed class RuntimeConfigurator : IInternalConfigurator + { + #region .ctors + + private RuntimeConfigurator() { } + + #endregion + + #region Properties + + private static IConfigurablePlugin singleton; + public static IConfigurablePlugin Singleton + { + get + { + return singleton ?? (singleton = new RuntimeConfigurator()); + } + } + + public string Name + { + get { return "Hyphen"; } + } + + private PluginConfiguration[] configuration; + public PluginConfiguration[] Configuration + { + get { return configuration ?? (configuration = new PluginConfiguration[] { RuntimeConfiguration.Singleton }); } + } + + public void ResetConfiguration() + { + RuntimeConfiguration.Reset(); + } + + public void ReloadConfiguration() + { + RuntimeConfiguration.Reload(); + } + #endregion + + #region Handlers + + public void PopulateConfiguration(CategoryCollection categories) + { + Category category = new Category(TextResources.Config_General, TextResources.Config_General_Description); + + CategoryItem item = new CategoryItem(TextResources.Config_General_About, TextResources.Config_General_About_Description, typeof(AboutContent)); + item.Image = VisualResources.Image_64x67_Information; + category.Items.Add(item); + + categories.Add(category); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/FusionContext.cs b/Hyphen/Plugins/Hyphen/FusionContext.cs new file mode 100644 index 0000000..38b6096 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/FusionContext.cs @@ -0,0 +1,107 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins; +using System.IO; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Hyphen +{ + [CLSCompliant(false)] + public sealed class FusionContext : RemoteObject + { + #region Fields + + private readonly AssemblyProbe assemblyProbe; + private readonly IntPtr nativePluginLink; + private readonly Loader loader; + + private static FusionContext emptySingleton; + + #endregion + + #region .ctors + + // Empty .ctor + private FusionContext() { } + + internal FusionContext(Loader loader, AssemblyProbe pluginProbe, IntPtr nativePluginLink) + { + if (loader == null) + throw new ArgumentNullException("loader"); + + if (pluginProbe == null) + throw new ArgumentNullException("pluginProbe"); + + if (nativePluginLink == IntPtr.Zero) + throw new ArgumentNullException("nativePluginLink"); + + this.loader = loader; + this.assemblyProbe = pluginProbe; + this.nativePluginLink = nativePluginLink; + } + + #endregion + + #region Properties + + private void CheckEmpty() + { + // TODO: Localize + if (IsInvalid) throw new InvalidOperationException("This context is empty."); + } + + public bool IsInvalid + { + get + { + return this.nativePluginLink == IntPtr.Zero; + } + } + + internal static FusionContext Empty + { + get + { + return emptySingleton ?? (emptySingleton = new FusionContext()); + } + } + + public AssemblyProbe AssemblyProbe + { + get { CheckEmpty(); return assemblyProbe; } + } + + internal IntPtr NativePluginLink + { + get { CheckEmpty(); return nativePluginLink; } + } + + internal Loader Loader + { + get + { + return loader; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/Loader.cs b/Hyphen/Plugins/Hyphen/Loader.cs new file mode 100644 index 0000000..aa6ef8c --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Loader.cs @@ -0,0 +1,1105 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Diagnostics; +using System.IO; +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System.Threading; +using System.Windows.Forms; +using Virtuoso.Hyphen.Configuration; +using Virtuoso.Hyphen.Mini; +using Virtuoso.Hyphen.Native; +using Virtuoso.Miranda.Plugins; +using Virtuoso.Miranda.Plugins.Collections; +using Virtuoso.Miranda.Plugins.Configuration; +using Virtuoso.Miranda.Plugins.Configuration.Forms; +using Virtuoso.Miranda.Plugins.Forms; +using Virtuoso.Miranda.Plugins.Forms.Controls; +using Virtuoso.Miranda.Plugins.Helpers; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Miranda.Plugins.ThirdParty.Updater; + +namespace Virtuoso.Hyphen +{ + /// + /// Controls managed plugin fusion and orchestrates the runtime. + /// + internal sealed class Loader : RemoteObject + { + #region Fields + + #region Constants + + public const string LogCategory = "Hyphen"; + + private static readonly Uri HyphenUpdateUrl = new Uri("http://virtuosity.aspone.cz/files/miranda/development/hyphen/updates/hyphen_update.zip"), + HyphenVersionUrl = new Uri("http://virtuosity.aspone.cz/files/miranda/development/hyphen/updates/hyphen_update_version.txt"), + HyphenHomepageUrl = new Uri("http://virtuosity.aspone.cz"); + + private static readonly Version MinMirandaVersion = new Version(0, 7, 0, 0); + + #endregion + + #region Services + + private const string ServicePrefix = "Virtuoso.Hyphen.Loader.Services"; + + private const string LoadUnloadPluginsServiceName = ServicePrefix + "LoadUnloadPlugins"; + private const string ConfigureModulesServiceName = ServicePrefix + "ConfigureModules"; + private const string ShowManagedMenuServiceName = ServicePrefix + "ShowManagedMenu"; + private const string ManagePluginsServiceName = ServicePrefix + "ManagePlugins"; + + #endregion + + #region Common + + private static Loader Singleton; + private static readonly object SyncObject = new object(); + + private volatile bool Unloaded; + + private PLUGININFO pluginInfo; + private static IntPtr DummyPluginInfo; + + private UnmanagedStructHandle PluginInfoHandle; + private UnmanagedStructHandle PluginInfoExHandle; + private MirandaPluginLink PluginLink; + + private FusionContext FusionContext; + private PluginsSandbox IsolatedPluginsSandbox; + + private MenuItemDeclarationAttribute PluginTasksItem; + private ManagedMainMenu ManagedMainMenu; + + private readonly HookDescriptorCollection InternalHooks = new HookDescriptorCollection(); + + private FileSystemWatcher PluginsFolderWatcher; + private readonly ManualResetEvent PluginsLoadedEvent = new ManualResetEvent(false); + + private Mutex SingleInstanceMutex; + private SynchronizationContext UIThreadSyncContext; + + #endregion + + #endregion + + #region Properties + + /// + /// Gets a current version of the runtime. + /// + public static Version HyphenVersion + { + [MethodImpl(MethodImplOptions.NoInlining)] + get + { + return Assembly.GetExecutingAssembly().GetName().Version; + } + } + + /// + /// Gets a value whether the plugins are loaded. Not synchronized, always use in a lock. + /// + /// THIS MUST NOT BE SYNCHRONIZED, ALWAYS CALLED IN LOCK! (possible deadlock in FusionProgressDialog). + public bool PluginsLoaded + { + get + { + return IsolatedPluginsSandbox != null; + } + } + + /// + /// Gets Hyphen plugin info. + /// + public PLUGININFO PluginInfo + { + get + { + return this.pluginInfo; + } + } + + #endregion + + #region API IMPL + + #region First-Init + + /// + /// Initializes the runtime. + /// + /// + /// Called from the exported IL stubs as a first method to initialize the Loader singleton. + /// + public static void Initialize() + { + lock (SyncObject) + { + if (Singleton == null) + Singleton = new Loader(); + } + } + + /// + /// Initializes the Loader and prepares its PLUGININFO. + /// + private Loader() + { + AppDomain.CurrentDomain.UnhandledException += TrapUnhandledException; + Log.DebuggerWrite(0, LogCategory, "Initializing Hyphen..."); + + try + { + InitializePluginInfo(); + Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment.Initialize(); + + Log.DebuggerWrite(0, LogCategory, "Hyphen successfully initialized."); + } + catch (Exception e) + { + Log.DebuggerWrite(5, LogCategory, "Failed constructing the PLUGININFO." + Environment.NewLine + e.ToString()); + throw; + } + } + + /// + /// Publishes the plugin info and marshals it into a ptr. + /// + private void InitializePluginInfo() + { + PLUGININFO pluginInfo = new PLUGININFO(); + PopulatePluginInfo(pluginInfo); + PluginInfoHandle = new UnmanagedStructHandle(ref pluginInfo); + + PLUGININFOEX pluginInfoEx = new PLUGININFOEX(UUID.HyphenUUID); + PopulatePluginInfo(pluginInfoEx); + PluginInfoExHandle = new UnmanagedStructHandle(ref pluginInfoEx); + + this.pluginInfo = pluginInfoEx; + } + + /// + /// Populates the plugin info with Hyphen's identity. + /// + /// Plugin info. + private static void PopulatePluginInfo(PLUGININFO pluginInfo) + { + if (pluginInfo == null) + throw new ArgumentNullException("pluginInfo"); + + pluginInfo.Size = Marshal.SizeOf(pluginInfo.GetType()); + pluginInfo.Author = "virtuoso"; + pluginInfo.AuthorEmail = "deml.tomas@seznam.cz"; + pluginInfo.Copyright = "© 2006-2010, virtuoso"; + pluginInfo.Description = "Microsoft.net runtime for managed plugins."; + pluginInfo.HomePage = HyphenHomepageUrl.ToString(); + pluginInfo.Flags = (byte)PluginFlags.UnicodeAware; + pluginInfo.ReplacesDefaultModule = 0; + pluginInfo.ShortName = "Hyphen"; + pluginInfo.Version = Translate.ToMirandaVersion(HyphenVersion); + } + + #endregion + + #region Getters + + /// + /// Gets a specified version of the Loader. + /// + /// A version of the Loader to be returned. + /// An instance of the Loader or NULL when the version cannot be satisfied. + /// + /// Cannot be inlined because of the HyphenVersion property which relies on the Assembly.GetExecutingAssembly() method. + /// + [MethodImpl(MethodImplOptions.NoInlining)] + public static Loader GetInstance(Version requiredVersion) + { + if (requiredVersion > HyphenVersion) + return null; + else + return GetInstance(); + } + + /// + /// Gets an instance of the Loader. + /// + /// An instance of the Loader. + /// method not called. + public static Loader GetInstance() + { + lock (SyncObject) + { + if (Singleton == null) + throw new InvalidOperationException(); + + return Singleton; + } + } + + #endregion + + #region APIs + + #region MirandaPluginInfo + + /// + /// Represents the MirandaPluginInfo export of Miranda's API. + /// + /// Miranda version (in Miranda's format) + /// Ptr to an instance of the PLUGININFO structure. + public IntPtr MirandaPluginInfo(uint version) + { + MirandaPluginInfoShared(version); + + if (!SupportsMirandaVersion(version)) + return GetDummyPluginInfo(); + else + { + lock (SyncObject) + return PluginInfoHandle.IntPtr; + } + } + + /// + /// Represents the MirandaPluginInfoEx export of Miranda's API. + /// + /// Miranda version (in Miranda's format) + /// Ptr to an instance of the PLUGININFOEX structure. + /// + /// Specific to post-0.7#20 Miranda API. + /// + public IntPtr MirandaPluginInfoEx(uint version) + { + MirandaPluginInfoShared(version); + + if (!SupportsMirandaVersion(version)) + return GetDummyPluginInfo(); + else + { + lock (SyncObject) + return PluginInfoExHandle.IntPtr; + } + } + + /// + /// Gets the pointer to a dummy plugin info structure. + /// + /// Pointer. + public static IntPtr GetDummyPluginInfo() + { + lock (SyncObject) + { + if (DummyPluginInfo == IntPtr.Zero) + { + DummyPluginInfo = Marshal.AllocHGlobal(Marshal.SizeOf(typeof(PLUGININFO))); + Marshal.StructureToPtr(new PLUGININFO(), DummyPluginInfo, false); + } + + return DummyPluginInfo; + } + } + + /// + /// Performs initialization steps common to all MirandaPluginInfo exports. + /// + /// Miranda version. + public void MirandaPluginInfoShared(uint version) + { + if (MirandaEnvironment.MirandaVersion == null) + MirandaEnvironment.MirandaVersion = Translate.FromMirandaVersion(version); + } + + public static bool SupportsMirandaVersion(uint version) + { + return SupportsMirandaVersion(Translate.FromMirandaVersion(version)); + } + + public static bool SupportsMirandaVersion(Version version) + { + return (version >= MinMirandaVersion); + } + + /// + /// Represents the MirandaPluginInterfaces export of Miranda's API. + /// + /// Ptr to an array of interface GUIDs. + public IntPtr MirandaPluginInterfaces() + { + lock (SyncObject) + return UUID.HyphenInterfaceUUIDs; + } + + #endregion + + #region Load + + /// + /// Called by a standalone module to ensure the Loader is ready (the module could be loaded before Hyphen). + /// + /// Ptr to an instance of the PLUGINLINK structure. + /// + /// Calls the to ensure that the Loader is ready. This method is needed + /// to handle a situation when a standalone module is loaded before Hyphen. + /// Does nothing when Hyphen is already loaded. + /// + public void ModuleInducedLoad(IntPtr pPluginLink) + { + Load(pPluginLink); + } + + /// + /// Represents the Load export of Miranda API. Loads Hyphen and initializes the runtime. + /// + /// Ptr to an instance of the PLUGINLINK structure. + /// Result. + public int Load(IntPtr pPluginLink) + { + lock (SyncObject) + { + Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment.HyphenIsLoading = true; + + try + { + // Hyphen not loaded yet... + if (PluginLink == null) + { + Log.DebuggerWrite(0, LogCategory, "Loading Hyphen..."); + + VerifyFxConfiguration(); + EnsureSingleInstance(); + + InitializeRuntimeContext(pPluginLink); + HookRuntimeEvents(); + } + + Log.DebuggerWrite(0, LogCategory, "Hyphen is loaded."); + return CallbackResult.Success; + } + catch (Exception e) + { + Log.DebuggerWrite(5, LogCategory, "Failed loading Hyphen - " + e.ToString()); + MirandaPlugin.Hyphen.Singleton.HandleException(e, null); + + Unload(); + return CallbackResult.Failure; + } + finally + { + Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment.HyphenIsLoading = false; + } + } + } + + /// + /// Initializes the runtime context (including configuration). + /// + /// Ptr to PLUGINLINK to initialize from. + private void InitializeRuntimeContext(IntPtr pPluginLink) + { + // Init configuration + RuntimeConfiguration.Initialize(); + + // Marshal the plugin link + PluginLink = MirandaPluginLink.FromPointer(pPluginLink); + + // Initialize temporary context (specific to default AppDomain) for standalone modules + MirandaContext.InitializeCurrent(PluginLink, true); + } + + /// + /// Hooks to the ModulesLoaded event to complete context initialization. + /// + private void HookRuntimeEvents() + { + try + { + HookDescriptor modulesLoadedEventHook = HookDescriptor.SetUpAndStore(InternalHooks, MirandaEvents.ME_SYSTEM_MODULESLOADED, MirandaPlugin.Hyphen.Singleton.Descriptor, CompleteInitialization, HookType.EventHook); + HookManager.CreateHook(modulesLoadedEventHook); + } + catch (Exception e) + { + Log.DebuggerWrite(5, LogCategory, "Failed hooking to the modules-loaded event. Initialization failed."); + throw new MirandaException(TextResources.ExceptionMsg_InternalErrorOccurred, e); + } + } + + #region Initialization + + /// + /// Completes the runtime initialization and fires the ModulesLoaded event. + /// + private int CompleteInitialization(UIntPtr wParam, IntPtr lParam) + { + lock (SyncObject) + { + try + { + // Unhook the event + HookDescriptor descriptor = InternalHooks.Find(MirandaEvents.ME_SYSTEM_MODULESLOADED); + HookManager.DestroyHook(descriptor); + InternalHooks.Remove(descriptor); + + // Hook the shutdown event to unload Hyphen + HookManager.CreateHook(HookDescriptor.SetUpAndStore(InternalHooks, MirandaEvents.ME_SYSTEM_OKTOEXIT, MirandaPlugin.Hyphen.Singleton.Descriptor, UnloadOnShutdownService, HookType.EventHook)); + + InitializeUpdater(); + InitializePluginsFolder(); + InitializeMenu(); + + MirandaContext.Current.RaiseModulesLoadedEvent(); + } + catch (Exception e) + { + Log.DebuggerWrite(5, LogCategory, "Failed initializing Loader - " + e.Message); + Unload(); + } + + return (int)CallbackResult.Success; + } + } + + /// + /// Registers Hyphen for updates via Updater. + /// + private static void InitializeUpdater() + { + if (UpdaterPlugin.IsUpdateSupported()) + { + Update update = new Update(MirandaPlugin.Hyphen.Singleton, HyphenUpdateUrl, HyphenVersionUrl, " "); + UpdaterPlugin.RegisterForUpdate(update); + } + } + + /// + /// Initializes the FileSystemWatcher to watch for plugin changes. + /// + private void InitializePluginsFolder() + { + if (!Directory.Exists(MirandaEnvironment.ManagedPluginsFolderPath)) + Directory.CreateDirectory(MirandaEnvironment.ManagedPluginsFolderPath); + + PluginsFolderWatcher = new FileSystemWatcher(MirandaEnvironment.ManagedPluginsFolderPath, "*.dll"); + PluginsFolderWatcher.IncludeSubdirectories = false; + PluginsFolderWatcher.NotifyFilter = NotifyFilters.LastWrite; + PluginsFolderWatcher.Deleted += PluginsWatcherHandler; + PluginsFolderWatcher.Changed += PluginsWatcherHandler; + PluginsFolderWatcher.Created += PluginsWatcherHandler; + } + + /// + /// Populates Miranda's menu with Hyphen's items and initializes managed menu for plugins. + /// + private void InitializeMenu() + { + PluginDescriptor descriptor = MirandaPlugin.Hyphen.Singleton.Descriptor; + ContactList clist = MirandaContext.Current.ContactList; + + // Create services for the items + HookManager.CreateHook(HookDescriptor.SetUpAndStore(InternalHooks, LoadUnloadPluginsServiceName, descriptor, LoadUnloadPluginsService, HookType.ServiceFunction)); + HookManager.CreateHook(HookDescriptor.SetUpAndStore(InternalHooks, ConfigureModulesServiceName, descriptor, ConfigureModulesService, HookType.ServiceFunction)); + HookManager.CreateHook(HookDescriptor.SetUpAndStore(InternalHooks, ShowManagedMenuServiceName, descriptor, ShowManagedMenuService, HookType.ServiceFunction)); + HookManager.CreateHook(HookDescriptor.SetUpAndStore(InternalHooks, ManagePluginsServiceName, descriptor, ManagePluginsService, HookType.ServiceFunction)); + + InitializeManagedMenu(); + + MenuItemDeclarationAttribute item = new MenuItemDeclarationAttribute(TextResources.UI_Text_LoadUnloadPlugins, TextResources.UI_Text_Hyphen, LoadUnloadPluginsServiceName); + item.IsContactMenuItem = false; + item.HasIcon = true; + item.UseEmbeddedIcon = true; + item.IconID = "Virtuoso.Miranda.Plugins.Resources.LoadUnloadPlugins.ico"; + clist.AddMenuItem(MirandaPlugin.Hyphen.Singleton, item); + + item = PluginTasksItem = new MenuItemDeclarationAttribute(TextResources.UI_Text_ManagePlugins, TextResources.UI_Text_Hyphen, ManagePluginsServiceName); + item.IsContactMenuItem = false; + item.HasIcon = true; + item.UseEmbeddedIcon = true; + item.IconID = "Virtuoso.Miranda.Plugins.Resources.Configure.ico"; + clist.AddMenuItem(MirandaPlugin.Hyphen.Singleton, item); + + item = new MenuItemDeclarationAttribute(TextResources.UI_Text_ConfigureStandaloneModules, TextResources.UI_Text_Hyphen, ConfigureModulesServiceName); + item.IsContactMenuItem = false; + item.HasIcon = true; + item.UseEmbeddedIcon = true; + item.IconID = "Virtuoso.Miranda.Plugins.Resources.Configure.ico"; + clist.AddMenuItem(MirandaPlugin.Hyphen.Singleton, item); + } + + /// + /// Initializes the managed menu for managed plugins. This menu, unlike Miranda's, supports item removal. + /// + private void InitializeManagedMenu() + { + ManagedMainMenu = new ManagedMainMenu(); + + MenuItemDeclarationAttribute item = new MenuItemDeclarationAttribute(TextResources.UI_Text_ShowManagedMainMenu, ShowManagedMenuServiceName); + item.IsContactMenuItem = false; + item.HasIcon = true; + item.UseEmbeddedIcon = true; + item.IconID = "Virtuoso.Miranda.Plugins.Resources.ShowManagedMenuItems.ico"; + + // Add a proxy item for the managed menu into M's menu (on behalf of a dummy plugin) + MirandaContext.Current.ContactList.AddMenuItem(MirandaPlugin.Hyphen.Singleton, item); + } + + #endregion + + #endregion + + #region Unload + + /// + /// Represents the Unload export of Miranda API. Unloads Hyphen and shuts down the runtime. + /// + /// Unload result. + /// + /// Called by the UnloadOnShutdownService to unload managed plugins before Miranda does. + /// Managed plugins SHOULD NOT be unloaded when Miranda's unloading, because I do not consider it safe + /// (i.e. heap corruption is likely to occur). + /// + public int Unload() + { + lock (SyncObject) + { + try + { + Log.DebuggerWrite(0, LogCategory, "Hyphen unload begin."); + + if (Unloaded) + return (int)CallbackResult.Success; + + if (RuntimeConfiguration.Initialized) + RuntimeConfiguration.Singleton.Save(); + + bool lazy = RuntimeConfiguration.Singleton.UseLazyUnload; + + if (PluginsLoaded) + UnloadPlugins(lazy); + + // Lazy unload (only Tray disposal, all other resources will be cleaned by the CLR) + if (lazy) + { + Log.DebuggerWrite(0, LogCategory, "Lazy unload completed."); + } + // Complete unload + else + { + PerformFullUnload(); + } + + return (int)CallbackResult.Success; + } + catch (Exception e) + { + Log.DebuggerWrite(5, LogCategory, "Failed unloading Hyphen.\n" + e.ToString()); + return (int)CallbackResult.Failure; + } + finally + { + Unloaded = true; + } + } + } + + /// + /// Unloads Hyphen completelly. + /// + private void PerformFullUnload() + { + DisposePluginsWatcher(); + + PluginInfoHandle.Free(); + PluginInfoExHandle.Free(); + + InteropBufferPool.Dispose(); + + // Invalidate context only if there are no standalone modules that may depend on it + if (MirandaContext.Initialized && !ModuleManager.Singleton.HasModules) + MirandaContext.InvalidateCurrent(); + + Log.DebuggerWrite(0, LogCategory, "Unload completed."); + } + + /// + /// Disposes the plugin's folder watcher (if needed). + /// + private void DisposePluginsWatcher() + { + if (PluginsFolderWatcher != null) + PluginsFolderWatcher.Dispose(); + } + + /// + /// Disposes the Tray manager (if needed). + /// + private void DisposePluginTasksMenu() + { + /*if (trayManager != null) + trayManager.Dispose();*/ + } + + /// + /// Broadcasts the BeforeShutdown event to the managed plugins and unloads Hyphen on Miranda's shutdown. + /// + private int UnloadOnShutdownService(UIntPtr wParam, IntPtr lParam) + { + try + { + lock (SyncObject) + { + HookDescriptor descriptor = InternalHooks.Find(MirandaEvents.ME_SYSTEM_OKTOEXIT); + HookManager.DestroyHook(descriptor); + InternalHooks.Remove(descriptor); + + if (PluginsLoaded) + IsolatedPluginsSandbox.PluginManager.DoContextCallback(BroadcastBeforeMirandaExitEvent, null); + + Unload(); + } + } + catch (Exception e) + { + Log.DebuggerWrite(5, LogCategory, "Unable to unload Hyphen from UnloadOnShutdownService: " + e.Message); + } + + return 0; + } + + /// + /// Broadcasts the BeforeShutdown event to the managed plugins. + /// + private static void BroadcastBeforeMirandaExitEvent(PluginManagerBase sender, object state) + { + try + { + SynchronizationHelper.BeginCollectionUpdate(sender.Plugins); + + foreach (PluginDescriptor descriptor in sender.Plugins) + { + try + { + SynchronizationHelper.BeginDescriptorUpdate(descriptor); + descriptor.Plugin.BeforeMirandaShutdownInternal(); + } + finally + { + SynchronizationHelper.EndUpdate(descriptor); + } + } + } + finally + { + SynchronizationHelper.EndUpdate(sender.Plugins); + } + } + + #endregion + + #endregion + + #endregion + + #region Loader Control + + #region Loading + + #region Core + + /// + /// Loads / unloads managed plugins. + /// + private int LoadUnloadPluginsService(UIntPtr wParam, IntPtr lParam) + { + lock (SyncObject) + { + try + { + if (!PluginsLoaded) + LoadPlugins(); + else if (DialogResult.Yes == MessageBox.Show(TextResources.MsgBox_Text_LoadUnloadPlugins_Unload, TextResources.MsgBox_Caption_LoadUnloadPlugins, MessageBoxButtons.YesNo, MessageBoxIcon.Warning)) + UnloadPlugins(); + } + catch (Exception e) + { + MirandaPlugin.Hyphen.Singleton.HandleException(e, null); + } + } + + return (int)CallbackResult.Success; + } + + /// + /// Reloads managed plugins. + /// + private void ReloadPlugins() + { + UnloadPlugins(); + LoadPlugins(); + } + + /// + /// Loads managed plugins. + /// + private void LoadPlugins() + { + lock (SyncObject) + { + if (PluginsLoaded) + throw new InvalidOperationException(TextResources.ExceptionMsg_InternalErrorOccurred); + + InitializePluginTasksMenu(); + + // Show the progress dialog => start fusion + FusionProgressDialog.ShowDialog(StartFusion); + } + } + + /// + /// Called by the FusionProgressDialog on another thread to perform the fusion itself. + /// + private void StartFusion() + { + Log.DebuggerWrite(0, LogCategory, "Loading plugins..."); + + InitializeSandbox(); + InitializeFusionContext(); + + LoadPluginManager(); + + try + { + IsolatedPluginsSandbox.PluginManager.FindAndLoadPlugins(); + ClearStringResolverCache(); + } + catch (Exception e) + { + UnloadPlugins(); + TrapUnhandledException(this, new UnhandledExceptionEventArgs(e, false)); + } + } + + /// + /// Initializes a sandbox for plugins. + /// + private void InitializeSandbox() + { + IsolatedPluginsSandbox = new PluginsSandbox(); + IsolatedPluginsSandbox.SetUnhandledExceptionHandler(TrapUnhandledException); + IsolatedPluginsSandbox.LoadAssemblyProbe(); + } + + /// + /// Initializes a fusion context. + /// + private void InitializeFusionContext() + { + FusionContext = new FusionContext(this, IsolatedPluginsSandbox.AssemblyProbe, PluginLink.NativePluginLinkPtr); + } + + /// + /// Loads the Plugin Manager. + /// + private void LoadPluginManager() + { + IsolatedPluginsSandbox.LoadPluginManager(FusionContext); + + // Associate the PM with the default context for management purposes + MirandaContext.Current.AssociatePluginManager(IsolatedPluginsSandbox.PluginManager); + + IsolatedPluginsSandbox.PluginManager.FusionCompleted += delegate + { + PluginsLoadedEvent.Set(); + PluginsFolderWatcher.EnableRaisingEvents = true; + }; + + PromoteManagedMenuIntoAppDomain(IsolatedPluginsSandbox.PluginManager); + } + + /// + /// Initializes the Tray Manager. + /// + public void InitializePluginTasksMenu() + { + /*InitializeUISyncContext(); + UIThreadSyncContext.Send(delegate { trayManager = new TrayMenuManager(true); }, null);*/ + } + + #endregion + + #region Helpers + + /// + /// Initializes the UI sync context for event dispathing on the current thread. + /// + private void InitializeUISyncContext() + { + if (UIThreadSyncContext == null) + UIThreadSyncContext = SynchronizationContext.Current ?? new SynchronizationContext(); + } + + /// + /// Registers managed main menu for Miranda's AddMenuItem services in an AppDomain. + /// + /// Plugin manager. + public void PromoteManagedMenuIntoAppDomain(PluginManagerBase pluginManager) + { + if (pluginManager == null) + throw new ArgumentNullException("pluginManager"); + + if (ManagedMainMenu != null) + { + pluginManager.DoContextCallback(delegate(PluginManagerBase _sender, ManagedMainMenu _menu) + { + ManagedMainMenu.RegisterInterceptors(_menu); + }, ManagedMainMenu); + } + } + + /// + /// Clears the StringResolver cache (plugins are loaded and resolvers are junk now). + /// + private static void ClearStringResolverCache() + { + StringResolverCache cache = StringResolverCache.Singleton; + + lock (cache) + cache.Clear(); + } + + #endregion + + #endregion + + #region Services + + /// + /// Shows managed menu. + /// + private int ShowManagedMenuService(UIntPtr wParam, IntPtr lParam) + { + lock (SyncObject) + { + // If there are no standalone modules and managed plugins are not loaded, LOAD THEM AND SHOW THE MENU + if (!ModuleManager.Singleton.HasModules && !PluginsLoaded) + { + // Async + LoadPlugins(); + PluginsLoadedEvent.WaitOne(10000, false); + } + + if (ManagedMainMenu != null) + ManagedMainMenu.ShowUnderCursor(); + } + + return (int)CallbackResult.Success; + } + + /// + /// Shows a configuration dialog to configure standalone modules. + /// + private int ConfigureModulesService(UIntPtr wParam, IntPtr lParam) + { + ConfigurationDialog.Present(false); + return (int)CallbackResult.Success; + } + + /// + /// Shows Isolated-plugins management dialog. + /// + private int ManagePluginsService(UIntPtr wParam, IntPtr lParam) + { + if (!PluginsLoaded) + MessageBox.Show(TextResources.MsgBox_Text_NoPluginsLoaded, TextResources.MsgBox_Caption_NoPluginsLoaded, MessageBoxButtons.OK, MessageBoxIcon.Warning); + else + ManagePlugins(); + + return CallbackResult.Success; + } + + /// + /// Shows the plugin management dialog. + /// + public void ManagePlugins() + { + if (PluginsLoaded) + { + MirandaContext.Current.PluginManager.DoContextCallback(delegate + { + ConfigurationDialog.Present(false, ConfigurationDialog.CreatePath(PMConfigurator.Singleton, TextResources.Config_Management, TextResources.Config_Management_Plugins)); + }, null); + } + } + + /// + /// Handles a plugin file change. + /// + private void PluginsWatcherHandler(object sender, FileSystemEventArgs e) + { + lock (SyncObject) + { + try + { + if (!PluginsLoaded) + return; + + if (DialogResult.Yes == MessageBox.Show(TextResources.MsgBox_Text_PluginUpdated, String.Format(TextResources.MsgBox_Formatable1_Caption_PluginUpdated, e.Name.Substring(0, e.Name.Length - 4)), MessageBoxButtons.YesNo, MessageBoxIcon.Information)) + { + // Async + ReloadPlugins(); + PluginsLoadedEvent.WaitOne(10000, false); + + MessageBox.Show(TextResources.MsgBox_Text_PluginReloadComplete, TextResources.MsgBox_Caption_PluginReloadComplete, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + } + catch (Exception ex) + { + Log.DebuggerWrite(0, LogCategory, "Plugin reload failed: " + ex.ToString()); + } + } + } + + #endregion + + #region Unloading + + /// + /// Unloads managed plugins. + /// + public void UnloadPlugins() + { + UnloadPlugins(false); + } + + /// + /// Unloads managed plugins. + /// + /// TRUE to perform fast unload only; FALSE to perfrom full unload. + public void UnloadPlugins(bool lazy) + { + lock (SyncObject) + { + if (!PluginsLoaded) + throw new InvalidOperationException(TextResources.ExceptionMsg_InternalErrorOccurred); + + DisposePluginTasksMenu(); + + PluginsFolderWatcher.EnableRaisingEvents = false; + PluginsLoadedEvent.Reset(); + + MirandaContext.Current.DetachPluginManager(); + IsolatedPluginsSandbox.PluginManager.Shutdown(lazy); + + if (!lazy) + Sandbox.Unload(IsolatedPluginsSandbox); + + IsolatedPluginsSandbox = null; + } + } + + #endregion + + #endregion + + #region Misc. + + /// + /// Handles Hyphen (default AppDomain) unhandled exceptions. + /// + private void TrapUnhandledException(object sender, UnhandledExceptionEventArgs e) + { + MirandaPlugin.Hyphen.Singleton.HandleException((Exception)e.ExceptionObject, null); + } + + /// + /// Handles Windows Forms (default AppDomain) unhandled exceptions. + /// + private void TrapUnhandledException(object sender, ThreadExceptionEventArgs e) + { + TrapUnhandledException(sender, new UnhandledExceptionEventArgs(e.Exception, false)); + } + + /// + /// Verifies the .config file is present and when it is not, the default one is created. + /// + private static void VerifyFxConfiguration() + { + string configFileName = AppDomain.CurrentDomain.SetupInformation.ConfigurationFile; + + if (String.IsNullOrEmpty(configFileName) || !File.Exists(configFileName)) + { + using (StreamReader reader = new StreamReader(Assembly.GetExecutingAssembly().GetManifestResourceStream("Virtuoso.Miranda.Plugins.Resources.miranda32.exe.config"))) + using (StreamWriter writer = new StreamWriter(configFileName)) + writer.Write(reader.ReadToEnd()); + + MessageBox.Show(TextResources.MsgBox_Text_MirandaRestartRequired, TextResources.ExceptionMsg_MirandaRestartRequired, MessageBoxButtons.OK, MessageBoxIcon.Warning); + throw new MirandaException(TextResources.ExceptionMsg_MirandaRestartRequired); + } + } + + /// + /// Ensures only a single instance of Hyphen is loaded into the process. + /// + private void EnsureSingleInstance() + { + bool acquired = false; + SingleInstanceMutex = new Mutex(true, GetSingletonMutexName(), out acquired); + + if (!acquired) + throw new NotSupportedException(TextResources.ExceptionMsg_HyphenSxSNotSupported); + } + + /// + /// Formats singleton's mutex name. + /// + /// Mutext name. + private static string GetSingletonMutexName() + { + return String.Format("{0}::Hyphen", Process.GetCurrentProcess().Id.ToString()); + } + + /// + /// Invokes a delegate on behalf of Loader's AppDomain (i.e. the default one). + /// + /// Delegate. + /// Optional arguments. + /// + public object DoContextCallback(Delegate del, params object[] args) + { + if (del == null) + throw new ArgumentNullException("del"); + + return del.DynamicInvoke(args); + } + + /// + /// Verifies whether the code is executing in the default AppDomain. + /// + /// The code is not executing in the default AppDomain. + public static void VerifyDefaultDomain() + { + if (!AppDomain.CurrentDomain.IsDefaultAppDomain()) + throw new NotSupportedException(TextResources.ExceptionMsg_FeatureNotAvailableInDomain); + } + + #endregion + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/Hyphen/Mini/Custom/CustomApiExportDescriptor.cs b/Hyphen/Plugins/Hyphen/Mini/Custom/CustomApiExportDescriptor.cs new file mode 100644 index 0000000..7f61c8f --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/Custom/CustomApiExportDescriptor.cs @@ -0,0 +1,71 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Hyphen.Mini.Custom +{ + public delegate object CustomApiExportCallback(object[] args); + + public sealed class CustomApiExportDescriptor + { + #region Fields + + private readonly string exportName; + public string ExportName + { + get { return exportName; } + } + + private readonly CustomApiExportCallback callback; + public CustomApiExportCallback Callback + { + get { return callback; } + } + + #endregion + + #region .ctors + + public CustomApiExportDescriptor(string exportName, CustomApiExportCallback callback) + { + if (String.IsNullOrEmpty(exportName)) throw new ArgumentNullException("exportName"); + if (callback == null) throw new ArgumentNullException("callback"); + + this.exportName = exportName; + this.callback = callback; + } + + #endregion + + #region Methods + + internal T Execute(params object[] args) + { + object result = callback(args); + + if (result != null) + return (T)result; + else + return (T)default(T); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/Mini/Custom/CustomApiExportHandlerAttribute.cs b/Hyphen/Plugins/Hyphen/Mini/Custom/CustomApiExportHandlerAttribute.cs new file mode 100644 index 0000000..998205e --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/Custom/CustomApiExportHandlerAttribute.cs @@ -0,0 +1,47 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Hyphen.Mini.Custom +{ + [AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = true)] + public sealed class CustomApiExportHandlerAttribute : Attribute + { + #region Fields + + private readonly string exportName; + public string ExportName + { + get { return exportName; } + } + + #endregion + + #region .ctors + + public CustomApiExportHandlerAttribute(string exportName) + { + if (exportName == null) throw new ArgumentNullException("exportName"); + this.exportName = exportName; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/Mini/Custom/CustomizedDatabaseDriver.cs b/Hyphen/Plugins/Hyphen/Mini/Custom/CustomizedDatabaseDriver.cs new file mode 100644 index 0000000..ced4c1a --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/Custom/CustomizedDatabaseDriver.cs @@ -0,0 +1,88 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Hyphen.Mini; +using Virtuoso.Miranda.Plugins; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Hyphen.Native; + +namespace Virtuoso.Hyphen.Mini.Custom +{ + public abstract class CustomizedDatabaseDriver : DatabaseDriver + { + #region .ctors + + protected CustomizedDatabaseDriver() { } + + #endregion + + #region Thunks + + protected override sealed int GetCapabilityThunk(int flags) + { + return Convert.ToInt32(GetCapability(flags)); + } + + protected override sealed int GetFriendlyNameThunk(IntPtr buffer, int size, int shortName) + { + string name = GetFriendlyName(shortName != 0, size); + if (name == null) return -1; + + byte[] bytes = Encoding.Default.GetBytes(name); + + if (size < bytes.Length) + return -1; + else + { + Marshal.Copy(bytes, 0, buffer, bytes.Length); + return 0; + } + } + + protected override sealed int InitThunk(string profile, IntPtr pLink) + { + return Init(profile, pLink); + } + + protected override sealed int UnloadThunk(int wasLoaded) + { + return Unload(wasLoaded != 0); + } + + #endregion + + #region Abstract Members + + protected abstract bool GetCapability(int flags); + + protected abstract string GetFriendlyName(bool shortName, int size); + + protected abstract int MakeDatabase(string profile, ref int error); + + protected abstract int GrokHeader(string profile, ref int error); + + protected abstract int Init(string profile, IntPtr pLink); + + protected abstract int Unload(bool wasLoaded); + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/Mini/Custom/DatabaseDriver.cs b/Hyphen/Plugins/Hyphen/Mini/Custom/DatabaseDriver.cs new file mode 100644 index 0000000..7dc16d4 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/Custom/DatabaseDriver.cs @@ -0,0 +1,120 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins; + +namespace Virtuoso.Hyphen.Mini.Custom +{ + [LoaderOptions(LoaderOptions.HasCustomApiExports | LoaderOptions.CannotBeUnloaded)] + public abstract class DatabaseDriver : StandalonePlugin + { + #region Fields + + private GCHandle DatabaseLinkGcHandle; + private UnmanagedStructHandle DatabaseLinkHandle; + + private volatile bool Disposed; + + #endregion + + #region .ctors + + protected DatabaseDriver() { } + + ~DatabaseDriver() + { + UnloadPreThunk(0); + } + + #endregion + + #region Api Handlers + + [CustomApiExportHandler("DatabasePluginInfo")] + internal object DatabasePluginInfoThunk(object[] args) + { + DatabaseLink link = new DatabaseLink(); + + link.Size = Marshal.SizeOf(typeof(DatabaseLink)); + link.GetCapability = GetCapabilityThunk; + link.GetFriendlyName = GetFriendlyNameThunk; + link.GrokHeader = GrokHeaderThunk; + link.Init = InitPreThunk; + link.MakeDatabase = MakeDatabaseThunk; + link.Unload = UnloadPreThunk; + DatabaseLinkHandle = new UnmanagedStructHandle(ref link); + + DatabaseLinkGcHandle = GCHandle.Alloc(link); + return DatabaseLinkHandle.IntPtr; + } + + #endregion + + #region Thunks + + /// + /// MirandaContext is not available at the time of the invocation. + /// + /// + /// + /// + protected abstract int MakeDatabaseThunk(string profile, ref int error); + + protected abstract int GrokHeaderThunk(string profile, ref int error); + + protected abstract int GetCapabilityThunk(int flags); + + protected abstract int GetFriendlyNameThunk(IntPtr buffer, int size, int shortName); + + private int InitPreThunk(string profile, IntPtr pLink) + { + return -(Math.Abs(Module.Load(pLink)) + Math.Abs(InitThunk(profile, pLink))); + } + + protected abstract int InitThunk(string profile, IntPtr link); + + private int UnloadPreThunk(int wasLoaded) + { + try + { + if (!Disposed) + { + UnloadThunk(wasLoaded); + DatabaseLinkHandle.Free(); + + if (DatabaseLinkGcHandle.IsAllocated) + DatabaseLinkGcHandle.Free(); + } + } + finally + { + Disposed = true; + } + + return 0; + } + + protected abstract int UnloadThunk(int wasLoaded); + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/Mini/Custom/DatabaseLink.cs b/Hyphen/Plugins/Hyphen/Mini/Custom/DatabaseLink.cs new file mode 100644 index 0000000..f295347 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/Custom/DatabaseLink.cs @@ -0,0 +1,91 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Hyphen.Mini.Custom +{ + [StructLayout(LayoutKind.Sequential, Pack = 4)] + public struct DatabaseLink + { + public int Size; + + public GetCapabilityPrototype GetCapability; + public GetFriendlyNamePrototype GetFriendlyName; + public MakeDatabasePrototype MakeDatabase; + public GrokHeaderPrototype GrokHeader; + public InitPrototype Init; + public UnloadPrototype Unload; + }} + + /* typedef struct { + int cbSize; + + returns what the driver can do given the flag + + int (*getCapability) ( int flag ); + + / + buf: pointer to a string buffer + cch: length of buffer + shortName: if true, the driver should return a short but descriptive name, e.g. "3.xx profile" + Affect: The database plugin must return a "friendly name" into buf and not exceed cch bytes, + e.g. "Database driver for 3.xx profiles" + Returns: 0 on success, non zero on failure + + int (*getFriendlyName) ( char * buf, size_t cch, int shortName ); + + + profile: pointer to a string which contains full path + name + Affect: The database plugin should create the profile, the filepath will not exist at + the time of this call, profile will be C:\..\.dat + Note: Do not prompt the user in anyway about this operation. + Note: Do not initialise internal data structures at this point! + Returns: 0 on success, non zero on failure - error contains extended error information, see EMKPRF_* + + int (*makeDatabase) ( char * profile, int * error ); + + + profile: [in] a null terminated string to file path of selected profile + error: [in/out] pointer to an int to set with error if any + Affect: Ask the database plugin if it supports the given profile, if it does it will + return 0, if it doesnt return 1, with the error set in error -- EGROKPRF_* can be valid error + condition, most common error would be [EGROKPRF_UNKHEADER] + Note: Just because 1 is returned, doesnt mean the profile is not supported, the profile might be damaged + etc. + Returns: 0 on success, non zero on failure + + int (*grokHeader) ( char * profile, int * error ); + + + Affect: Tell the database to create all services/hooks that a 3.xx legecy database might support into link, + which is a PLUGINLINK structure + Returns: 0 on success, nonzero on failure + + int (*Init) ( char * profile, void * link ); + + + Affect: The database plugin should shutdown, unloading things from the core and freeing internal structures + Returns: 0 on success, nonzero on failure + Note: Unload() might be called even if Init() was never called, wasLoaded is set to 1 if Init() was ever called. + + int (*Unload) ( int wasLoaded ); + +} DATABASELINK; */ diff --git a/Hyphen/Plugins/Hyphen/Mini/Custom/DatabaseLinkPrototypes.cs b/Hyphen/Plugins/Hyphen/Mini/Custom/DatabaseLinkPrototypes.cs new file mode 100644 index 0000000..d6b7981 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/Custom/DatabaseLinkPrototypes.cs @@ -0,0 +1,105 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using Virtuoso.Hyphen; + +namespace Virtuoso.Hyphen.Mini.Custom +{ + //int (*getCapability) ( int flag ); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate int GetCapabilityPrototype(int flags); + + //int (*getFriendlyName) ( char * buf, size_t cch, int shortName ); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate int GetFriendlyNamePrototype(IntPtr buf, int size, int shortName); + + //int (*makeDatabase) ( char * profile, int * error ); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate int MakeDatabasePrototype([MarshalAs(UnmanagedType.LPStr)] string profile, ref int error); + + //int (*grokHeader) ( char * profile, int * error ); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate int GrokHeaderPrototype([MarshalAs(UnmanagedType.LPStr)] string profile, ref int error); + + //int (*Init) ( char * profile, void * link ); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate int InitPrototype([MarshalAs(UnmanagedType.LPStr)] string profile, IntPtr link); + + //int (*Unload) ( int wasLoaded ); + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate int UnloadPrototype(int wasLoaded); +} + +/* typedef struct { + int cbSize; + + returns what the driver can do given the flag + + int (*getCapability) ( int flag ); + + / + buf: pointer to a string buffer + cch: length of buffer + shortName: if true, the driver should return a short but descriptive name, e.g. "3.xx profile" + Affect: The database plugin must return a "friendly name" into buf and not exceed cch bytes, + e.g. "Database driver for 3.xx profiles" + Returns: 0 on success, non zero on failure + + int (*getFriendlyName) ( char * buf, size_t cch, int shortName ); + + + profile: pointer to a string which contains full path + name + Affect: The database plugin should create the profile, the filepath will not exist at + the time of this call, profile will be C:\..\.dat + Note: Do not prompt the user in anyway about this operation. + Note: Do not initialise internal data structures at this point! + Returns: 0 on success, non zero on failure - error contains extended error information, see EMKPRF_* + + int (*makeDatabase) ( char * profile, int * error ); + + + profile: [in] a null terminated string to file path of selected profile + error: [in/out] pointer to an int to set with error if any + Affect: Ask the database plugin if it supports the given profile, if it does it will + return 0, if it doesnt return 1, with the error set in error -- EGROKPRF_* can be valid error + condition, most common error would be [EGROKPRF_UNKHEADER] + Note: Just because 1 is returned, doesnt mean the profile is not supported, the profile might be damaged + etc. + Returns: 0 on success, non zero on failure + + int (*grokHeader) ( char * profile, int * error ); + + + Affect: Tell the database to create all services/hooks that a 3.xx legecy database might support into link, + which is a PLUGINLINK structure + Returns: 0 on success, nonzero on failure + + int (*Init) ( char * profile, void * link ); + + + Affect: The database plugin should shutdown, unloading things from the core and freeing internal structures + Returns: 0 on success, nonzero on failure + Note: Unload() might be called even if Init() was never called, wasLoaded is set to 1 if Init() was ever called. + + int (*Unload) ( int wasLoaded ); + +} DATABASELINK; */ + diff --git a/Hyphen/Plugins/Hyphen/Mini/Module.AuxiliaryPluginManager.cs b/Hyphen/Plugins/Hyphen/Mini/Module.AuxiliaryPluginManager.cs new file mode 100644 index 0000000..c4d365b --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/Module.AuxiliaryPluginManager.cs @@ -0,0 +1,72 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins; +using System.Runtime.CompilerServices; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Hyphen.Mini +{ + partial class Module + { + /// + /// Auxiliary Plugin Manager used to load a standalone plugin into the default AppDomain. + /// + private sealed class AuxiliaryPluginManager : PluginManagerBase + { + #region Fields + + private static AuxiliaryPluginManager Singleton; + + #endregion + + #region .ctors + + private AuxiliaryPluginManager() + : base(FusionContext.Empty, false, false) { } + + #endregion + + #region Impl + + protected internal override void FindAndLoadPlugins() + { + throw new NotSupportedException(); + } + + [MethodImpl(MethodImplOptions.Synchronized)] + public static AuxiliaryPluginManager GetInstance() + { + return Singleton ?? (Singleton = new AuxiliaryPluginManager()); + } + + /// + /// Populates context information to be available for standalone plugins residing in the default AppDomain. + /// + /// The information are not published when there are no standalone modules to conserve resources. + public void FinishInitialization() + { + MirandaContext.Current.PopulateContextInformation(); + } + + #endregion + } + } +} diff --git a/Hyphen/Plugins/Hyphen/Mini/Module.cs b/Hyphen/Plugins/Hyphen/Mini/Module.cs new file mode 100644 index 0000000..8455744 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/Module.cs @@ -0,0 +1,529 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Reflection; +using System.IO; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Resources; +using System.Runtime.ConstrainedExecution; +using System.Diagnostics; +using Virtuoso.Hyphen.Native; +using Virtuoso.Miranda.Plugins; +using System.Runtime.CompilerServices; +using Virtuoso.Hyphen.Mini.Custom; +using System.Windows.Forms; +using Virtuoso.Miranda.Plugins.Forms; + +namespace Virtuoso.Hyphen.Mini +{ + /// + /// Represents a standalone module loaded into the default AppDomain. + /// + public sealed partial class Module + { + #region Fields + + private const string LogCategory = "HyphenMini"; + private const string MasterSuffx = ".master.dll"; + + private Assembly MasterAssembly; + private StandalonePlugin standalonePlugin; + private PluginDescriptor PluginDescriptor; + private bool isPostV07Build20Api; + + private IntPtr PluginInfoPtr; + private IntPtr MirandaPluginInterfacesPtr; + + private readonly Assembly MiniAssembly; + private volatile bool Loaded, Unloaded; + private LoaderOptions LoaderOptions; + + private AuxiliaryPluginManager PluginManager; + private Loader HyphenLoader; + + private readonly string MasterDirectory, MasterAssemblyPath; + + #endregion + + #region .ctors & .dctors + + /// + /// Initializes a new instance of the class. + /// + /// TRUE if the modules runs under a post-0.7#20 API; FALSE otherwise. + [MethodImpl(MethodImplOptions.NoInlining)] + internal Module(bool exApi) + { + // Init runtime + Loader.Initialize(); + + // Get a stub assembly establishing the connection + MiniAssembly = Assembly.GetCallingAssembly(); + + // Get the Loader instance based on stub's version + Version supportedVersion = MiniAssembly.GetName().Version; + HyphenLoader = Loader.GetInstance(new Version(supportedVersion.ToString(3))); + + if (HyphenLoader == null) + { + string message = String.Format("Hyphen.Mini module requested a Loader of version {0}, but that one is not available. Upgrade Hyphen.", supportedVersion); + Log.DebuggerWrite(5, LogCategory, message); + + throw new RuntimeNotSupportedException(null, supportedVersion); + } + + isPostV07Build20Api = exApi; + MasterDirectory = Path.GetDirectoryName(MiniAssembly.Location); + MasterAssemblyPath = Path.GetFileName(MiniAssembly.Location); + + Log.DebuggerWrite(0, LogCategory, "Connection between Miranda and '" + MasterAssemblyPath + "' established."); + } + + /// + /// Finalizes the module. + /// + ~Module() + { + Unloaded = true; + } + + #endregion + + #region API IMPL + + /// + /// Represents the MirandaPluginInfo export of Miranda's API. + /// + /// Miranda version (in Miranda's format) + /// Ptr to an instance of the PLUGININFO(EX) structure. + internal IntPtr MirandaPluginInfo(uint version) + { + // Already called? + if (PluginInfoPtr != IntPtr.Zero) + return PluginInfoPtr; + + Log.DebuggerWrite(0, LogCategory, "MirandaPluginInfo export invoked for " + MasterAssemblyPath); + StandalonePlugin plugin = null; + + try + { + // Execute common init tasks + HyphenLoader.MirandaPluginInfoShared(version); + + // Load the plugin + plugin = LoadActualPlugin(); + + // OK + if (plugin != null) + { + plugin.Module = this; + plugin.AfterModuleInitializationInternal(); + + // OK + if (PublishPluginInformation(plugin, version)) + { + standalonePlugin = plugin; + MasterAssembly = plugin.GetType().Assembly; + + ProbeCustomApiExports(plugin); + return PluginInfoPtr; + } + } + else + Log.DebuggerWrite(0, LogCategory, "No master assembly found for '" + MasterAssemblyPath + "' - aborting initialization"); + } + catch (Exception e) + { + DefaultExceptionHandler.Create(plugin).HandleException(e, null); + Log.DebuggerWrite(5, LogCategory, "An error occurred while executing the MirandaPluginInfo export\n" + e.ToString()); + } + + // Return dummy instance, not null (crashes Miranda 0.8.0.1) + return PluginInfoPtr = Loader.GetDummyPluginInfo(); + } + + /// + /// Represents the MirandaPluginInterfaces export of Miranda's API. + /// + /// Ptr to an array of interface GUIDs. + internal IntPtr MirandaPluginInterfaces() + { + if (MirandaPluginInterfacesPtr != IntPtr.Zero) + return MirandaPluginInterfacesPtr; + + try + { + return (MirandaPluginInterfacesPtr = standalonePlugin.MirandaPluginInterfaces()); + } + catch (Exception e) + { + DefaultExceptionHandler.Create(StandalonePlugin).HandleException(e, StandalonePlugin.Descriptor); + Log.DebuggerWrite(5, LogCategory, "An error occured while executing the MirandaPluginInterfaces export\n" + e.ToString()); + } + + return IntPtr.Zero; + } + + /// + /// Represents the Load export of Miranda API. Loads Hyphen and initializes the module. + /// + /// Ptr to an instance of the PLUGINLINK structure. + /// Load result. + internal int Load(IntPtr pPluginLink) + { + try + { + if (Loaded) + throw new InvalidOperationException(TextResources.ExceptionMsg_PluginAlreadyInitialized); + + Log.DebuggerWrite(0, LogCategory, "Load export invoked for " + MasterAssemblyPath); + + // Initialize the runtime (if necessary) + HyphenLoader.ModuleInducedLoad(pPluginLink); + ModuleManager.Singleton.RegisterModule(this); + + // Get the auxiliary plugin manager to load a standalone plugin into the default AppDomain + PluginManager = AuxiliaryPluginManager.GetInstance(); + PluginDescriptor = PluginManager.LoadPlugin(standalonePlugin, false); + + // Call plugin's Load export + standalonePlugin.LoadInternal(pPluginLink); + + // When Miranda completes initialization... + MirandaContext.Current.ModulesLoaded += ModulesLoadedHandler; + + Log.DebuggerWrite(0, LogCategory, "Finishing " + MasterAssemblyPath + " initialization"); + return (int)CallbackResult.Success; + } + catch (Exception e) + { + DefaultExceptionHandler.Create(StandalonePlugin).HandleException(e, StandalonePlugin.Descriptor); + Log.DebuggerWrite(5, LogCategory, "An error occurred while executing the Load export\n" + e.ToString()); + + return (int)CallbackResult.Failure; + } + finally + { + Loaded = true; + } + } + + /// + /// Enables the plugin when Miranda completes initialization. + /// + private void ModulesLoadedHandler(object sender, EventArgs e) + { + try + { + // DO NOT TOUCH + PluginManager.FinishInitialization(); + + /* Inject the managed menu into our (default) AppDomain + * (the menu is used for additional items ONLY) */ + HyphenLoader.PromoteManagedMenuIntoAppDomain(PluginManager); + + // Enable the plugin + if (PluginLoaded && PluginInitialized) + PluginManager.SetPluginState(PluginDescriptor, PluginState.Enabled); + } + catch (Exception ex) + { + DefaultExceptionHandler.Create(PluginDescriptor.Plugin).HandleException(ex, PluginDescriptor); + } + finally + { + PluginConfiguration.FlushCaches(); + } + } + + /// + /// Represents the Unload export of Miranda API. Unloads Hyphen and shuts down the runtime. + /// + /// Unload result. + internal int Unload() + { + try + { + if (!CanUnload()) + return (int)CallbackResult.Success; + + // Call the Unload export + standalonePlugin.UnloadInternal(); + + PluginManager.SetPluginState(PluginDescriptor, PluginState.Disabled); + ModuleManager.Singleton.UnregisterModule(this); + + if (!standalonePlugin.HasCustomPluginInfo) + Marshal.FreeHGlobal(PluginInfoPtr); + + if (!standalonePlugin.HasCustomPluginInterfaces) + Marshal.FreeHGlobal(MirandaPluginInterfacesPtr); + + PluginDescriptor = null; + standalonePlugin = null; + + Log.DebuggerWrite(0, LogCategory, "Connection between Miranda and '" + MasterAssemblyPath + "' broken."); + } + catch (Exception e) + { + DefaultExceptionHandler.Create(StandalonePlugin).HandleException(e, StandalonePlugin.Descriptor); + Log.DebuggerWrite(5, LogCategory, "An error occurred while executing the Unload export\n" + e.ToString()); + + return (int)CallbackResult.Failure; + } + finally + { + Unloaded = true; + } + + return (int)CallbackResult.Success; + } + + /// + /// Gets a indication whether a plugin can be unloaded. + /// + /// + private bool CanUnload() + { + return !Unloaded && PluginInitialized && + (LoaderOptions & LoaderOptions.CannotBeUnloaded) != LoaderOptions.CannotBeUnloaded; + } + + #endregion + + #region Helpers + + /// + /// Gathers and publishes plugin information. + /// + /// Plugin to evaluate. + /// Miranda version to pass to the plugin. + /// TRUE if the information were obtained; FALSE if not. + private bool PublishPluginInformation(StandalonePlugin plugin, uint version) + { + if (plugin == null) + throw new ArgumentNullException("plugin"); + + try + { + LoaderOptionsAttribute loaderOptions = LoaderOptionsAttribute.Get(plugin.GetType(), LoaderOptionsOwner.Type); + + if (!loaderOptions.SupportsMirandaVersion(version)) + return false; + + LoaderOptions = loaderOptions.Options; + PluginInfoPtr = plugin.MirandaPluginInfo(version, isPostV07Build20Api); + + return true; + } + catch (Exception) + { + PluginInfoPtr = IntPtr.Zero; + return false; + } + } + + /// + /// Probes custom API exports of a standalone plugin. + /// + /// Plugin. + private void ProbeCustomApiExports(StandalonePlugin plugin) + { + if (plugin == null) + throw new ArgumentNullException("plugin"); + + if ((LoaderOptions & LoaderOptions.HasCustomApiExports) != LoaderOptions.HasCustomApiExports) + return; + try + { + Type customApiHandlerAttribType = typeof(CustomApiExportHandlerAttribute), + customApiHandlerCallbackType = typeof(CustomApiExportCallback); + + foreach (MethodInfo method in plugin.GetType().GetMethods(BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.FlattenHierarchy)) + { + if (!method.IsDefined(customApiHandlerAttribType, true)) + continue; + + Delegate callbackDeleg = Delegate.CreateDelegate(customApiHandlerCallbackType, plugin, method, false); + + if (callbackDeleg == null) + continue; + + CustomApiExportHandlerAttribute attrib = (CustomApiExportHandlerAttribute)method.GetCustomAttributes(customApiHandlerAttribType, true)[0]; + plugin.CustomApiHandlers.Add(new CustomApiExportDescriptor(attrib.ExportName, (CustomApiExportCallback)callbackDeleg)); + + } + } + catch (Exception e) + { + Log.DebuggerWrite(5, LogCategory, "Unable to probe custom plugin api exports. " + e.Message); + throw; + } + } + + /// + /// Loads the actual plugin behind a proxy assembly. + /// + /// An instance of a plugin. + private StandalonePlugin LoadActualPlugin() + { + try + { + string assemblyPath = Path.Combine(MasterDirectory, Path.GetFileNameWithoutExtension(MasterAssemblyPath) + MasterSuffx); + + if (!File.Exists(assemblyPath)) + return null; + + Assembly masterAssembly = Assembly.LoadFile(assemblyPath); + Type[] exposedTypes = PluginManagerBase.GetExposedPlugins(masterAssembly); + + // Find a first standalone plugin + Type masterType = Array.Find(exposedTypes, delegate(Type _type) + { + return _type.IsSubclassOf(typeof(StandalonePlugin)); + }); + + // None found + if (masterType == null) + throw new TypeLoadException(String.Format(TextResources.ExceptionMsg_Formatable1_UnableToLoadMasterType, MasterAssemblyPath)); + + try + { + return (StandalonePlugin)PluginManagerBase.InstantiatePlugin(masterType, true); + } + catch (RuntimeNotSupportedException rvnsE) + { + MessageBox.Show(String.Format(TextResources.ExceptionMsg_Formatable2_RuntimeVersionNotAvailable, masterType.FullName, rvnsE.RequiredVersion), TextResources.MsgBox_Caption_RuntimeVersionNotAvailable, MessageBoxButtons.OK, MessageBoxIcon.Error); + throw; + } + } + catch (Exception e) + { + Log.DebuggerWrite(5, LogCategory, "Unable to instantiate the master plugin. " + e.Message); + throw; + } + } + + #endregion + + #region Equals etc. + + public override int GetHashCode() + { + return MiniAssembly.ToString().GetHashCode(); + } + + public override bool Equals(object obj) + { + Module other = obj as Module; + + if (other == null) + return false; + + return other.GetHashCode() == GetHashCode(); + } + + #endregion + + #region Properties + + /// + /// Gets a standalone plugin behind this module. + /// + public StandalonePlugin StandalonePlugin + { + get + { + return standalonePlugin; + } + } + + /// + /// Gets a value indicating whether the runtime runs under the post-0.7#20 Miranda API. + /// + public bool IsPostV07Build20Api + { + get + { + return isPostV07Build20Api; + } + } + + /// + /// Gets a value indicating whether the standalone plugin was loaded. + /// + private bool PluginLoaded + { + get + { + return standalonePlugin != null; + } + } + + /// + /// Gets a value indicating whether the standalone plugins was initialized (i.e. has a descriptor). + /// + private bool PluginInitialized + { + get + { + return PluginDescriptor != null; + } + } + + #endregion + + #region Methods + + /// + /// Executes a custom API export. + /// + /// Type of the return value. + /// Export name. + /// Additional data. + /// Return value. + internal T ExecuteCustomApiExport(string exportName, params object[] data) + { + if (String.IsNullOrEmpty(exportName)) + throw new ArgumentNullException("exportName"); + + if (data == null) + throw new ArgumentNullException("data"); + + if (!PluginLoaded) + throw new InvalidOperationException(TextResources.ExceptionMsg_PluginNotInitialized); + + // Find the export + CustomApiExportDescriptor descriptor = standalonePlugin.CustomApiHandlers.Find(delegate(CustomApiExportDescriptor _handler) + { + return _handler.ExportName == exportName; + }); + + if (descriptor == null) + throw new NotImplementedException(exportName); + else + return descriptor.Execute(data); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/Mini/ModuleManager.cs b/Hyphen/Plugins/Hyphen/Mini/ModuleManager.cs new file mode 100644 index 0000000..aa2ef0c --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/ModuleManager.cs @@ -0,0 +1,102 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.CompilerServices; +using System.Collections.ObjectModel; +using Virtuoso.Miranda.Plugins.Collections; +using Virtuoso.Miranda.Plugins; +using Virtuoso.Miranda.Plugins.Forms; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Hyphen.Mini +{ + public sealed class ModuleManager + { + #region Fields + + private static readonly object SyncObject = new object(); + private static ModuleManager singleton; + + private readonly ModuleCollection RegistredModulesCollection = new ModuleCollection(); + private readonly ModuleReadOnlyCollection registeredModules; + + #endregion + + #region .ctors + + private ModuleManager() + { + this.registeredModules = new ModuleReadOnlyCollection(RegistredModulesCollection); + } + + #endregion + + #region Properties + + public static ModuleManager Singleton + { + get + { + Loader.VerifyDefaultDomain(); + + lock (SyncObject) + return singleton ?? (singleton = new ModuleManager()); + } + } + + public ModuleReadOnlyCollection RegisteredModules + { + get + { + return registeredModules; + } + } + + public bool HasModules + { + get + { + return registeredModules.Count > 0; + } + } + + #endregion + + #region Methods + + internal void RegisterModule(Module module) + { + if (module == null) + throw new ArgumentNullException("module"); + + RegistredModulesCollection.Add(module); + } + + internal void UnregisterModule(Module module) + { + if (module == null) + throw new ArgumentNullException("module"); + + RegistredModulesCollection.Remove(module); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/Mini/ProtocolPlugin.cs b/Hyphen/Plugins/Hyphen/Mini/ProtocolPlugin.cs new file mode 100644 index 0000000..6e1fe11 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/ProtocolPlugin.cs @@ -0,0 +1,264 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Runtime.InteropServices; +using System.Drawing; +using Virtuoso.Miranda.Plugins; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Infrastructure.Protocols; + +namespace Virtuoso.Hyphen.Mini +{ + /// + /// Represents a base class for managed Miranda protocols. + /// + public abstract class ProtocolPlugin : StandalonePlugin + { + #region Fields + + private IntPtr namePtr; + private int NameCapacity; + + #endregion + + #region .ctors + + /// + /// Initializes a new instance of the class. + /// + protected ProtocolPlugin() { } + + #endregion + + #region API overrides + + /// + /// Gets the plugin interfaces. + /// + public override Guid[] PluginInterfaces + { + get { return new Guid[] { Virtuoso.Miranda.Plugins.Native.UUID.ProtocolUUID }; } + } + + /// + /// Initializes the instance and creates essential protocol services. + /// + /// + internal override void LoadInternal(IntPtr pPluginLink) + { + ThisProtocol = new ManagedProtocol(Name, this.ProtocolType); + ThisProtocol.Register(); + + ProtocolStatus = StatusMode.Offline; + + ServiceManager.CreateServiceFunction(ThisProtocol.GetProtoServiceName(Protocol.PS_GETNAME), PSGetName, this); + ServiceManager.CreateServiceFunction(ThisProtocol.GetProtoServiceName(Protocol.PS_GETSTATUS), PSGetStatus, this); + ServiceManager.CreateServiceFunction(ThisProtocol.GetProtoServiceName(Protocol.PS_SETSTATUS), PSSetStatus, this); + ServiceManager.CreateServiceFunction(ThisProtocol.GetProtoServiceName(Protocol.PS_LOADICON), PSLoadIcon, this); + ServiceManager.CreateServiceFunction(ThisProtocol.GetProtoServiceName(Protocol.PS_GETCAPS), PSGetCaps, this); + ServiceManager.CreateServiceFunction(ThisProtocol.GetProtoServiceName(Protocol.PSS_MESSAGE), PSSSendMessage, this); + + base.LoadInternal(pPluginLink); + } + + /// + /// Unloads the protocol. + /// + internal override void UnloadInternal() + { + base.UnloadInternal(); + ThisProtocol.Unregister(); + } + + #endregion + + #region Services + + /// + /// Gets a human-readable name for the protocol. + /// + /// The number of characters in the buffer. + /// Buffer pointer. + /// Returns 0 on success, nonzero on failure. + private unsafe int PSGetName(UIntPtr capacity, IntPtr pBuffer) + { + if (namePtr == IntPtr.Zero) + { + byte[] nameBytes = Encoding.Default.GetBytes(Name ?? String.Empty); + NameCapacity = nameBytes.Length + 1; + + namePtr = Marshal.AllocHGlobal(NameCapacity); + Marshal.Copy(nameBytes, 0, namePtr, nameBytes.Length); + + *(((byte*)namePtr) + nameBytes.Length) = 0; + } + + uint count = capacity.ToUInt32(); + + for (long i = 0; i < count && i < NameCapacity; i++) + *(byte*)(pBuffer.ToInt64() + i) = *(byte*)(namePtr.ToInt64() + i); + + return 0; + } + + /// + /// Gets the status mode that a protocol is currently in. + /// + /// Not used. + /// Not used. + /// Returns the status mode. + private int PSGetStatus(UIntPtr wParam, IntPtr lParam) + { + return (int)ProtocolStatus; + } + + /// + /// Changes the protocol's status mode. + /// + /// New status values. + /// Not used. + /// Returns 0 on success, nonzero on failure. + /// + /// Will send an ack with: + /// type=ACKTYPE_STATUS, result=ACKRESULT_SUCCESS, hProcess=(HANDLE)previousMode, lParam=newMode. + /// + private int PSSetStatus(UIntPtr newStatusRaw, IntPtr lParam) + { + StatusMode prevStatus = ProtocolStatus; + StatusMode newStatus = (StatusMode)newStatusRaw; + + ProtocolStatus = newStatus; + AckBroadcaster.BroadcastAck(ThisProtocol.NativeDescriptor.Name, AckType.Status, true, IntPtr.Zero, (IntPtr)(int)prevStatus, Translate.ToHandle(newStatusRaw)); + + return 0; + } + + /// + /// Loads one of the protocol-specific icons + /// + /// Which icon (currently ignored). + /// Not used. + /// Icon handle (HICON). + private int PSLoadIcon(UIntPtr whichIcon, IntPtr lParam) + { + if (ProtocolIcon == null) + return SystemIcons.Application.Handle.ToInt32(); + else + return ProtocolIcon.Handle.ToInt32(); + } + + /// + /// Gets the capability flags of the module. + /// + /// Flags category. + /// Not used. + /// + private int PSGetCaps(UIntPtr flagsNum, IntPtr lParam) + { + switch ((ProtocolFlagsKind)flagsNum) + { + case ProtocolFlagsKind.Capabilities: + return (int)SupportedCapabilities; + case ProtocolFlagsKind.StatusModes: + return (int)SupportedStatusModes; + case ProtocolFlagsKind.AwayStatusModes: + return (int)SupportedAwayStatusModes; + default: + return 0; + } + } + + /// + /// Sends an instant message. + /// + /// Flags. + /// Contact-Chain-Send data pointer. + /// Returns a hProcess corresponding to the one in the ack event. + /// + /// Will send an ack when the message actually gets sent type=ACKTYPE_MESSAGE, result=success/failure, lParam=0. + /// + private unsafe int PSSSendMessage(UIntPtr flags, IntPtr pCcsData) + { + return SendMessage(new ContactChainData(pCcsData)); + } + + #endregion + + #region Properties + + private ManagedProtocol thisProtocol; + /// + /// Gets the managed protocol descriptor for this module. + /// + public ManagedProtocol ThisProtocol + { + get { return thisProtocol; } + internal set { thisProtocol = value; } + } + + protected IntPtr NamePtr + { + get { return namePtr; } + } + + #endregion + + #region Abstracts + + /// + /// Gets the protocol type. + /// + protected internal abstract ProtocolType ProtocolType { get; } + + /// + /// Gets the protocol icon. + /// + protected internal abstract Icon ProtocolIcon { get; } + + /// + /// Gets the protocol supported capabilities. + /// + protected internal abstract ProtocolCapabilities SupportedCapabilities { get; } + + #endregion + + #region Virtuals + + /// + /// Gets the status modes the protocol supports an away message for. + /// + protected internal virtual ProtocolStatusModes SupportedAwayStatusModes { get { return (ProtocolStatusModes)0; } } + + /// + /// Gets the protocol supported status modes. + /// + protected internal virtual ProtocolStatusModes SupportedStatusModes { get { return (ProtocolStatusModes)0; } } + + /// + /// Gets or sets the protocol status. + /// + protected internal virtual StatusMode ProtocolStatus { get { return StatusMode.Offline; } set { } } + + protected virtual int SendMessage(ContactChainData msgData) { return 0; } + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/Mini/StandalonePlugin.cs b/Hyphen/Plugins/Hyphen/Mini/StandalonePlugin.cs new file mode 100644 index 0000000..dfbf146 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Mini/StandalonePlugin.cs @@ -0,0 +1,164 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Hyphen.Mini.Custom; +using Virtuoso.Miranda.Plugins.Collections; +using Virtuoso.Miranda.Plugins.Forms.Controls; +using Virtuoso.Hyphen.Native; +using System.Runtime.InteropServices; +using System.Diagnostics; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Hyphen.Mini +{ + public abstract class StandalonePlugin : MirandaPlugin + { + #region Fields + + internal static readonly Type PluginType = typeof(StandalonePlugin); + + private readonly CustomApiExportDescriptorCollection customApiHandlers; + private Module module; + + #endregion + + #region .ctors + + protected StandalonePlugin() + { + customApiHandlers = new CustomApiExportDescriptorCollection(); + } + + #endregion + + #region Properties + + protected internal Module Module + { + get { return this.module; } + internal set { this.module = value; } + } + + public abstract string Copyright { get; } + + public abstract string AuthorEmail { get; } + + public virtual PluginFlags Flags { get { return PluginFlags.UnicodeAware; } } + + public abstract int ReplacesDefaultModule { get; } + + public abstract Guid UUID { get; } + + public abstract Guid[] PluginInterfaces { get; } + + internal CustomApiExportDescriptorCollection CustomApiHandlers + { + get { return customApiHandlers; } + } + + private bool hasCustomPluginInterfaces = true; + internal bool HasCustomPluginInterfaces + { + get { return hasCustomPluginInterfaces; } + } + + private bool hasCustomPluginInfo = true; + internal bool HasCustomPluginInfo + { + get { return hasCustomPluginInfo; } + } + + #endregion + + #region Methods + + /* Impl note: We use this to unload a plugin instead of the Unload export because there were some Access + * Violation exceptions before */ + [EventHook(MirandaEvents.ME_SYSTEM_OKTOEXIT)] + internal int BeforeMirandaShutdownTriggerService(UIntPtr wParam, IntPtr lParam) + { + BeforeMirandaShutdown(); + module.Unload(); + + return 0; + } + + [CLSCompliant(false)] + protected internal virtual IntPtr MirandaPluginInfo(uint version, bool ex) + { + hasCustomPluginInfo = false; + PLUGININFO info = ex ? new PLUGININFOEX() : new PLUGININFO(); + + info.Size = Marshal.SizeOf(info.GetType()); + info.Author = Author; + info.AuthorEmail = AuthorEmail; + info.Copyright = Copyright; + info.Description = Description; + info.HomePage = HomePage == null ? String.Empty : HomePage.ToString(); + info.Flags = (byte)Flags; + info.ReplacesDefaultModule = ReplacesDefaultModule; + info.ShortName = Name; + info.Version = Translate.ToMirandaVersion(Version); + if (ex) ((PLUGININFOEX)info).UUID = UUID; + + IntPtr pInfo = Marshal.AllocHGlobal(info.Size); + Marshal.StructureToPtr(info, pInfo, false); + + return pInfo; + } + + protected internal virtual IntPtr MirandaPluginInterfaces() + { + hasCustomPluginInterfaces = false; + Guid[] interfaces = PluginInterfaces; + + int uuidSize = Marshal.SizeOf(typeof(Guid)); + IntPtr pInterfaces = Marshal.AllocHGlobal((interfaces.Length + 1) * uuidSize); + + byte[] uuidBytes = null; + long baseAddr = pInterfaces.ToInt64(); + + for (int i = 0; i < interfaces.Length; i++) + { + uuidBytes = interfaces[i].ToByteArray(); + Marshal.Copy(uuidBytes, 0, new IntPtr(baseAddr + i * uuidSize), uuidBytes.Length); + } + + // MIID_LAST + uuidBytes = Virtuoso.Miranda.Plugins.Native.UUID.Last.ToByteArray(); + Marshal.Copy(uuidBytes, 0, new IntPtr(baseAddr + interfaces.Length * uuidSize), uuidBytes.Length); + + return pInterfaces; + } + + internal virtual void AfterModuleInitializationInternal() { AfterModuleInitialization(); } + protected virtual void AfterModuleInitialization() { } + + internal virtual void LoadInternal(IntPtr pPluginLink) { Load(pPluginLink); } + protected virtual void Load(IntPtr pPluginLink) { } + + internal virtual void UnloadInternal() { Unload(); } + protected virtual void Unload() { } + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/MirandaPluginLink.cs b/Hyphen/Plugins/Hyphen/MirandaPluginLink.cs new file mode 100644 index 0000000..feafcd2 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/MirandaPluginLink.cs @@ -0,0 +1,77 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Hyphen.Native; +using System.Runtime.InteropServices; + +namespace Virtuoso.Hyphen +{ + internal sealed class MirandaPluginLink + { + #region Fields + + private readonly NativePluginLink nativePluginLink; + + private readonly IntPtr nativePluginLinkPtr; + public readonly CallServiceUnsafePrototype CallServiceUnsafe; + + #endregion + + #region .ctors + + private MirandaPluginLink(IntPtr nativeLinkPtr) + { + if (nativeLinkPtr == IntPtr.Zero) + throw new ArgumentNullException("nativeLinkPtr"); + + this.nativePluginLinkPtr = nativeLinkPtr; + this.nativePluginLink = (NativePluginLink)Marshal.PtrToStructure(nativeLinkPtr, typeof(NativePluginLink)); + + this.CallServiceUnsafe = (CallServiceUnsafePrototype)Marshal.GetDelegateForFunctionPointer(Marshal.ReadIntPtr(nativeLinkPtr, 9 * IntPtr.Size), typeof(CallServiceUnsafePrototype)); + } + + public static MirandaPluginLink FromPointer(IntPtr nativeLinkPtr) + { + return new MirandaPluginLink(nativeLinkPtr); + } + + #endregion + + #region Properties + + public IntPtr NativePluginLinkPtr + { + get + { + return nativePluginLinkPtr; + } + } + + public NativePluginLink NativePluginLink + { + get + { + return nativePluginLink; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Hyphen/Native/Enums.cs b/Hyphen/Plugins/Hyphen/Native/Enums.cs new file mode 100644 index 0000000..1c7118b --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Native/Enums.cs @@ -0,0 +1,29 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Hyphen.Native +{ + [Flags] + public enum PluginFlags : byte + { + UnicodeAware = 1, + } +} diff --git a/Hyphen/Plugins/Hyphen/Native/NativePluginLink.cs b/Hyphen/Plugins/Hyphen/Native/NativePluginLink.cs new file mode 100644 index 0000000..7ec1064 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Native/NativePluginLink.cs @@ -0,0 +1,65 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Hyphen.Native; +using System.Runtime.InteropServices; +using System.Diagnostics; +using System.Security; + +namespace Virtuoso.Hyphen.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4, CharSet = CharSet.Ansi), SuppressUnmanagedCodeSecurity] + internal sealed class NativePluginLink + { + public readonly CreateHookableEventPrototype CreateHookableEvent; + public readonly DestroyHookableEventPrototype DestroyHookableEvent; + public readonly NotifyEventHooksPrototype NotifyEventHooks; + public readonly HookEventPrototype HookEvent; + public readonly HookEventMessagePrototype HookEventMessage; + public readonly UnhookEventPrototype UnhookEvent; + public readonly CreateServiceFunctionPrototype CreateServiceFunction; + public readonly CreateTransientServiceFunctionPrototype CreateTransientServiceFunction; + public readonly DestroyServiceFunctionPrototype DestroyServiceFunction; + public readonly CallServicePrototype CallService; + public readonly ServiceExistsPrototype ServiceExists; + public readonly CallServiceSyncPrototype CallServiceSync; + public readonly CallFunctionAsyncPrototype CallFunctionAsync; + public readonly SetHookDefaultForHookableEventPrototype SetHookDefaultForHookableEvent; + + //see modules.h for what all this stuff is + /*typedef struct { + HANDLE (*CreateHookableEvent)(const char *); + int (*DestroyHookableEvent)(HANDLE); + int (*NotifyEventHooks)(HANDLE,WPARAM,LPARAM); + HANDLE (*CreateEventHook)(const char *,MIRANDAHOOK); + HANDLE (*HookEventMessage)(const char *,HWND,UINT); + int (*RemoveEventHook)(HANDLE); + HANDLE (*CreateServiceFunction)(const char *,MIRANDASERVICE); + HANDLE (*CreateTransientServiceFunction)(const char *,MIRANDASERVICE); + int (*RemoveServiceFunction)(HANDLE); + int (*CallService)(const char *,WPARAM,LPARAM); + int (*ServiceExists)(const char *); //v0.1.0.1+ + int (*CallServiceSync)(const char *,WPARAM,LPARAM); //v0.3.3+ + int (*CallFunctionAsync) (void (__stdcall *)(void *), void *); //v0.3.4+ + int (*SetHookDefaultForHookableEvent) (HANDLE, MIRANDAHOOK); // v0.3.4 (2004/09/15) + } PLUGINLINK; + */ + } +} diff --git a/Hyphen/Plugins/Hyphen/Native/PLUGININFO.cs b/Hyphen/Plugins/Hyphen/Native/PLUGININFO.cs new file mode 100644 index 0000000..b02a9e9 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Native/PLUGININFO.cs @@ -0,0 +1,54 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Hyphen.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4, CharSet = CharSet.Ansi)] + internal class PLUGININFO + { + public int Size; + + [MarshalAs(UnmanagedType.LPStr)] + public string ShortName; + + public UInt32 Version; + + [MarshalAs(UnmanagedType.LPStr)] + public string Description; + + [MarshalAs(UnmanagedType.LPStr)] + public string Author; + + [MarshalAs(UnmanagedType.LPStr)] + public string AuthorEmail; + + [MarshalAs(UnmanagedType.LPStr)] + public string Copyright; + + [MarshalAs(UnmanagedType.LPStr)] + public string HomePage; + + public byte Flags; + + public int ReplacesDefaultModule; + } +} diff --git a/Hyphen/Plugins/Hyphen/Native/PLUGININFOEX.cs b/Hyphen/Plugins/Hyphen/Native/PLUGININFOEX.cs new file mode 100644 index 0000000..f0a08c4 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Native/PLUGININFOEX.cs @@ -0,0 +1,53 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Hyphen.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4, CharSet = CharSet.Ansi)] + internal sealed class PLUGININFOEX : PLUGININFO + { + public Guid UUID; + + public PLUGININFOEX() { } + + public PLUGININFOEX(Guid uuid) + { + this.UUID = uuid; + } + } +} + +/* + typedef struct { + int cbSize; + char *shortName; + DWORD version; + char *description; + char *author; + char *authorEmail; + char *copyright; + char *homepage; + BYTE isTransient; + int replacesDefaultModule; + MUUID uuid; +} PLUGININFOEX; + */ diff --git a/Hyphen/Plugins/Hyphen/Native/PluginLinkPrototypes.cs b/Hyphen/Plugins/Hyphen/Native/PluginLinkPrototypes.cs new file mode 100644 index 0000000..cd7a8c8 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/Native/PluginLinkPrototypes.cs @@ -0,0 +1,73 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins; + +namespace Virtuoso.Hyphen.Native +{ + [UnmanagedFunctionPointer(CallingConvention.StdCall)] + public delegate void AsyncFunctionCall(IntPtr ptr); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate IntPtr CreateHookableEventPrototype([MarshalAs(UnmanagedType.LPStr)] string name); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate int DestroyHookableEventPrototype(IntPtr handle); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public delegate int NotifyEventHooksPrototype(IntPtr handle, UIntPtr wParam, IntPtr lParam); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public delegate IntPtr HookEventPrototype([MarshalAs(UnmanagedType.LPStr)] string name, Callback hook); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public delegate IntPtr HookEventMessagePrototype([MarshalAs(UnmanagedType.LPStr)] string name, IntPtr hwnd, uint msg); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate int UnhookEventPrototype(IntPtr handle); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public delegate IntPtr CreateServiceFunctionPrototype([MarshalAs(UnmanagedType.LPStr)] string name, Callback service); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public delegate IntPtr CreateTransientServiceFunctionPrototype([MarshalAs(UnmanagedType.LPStr)] string name, Callback service); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate int DestroyServiceFunctionPrototype(IntPtr handle); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public delegate int CallServicePrototype([MarshalAs(UnmanagedType.LPStr)] string name, UIntPtr wParam, IntPtr lParam); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public unsafe delegate int CallServiceUnsafePrototype([MarshalAs(UnmanagedType.LPStr)] string serviceName, void* wParam, void* lParam); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public delegate int ServiceExistsPrototype([MarshalAs(UnmanagedType.LPStr)] string name); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public delegate int CallServiceSyncPrototype([MarshalAs(UnmanagedType.LPStr)] string name, UIntPtr wParam, IntPtr lParam); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + public delegate int CallFunctionAsyncPrototype(AsyncFunctionCall function, IntPtr ptr); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public delegate int SetHookDefaultForHookableEventPrototype(IntPtr handle, Callback hook); +} diff --git a/Hyphen/Plugins/Hyphen/PluginSandbox.cs b/Hyphen/Plugins/Hyphen/PluginSandbox.cs new file mode 100644 index 0000000..afbc739 --- /dev/null +++ b/Hyphen/Plugins/Hyphen/PluginSandbox.cs @@ -0,0 +1,119 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Hyphen; +using Virtuoso.Miranda.Plugins; +using System.Windows.Forms; +using System.Reflection; +using System.IO; +using Virtuoso.Miranda.Plugins.Helpers; +using Virtuoso.Hyphen.Configuration; + +namespace Virtuoso.Hyphen +{ + internal sealed class PluginsSandbox : Sandbox + { + #region Fields + + private AssemblyProbe assemblyProbe; + public AssemblyProbe AssemblyProbe + { + get { return assemblyProbe; } + } + + private PluginManagerBase pluginManager; + public PluginManagerBase PluginManager + { + get { return pluginManager; } + } + + #endregion + + #region .ctors + + public PluginsSandbox() + { + SetUpHostingAppDomain("HyphenPlugins"); + } + + protected override void InitializeAppDomainSetup(AppDomainSetup domainSetup) + { + base.InitializeAppDomainSetup(domainSetup); + + domainSetup.ShadowCopyFiles = true.ToString(); + domainSetup.ShadowCopyDirectories = MirandaEnvironment.ManagedPluginsFolderPath; + } + + public void LoadAssemblyProbe() + { + AssemblyProbe customProbe = null; + + try + { + string fusionAssemblyName = RuntimeConfiguration.Singleton.CustomFusionAssemblyName; + string assemblyProbeTypeName = RuntimeConfiguration.Singleton.CustomAssemblyProbeTypeName; + + if (!String.IsNullOrEmpty(fusionAssemblyName) && !String.IsNullOrEmpty(assemblyProbeTypeName)) + customProbe = InstantiateRemoteObject(fusionAssemblyName, assemblyProbeTypeName, null); + } + catch (Exception e) + { + Log.DebuggerWrite(0, Loader.LogCategory, "Unable to load custom assembly probe (" + e.Message + "), defaulting to the built-in one."); + } + + assemblyProbe = customProbe ?? InstantiateRemoteObject(GetType().Assembly.FullName, typeof(DefaultAssemblyProbe).FullName); + } + + public void LoadPluginManager(FusionContext context) + { + PluginManagerBase customManager = null; + + try + { + string fusionAssemblyName = RuntimeConfiguration.Singleton.CustomFusionAssemblyName; + string pluginManagerTypeName = RuntimeConfiguration.Singleton.CustomPluginManagerTypeName; + + if (!String.IsNullOrEmpty(fusionAssemblyName) && !String.IsNullOrEmpty(pluginManagerTypeName)) + customManager = InstantiateRemoteObject(fusionAssemblyName, pluginManagerTypeName, context); + } + catch (Exception e) + { + Log.DebuggerWrite(0, Loader.LogCategory, "Unable to load custom plugin manager (" + e.Message + "), defaulting to the built-in one."); + } + + pluginManager = customManager ?? InstantiateRemoteObject(GetType().Assembly.FullName, typeof(DefaultPluginManager).FullName, context); + } + + #endregion + + #region Properties + + public string HostingAppDomainPrivateBinPath + { + get + { + return HostingAppDomain.SetupInformation.PrivateBinPath; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/IConfigurablePlugin.cs b/Hyphen/Plugins/IConfigurablePlugin.cs new file mode 100644 index 0000000..92a7c7d --- /dev/null +++ b/Hyphen/Plugins/IConfigurablePlugin.cs @@ -0,0 +1,40 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Configuration.Forms.Controls; +using Virtuoso.Miranda.Plugins.Configuration.Forms; +using Virtuoso.Miranda.Plugins.Configuration; + +namespace Virtuoso.Miranda.Plugins +{ + public interface IConfigurablePlugin + { + string Name { get; } + PluginConfiguration[] Configuration { get; } + + void PopulateConfiguration(CategoryCollection categories); + void ResetConfiguration(); + void ReloadConfiguration(); + } + + /// + /// Represents a marker interface for classes wrapping Hyphen runtime configuration. + /// + internal interface IInternalConfigurator : IConfigurablePlugin { } +} diff --git a/Hyphen/Plugins/IConfigurablePluginBase.cs b/Hyphen/Plugins/IConfigurablePluginBase.cs new file mode 100644 index 0000000..f2b3bc9 --- /dev/null +++ b/Hyphen/Plugins/IConfigurablePluginBase.cs @@ -0,0 +1,27 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins +{ + internal interface IConfigurablePluginBase : IConfigurablePlugin where TConfiguration : PluginConfiguration + { + TConfiguration PluginConfiguration { get; } + } +} diff --git a/Hyphen/Plugins/IDescriptor.cs b/Hyphen/Plugins/IDescriptor.cs new file mode 100644 index 0000000..f001d1f --- /dev/null +++ b/Hyphen/Plugins/IDescriptor.cs @@ -0,0 +1,25 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins +{ + internal interface IDescriptor { } +} diff --git a/Hyphen/Plugins/IExceptionDumpController.cs b/Hyphen/Plugins/IExceptionDumpController.cs new file mode 100644 index 0000000..6d7fa17 --- /dev/null +++ b/Hyphen/Plugins/IExceptionDumpController.cs @@ -0,0 +1,28 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins +{ + public interface IExceptionDumpController + { + void DumpException(Exception e, StringBuilder dump); + } +} diff --git a/Hyphen/Plugins/IExceptionHandler.cs b/Hyphen/Plugins/IExceptionHandler.cs new file mode 100644 index 0000000..f11dac0 --- /dev/null +++ b/Hyphen/Plugins/IExceptionHandler.cs @@ -0,0 +1,28 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins +{ + public interface IExceptionHandler + { + void HandleException(Exception e, PluginDescriptor descriptor); + } +} diff --git a/Hyphen/Plugins/IExceptionReporter.cs b/Hyphen/Plugins/IExceptionReporter.cs new file mode 100644 index 0000000..727ff87 --- /dev/null +++ b/Hyphen/Plugins/IExceptionReporter.cs @@ -0,0 +1,28 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins +{ + public interface IExceptionReporter + { + void ReportException(Exception e); + } +} diff --git a/Hyphen/Plugins/Infrastructure/CallbackWrapper.cs b/Hyphen/Plugins/Infrastructure/CallbackWrapper.cs new file mode 100644 index 0000000..2410c91 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/CallbackWrapper.cs @@ -0,0 +1,63 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + internal class CallbackWrapper + { + #region Properties + + private string serviceName; + public string ServiceName + { + get { return serviceName; } + protected set { serviceName = value; } + } + + #endregion + + #region .ctors + + private CallbackWrapper(string serviceName) + { + if (String.IsNullOrEmpty(serviceName)) + throw new ArgumentNullException("serviceName"); + + this.serviceName = serviceName; + } + + public static Callback Create(string serviceName) + { + return new Callback(new CallbackWrapper(serviceName).Callback); + } + + #endregion + + #region Methods + + protected int Callback(UIntPtr wParam, IntPtr lParam) + { + return MirandaContext.Current.CallService(ServiceName, wParam, lParam); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/ConfigurationException.cs b/Hyphen/Plugins/Infrastructure/ConfigurationException.cs new file mode 100644 index 0000000..e3a7d56 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ConfigurationException.cs @@ -0,0 +1,33 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.Serialization; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [Serializable] + public class ConfigurationException : Exception + { + public ConfigurationException() { } + public ConfigurationException(string message) : base(message) { } + public ConfigurationException(string message, Exception inner) : base(message, inner) { } + protected ConfigurationException(SerializationInfo info, StreamingContext context) : base(info, context) { } + } +} diff --git a/Hyphen/Plugins/Infrastructure/ConfigurationOptionsAttribute.cs b/Hyphen/Plugins/Infrastructure/ConfigurationOptionsAttribute.cs new file mode 100644 index 0000000..8797416 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ConfigurationOptionsAttribute.cs @@ -0,0 +1,102 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Configuration; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)] + public sealed class ConfigurationOptionsAttribute : Attribute + { + #region .ctors + + internal ConfigurationOptionsAttribute() { } + + public ConfigurationOptionsAttribute(string configurationVersion) : this(configurationVersion, false, true) { } + + [Obsolete("Will be removed in future. Use named arguments instead.", true)] + public ConfigurationOptionsAttribute(bool encrypt, bool profileBound) : this(null, encrypt, profileBound) { } + + [Obsolete("Will be removed in future. Use named arguments instead.", false)] + public ConfigurationOptionsAttribute(string configurationVersion, bool encrypt, bool profileBound) + { + if (!String.IsNullOrEmpty(configurationVersion)) + this.version = new Version(configurationVersion); + + this.encrypt = encrypt; + this.profileBound = profileBound; + } + + #endregion + + #region Properties + + private readonly Version version; + public Version Version + { + get { return version; } + } + + private bool profileBound; + public bool ProfileBound + { + get { return profileBound; } + set { profileBound = value; } + } + + private bool encrypt; + public bool Encrypt + { + get { return encrypt; } + set { encrypt = value; } + } + + private Type storage; + public Type Storage + { + get { return storage; } + set { storage = value; } + } + + private Type encryption; + public Type Encryption + { + get { return encryption; } + set { encryption = value; } + } + + #endregion + + #region Methods + + internal ConfigurationOptionsAttribute Finalize() + { + if (storage == null) + storage = typeof(IsolatedStorage); + + if (encrypt && encryption == null) + encryption = typeof(WindowsEncryption); + + return this; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/ContactInfo.cs b/Hyphen/Plugins/Infrastructure/ContactInfo.cs new file mode 100644 index 0000000..854f7ab --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ContactInfo.cs @@ -0,0 +1,753 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using System.Runtime.InteropServices; +using System.Diagnostics; +using Virtuoso.Hyphen; +using Virtuoso.Miranda.Plugins.Resources; +using System.Runtime.Serialization; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [Serializable] + public class ContactInfo : MirandaItem, ISerializable + { + #region Enums + + [Flags] + private enum ContactDisplayNameOptions : int + { + /// + /// Will return char*, as usual. + /// + Ansi = 0, + + /// + /// Will never return the user's custom name. + /// + NoMyHandle = 1, + + /// + /// Will return TCHAR* instead of char*. + /// + Unicode = 2, + + /// + /// Will not use the cache. + /// + NoCache = 4 + } + + #endregion + + #region Contants + + private const string MS_DB_CONTACT_IS = "DB/Contact/Is", + MS_PROTO_GETCONTACTBASEPROTO = "Proto/GetContactBaseProto", + MS_DB_CONTACT_WRITESETTING = "DB/Contact/WriteSetting", + MS_DB_CONTACT_GETSETTING = "DB/Contact/GetSetting", + MS_DB_CONTACT_GETSETTINGSTATIC = "DB/Contact/GetSettingStatic", + MS_DB_CONTACT_DELETESETTING = "DB/Contact/DeleteSetting", + + MS_DB_CONTACT_ADD = "DB/Contact/Add", + MS_DB_CONTACT_DELETE = "DB/Contact/Delete", + + MS_CLIST_GETCONTACTDISPLAYNAME = "CList/GetContactDisplayName", + + SETTING_STATUS = "Status", + + MS_MSG_SENDMESSAGE = "SRMsg/SendCommand", + MS_MSG_SENDMESSAGE_2 = "SRMsg/LaunchMessageWindow"; + + #endregion + + #region Fields + + private static readonly object SyncObject = new object(); + private static readonly ContactInfo meNeutral = new ContactInfo(); + + private readonly Protocol owningModule; + + private object value; + private ContactInfoPropertyType valueType; + + #endregion + + #region .ctors + + private ContactInfo() + : base(IntPtr.Zero, ItemType.Contact) + { + this.owningModule = Protocol.UnknownProtocol; + } + + protected ContactInfo(SerializationInfo info, StreamingContext context) + : this((IntPtr)info.GetInt64("MirandaHandle")) + { + } + + [CLSCompliant(false), Obsolete("Will be removed in the future, use FromHandle(UIntPtr) instead.")] + public ContactInfo(UIntPtr contactHandle) : this(Translate.ToHandle(contactHandle)) { } + + [Obsolete("Will be removed in the future, use FromHandle(IntPtr) instead.")] + public ContactInfo(IntPtr contactHandle) + : base(contactHandle, ItemType.Contact) + { + MirandaContext context = MirandaContext.Current; + + if (contactHandle != IntPtr.Zero && context.CallService(MS_DB_CONTACT_IS, contactHandle, IntPtr.Zero) == 0) + throw new ArgumentException("Contact not found in Miranda database."); + + IntPtr protoNamePtr = GetModuleNamePtr(contactHandle); + + if (protoNamePtr != IntPtr.Zero) + { + string protoName = Translate.ToString(protoNamePtr, StringEncoding.Ansi); + MirandaContext.Current.Protocols.TryGetValue(protoName, out owningModule); + } + + if (owningModule == null) + { + owningModule = Protocol.UnknownProtocol; + + if (contactHandle != IntPtr.Zero) + Log.DebuggerWrite(5, Loader.LogCategory, "Unable to obtain contact's protocol"); + } + + this.MirandaHandle = contactHandle; + } + + public static ContactInfo FromHandle(IntPtr contactHandle) + { + return new ContactInfo(contactHandle); + } + + [CLSCompliant(false)] + public static ContactInfo FromHandle(UIntPtr contactHandle) + { + return new ContactInfo(contactHandle); + } + + #endregion + + #region Properties + + public ContactInfoPropertyType PropertyType + { + get { return valueType; } + } + + public object PropertyValue + { + get { return this.value; } + } + + public Protocol OwningModule + { + get { return owningModule; } + } + + public bool IsSelf + { + get + { + return (MirandaHandle == IntPtr.Zero); + } + } + + public static ContactInfo MeNeutral + { + get + { + return meNeutral; + } + } + + public StatusMode? Status + { + get + { + if (String.IsNullOrEmpty(OwningModule.Name)) + return null; + + object obj = ReadSetting(SETTING_STATUS, DatabaseSettingType.UInt16); + + if (obj != null) + return (StatusMode)(UInt16)obj; //(StatusMode)Enum.Parse(typeof(StatusMode), (Int16) obj); + else + return null; + } + } + + public string DisplayName + { + get + { + return GetDisplayName(MirandaHandle); + } + } + + private object uniqueID; + public object UniqueID + { + get + { + lock (SyncObject) + { + if (uniqueID == null) + { + ContactInfoPropertyType type; + GetUniqueID(MirandaHandle, out uniqueID, out type); + } + + return uniqueID; + } + } + } + + #endregion + + #region Methods + + #region Settings/Write + + public bool WriteSetting(string name, object value, DatabaseSettingType saveAs) + { + return WriteSetting(name, OwningModule, value, saveAs); + } + + public bool WriteSetting(string name, ISettingOwner owner, object value, DatabaseSettingType saveAs) + { + if (owner == null) + throw new ArgumentNullException("owner"); + + return WriteSetting(name, owner.Name, value, saveAs); + } + + public bool WriteSettingAsBlob(string name, ISettingOwner owner, byte[] blob) + { + if (owner == null) + throw new ArgumentNullException("owner"); + + return WriteSettingAsBlob(name, owner.Name, blob); + } + + public bool WriteSettingAsBlob(string name, string owner, byte[] blob) + { + if (blob == null) + throw new ArgumentNullException("blob"); + + throw new NotImplementedException(); + + //return WriteSetting(name, owner, blob, DatabaseSettingType.Blob); + } + + public unsafe bool WriteSetting(string name, string owner, object value, DatabaseSettingType saveAs) + { + if (String.IsNullOrEmpty(owner)) + throw new ArgumentNullException("owner"); + + if (String.IsNullOrEmpty(name)) + throw new ArgumentNullException("name"); + + UnmanagedStringHandle valueHandle = UnmanagedStringHandle.Empty; + UnmanagedStringHandle nameHandle = Translate.ToHandle(name, StringEncoding.Ansi); + UnmanagedStringHandle moduleNameHandle = Translate.ToHandle(owner, StringEncoding.Ansi); + + IntPtr blobPtr = IntPtr.Zero; + + try + { + DBCONTACTWRITESETTING dbSetting = new DBCONTACTWRITESETTING(); + dbSetting.Name = nameHandle; + dbSetting.Module = moduleNameHandle; + dbSetting.Value = new DBVARIANT(); + dbSetting.Value.Type = (byte)saveAs; + + switch (saveAs) + { + case DatabaseSettingType.AsciiString: + valueHandle = new UnmanagedStringHandle(value.ToString(), StringEncoding.Ansi); + dbSetting.Value.Text.TextPtr = valueHandle.IntPtr; + break; + case DatabaseSettingType.UnicodeString: + case DatabaseSettingType.UTF8String: + valueHandle = new UnmanagedStringHandle(value.ToString(), StringEncoding.Unicode); + dbSetting.Value.Text.TextPtr = valueHandle.IntPtr; + break; + + case DatabaseSettingType.Byte: + dbSetting.Value.Primitives.Byte = Convert.ToByte(value); + break; + case DatabaseSettingType.UInt16: + dbSetting.Value.Primitives.Word = Convert.ToUInt16(value); + break; + case DatabaseSettingType.UInt32: + dbSetting.Value.Primitives.DWord = Convert.ToUInt32(value); + break; + case DatabaseSettingType.Blob: + throw new NotImplementedException(); + + /*byte[] blob = value as byte[]; + + if (blob == null) + throw new ArgumentException("value"); + + blobPtr = Marshal.AllocHGlobal(blob.Length); + Marshal.Copy(blob, 0, blobPtr, blob.Length); + + dbSetting.Value.Blob.BlobPtr = blobPtr; + dbSetting.Value.Blob.Size = (UInt16)blob.Length; + break;*/ + default: + throw new ArgumentOutOfRangeException("saveAs"); + } + + bool result = MirandaContext.Current.CallServiceUnsafe(MS_DB_CONTACT_WRITESETTING, MirandaHandle.ToPointer(), &dbSetting) == 0; + Debug.Assert(result); + + return result; + } + catch (FormatException fE) + { + throw new ArgumentOutOfRangeException("value", fE); + } + catch (Exception e) + { + throw new MirandaException(TextResources.ExceptionMsg_ErrorWhileCallingMirandaService, e); + } + finally + { + valueHandle.Free(); + nameHandle.Free(); + moduleNameHandle.Free(); + + if (blobPtr != IntPtr.Zero) + Marshal.FreeHGlobal(blobPtr); + } + } + + #endregion + + #region Settings/Read + + public object ReadSetting(string name, DatabaseSettingType readAs) + { + return ReadSetting(MirandaHandle, name, readAs); + } + + public static object ReadSetting(IntPtr contactHandle, string name, DatabaseSettingType readAs) + { + IntPtr pOwnerName = GetModuleNamePtr(contactHandle); + + if (pOwnerName == IntPtr.Zero) + throw new InvalidOperationException(TextResources.ExceptionMsg_OwnerUnknown); + + return ReadSetting(contactHandle, name, Marshal.PtrToStringAnsi(pOwnerName), readAs); + } + + public object ReadSetting(string name, ISettingOwner owner, DatabaseSettingType readAs) + { + return ReadSetting(MirandaHandle, name, owner, readAs); + } + + public static object ReadSetting(IntPtr contactHandle, string name, ISettingOwner owner, DatabaseSettingType readAs) + { + if (owner == null) + throw new ArgumentNullException("owner"); + + return ReadSetting(contactHandle, name, owner.Name, readAs); + } + + public object ReadSetting(string name, string owner, DatabaseSettingType readAs) + { + return ReadSetting(MirandaHandle, name, owner, readAs); + } + + public static object ReadSetting(IntPtr contactHandle, string name, string owner, DatabaseSettingType readAs) + { + if (String.IsNullOrEmpty(name)) + throw new ArgumentNullException("name"); + + InteropBuffer buffer = InteropBufferPool.AcquireBuffer(); + + try + { + DBCONTACTGETSETTING dbSetting = new DBCONTACTGETSETTING(); + dbSetting.Name = name; + + DBVARIANT dbVariant = new DBVARIANT(); + dbVariant.Type = (byte)readAs; + + buffer.Lock(); + + if (readAs != DatabaseSettingType.Blob) + { + dbVariant.Text.TextPtr = buffer.IntPtr; + dbVariant.Text.TextBufferSize = (ushort)buffer.Size; + } + else + { + throw new NotImplementedException(); + //dbVariant.Blob.BlobPtr = buffer.IntPtr; + } + + return ReadSettingInternal(contactHandle, owner, ref dbSetting, ref dbVariant); + + } + catch (Exception e) + { + throw new MirandaException(TextResources.ExceptionMsg_ErrorWhileCallingMirandaService, e); + } + finally + { + buffer.Unlock(); + InteropBufferPool.ReleaseBuffer(buffer); + } + } + + private static object ReadSettingInternal(IntPtr contactHandle, string owner, ref DBCONTACTGETSETTING setting, ref DBVARIANT variant) + { + UnmanagedStructHandle dbSettingHandle = UnmanagedStructHandle.Empty; + UnmanagedStructHandle dbVariantHandle = UnmanagedStructHandle.Empty; + + try + { + dbVariantHandle = new UnmanagedStructHandle(ref variant); + + setting.Module = owner; + setting.DbVariantPtr = dbVariantHandle.IntPtr; + + dbSettingHandle = new UnmanagedStructHandle(ref setting); + + int result = MirandaContext.Current.CallService(MS_DB_CONTACT_GETSETTINGSTATIC, contactHandle, dbSettingHandle.IntPtr); + Debug.Assert(result != 2, "Deleted setting encountered"); + + if (result != 0) + return null; + + dbVariantHandle.MarshalBack(out variant); + return Translate.ValueFromVariant(ref variant); + } + finally + { + dbVariantHandle.Free(); + dbSettingHandle.Free(); + } + } + + #endregion + + #region Settings/Delete + + public bool DeleteSetting(string name, ISettingOwner owner) + { + if (owner == null) + throw new ArgumentNullException("owner"); + + return DeleteSetting(name, owner.Name); + } + + public bool DeleteSetting(string name, string owner) + { + if (String.IsNullOrEmpty(name)) + throw new ArgumentNullException("name"); + + if (String.IsNullOrEmpty(owner)) + throw new ArgumentNullException("owner"); + + DBCONTACTGETSETTING dbGetSetting = new DBCONTACTGETSETTING(); + dbGetSetting.Name = name; + dbGetSetting.Module = owner; + + UnmanagedStructHandle dbSettingHandle = new UnmanagedStructHandle(ref dbGetSetting); + + try + { + return MirandaContext.Current.CallService(MS_DB_CONTACT_DELETESETTING, MirandaHandle, dbSettingHandle.IntPtr) == 0; + } + finally + { + dbSettingHandle.Free(); + } + } + + #endregion + + #region Converters + + public static TId[] GetUniqueIDs(params ContactInfo[] contacts) + { + if (contacts == null) + throw new ArgumentNullException("contacts"); + + if (contacts.Length == 0) + return new TId[0]; + + return Array.ConvertAll(contacts, delegate(ContactInfo contact) + { + if (contact != null) + return contact.UniqueIdAs(); + else + return default(TId); + }); + } + + public static string[] GetDisplayNames(params string[] uuids) + { + if (uuids == null) + throw new ArgumentNullException("uuids"); + + if (uuids.Length == 0) + return new string[0]; + + return Array.ConvertAll(uuids, delegate(string uuid) + { + if (uuid == null) + return null; + + ContactInfo contact = MirandaContext.Current.MirandaDatabase.FindContact(uuid); + + if (contact != null) + return contact.DisplayName; + else + return null; + }); + } + + #endregion + + #region Helpers + + private static IntPtr GetModuleNamePtr(IntPtr contactHandle) + { + return (IntPtr)MirandaContext.Current.CallService(MS_PROTO_GETCONTACTBASEPROTO, contactHandle, IntPtr.Zero); + } + + public static string GetDisplayName(IntPtr contactHandle) + { + ContactDisplayNameOptions options = ContactDisplayNameOptions.Unicode; + + IntPtr pName = (IntPtr)MirandaContext.Current.CallService(MS_CLIST_GETCONTACTDISPLAYNAME, contactHandle, (IntPtr)options); + + if (pName == IntPtr.Zero) + return null; + else + return Translate.ToString(pName, StringEncoding.Unicode); + } + + public static bool GetUniqueID(IntPtr contactHandle, out object uuid, out ContactInfoPropertyType uuidType) + { + return GetProperty(contactHandle, ContactInfoProperty.UniqueID, out uuid, out uuidType); + } + + public static bool GetProperty(IntPtr contactHandle, ContactInfoProperty property, out object value, out ContactInfoPropertyType valueType) + { + CONTACTINFO contactInfo = new CONTACTINFO(contactHandle, GetModuleNamePtr(contactHandle)); + contactInfo.Flag = (byte)((byte)property | (byte)ContactInfoPropertyFlags.Unicode); + + unsafe + { + int result = MirandaContext.Current.CallServiceUnsafe(MirandaServices.MS_CONTACT_GETCONTACTINFO, null, &contactInfo); + + if (result != 0) + { + value = null; + valueType = ContactInfoPropertyType.Unknown; + + return false; + } + } + + switch (valueType = (ContactInfoPropertyType)contactInfo.Type) + { + case ContactInfoPropertyType.Byte: + value = Convert.ToByte(contactInfo.Value.ToInt32()); + break; + case ContactInfoPropertyType.String: + value = Translate.ToString(contactInfo.Value, StringEncoding.Unicode); + break; + case ContactInfoPropertyType.UInt16: + value = Convert.ToUInt16(contactInfo.Value.ToInt32()); + break; + case ContactInfoPropertyType.UInt32: + value = contactInfo.Value.ToInt32(); + break; + default: + value = null; + valueType = ContactInfoPropertyType.Unknown; + return false; + } + + return true; + } + + #endregion + + #region ISerializable Members + + void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context) + { + info.AddValue("MirandaHandle", MirandaHandle.ToInt64()); + } + + #endregion + + public TId UniqueIdAs() + { + object uuid = UniqueID; + return uuid == null ? default(TId) : (TId)Convert.ChangeType(uuid, typeof(TId)); + } + + public override string ToString() + { + return !Protocol.UnknownProtocol.Equals(OwningModule) ? + String.Format("{0} ({1})", DisplayName, OwningModule.Name) : DisplayName; + } + + public static bool operator ==(ContactInfo first, ContactInfo second) + { + if (object.ReferenceEquals(first, second)) + return true; + else if (object.ReferenceEquals(first, null)) + return false; + else + return first.Equals(second); + } + + public static bool operator !=(ContactInfo first, ContactInfo second) + { + return !(first == second); + } + + public override bool Equals(object obj) + { + ContactInfo other = obj as ContactInfo; + + if (object.ReferenceEquals(other, null)) + return false; + else + return GetHashCode() == other.GetHashCode(); + } + + public override int GetHashCode() + { + return MirandaHandle.ToInt32(); + } + + public static ContactInfo CreateContact() + { + IntPtr hContact = (IntPtr)MirandaContext.Current.CallService(MS_DB_CONTACT_ADD); + + if (hContact == IntPtr.Zero) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_DB_CONTACT_ADD, hContact.ToString())); + + return ContactInfo.FromHandle(hContact); + } + + public bool Delete() + { + if (IsSelf) + throw new InvalidOperationException(); + + return (0 == MirandaContext.Current.CallService(MS_DB_CONTACT_DELETE, MirandaHandle, IntPtr.Zero)); + } + + public bool GetProperty(ContactInfoProperty property, StringEncoding stringEncoding) + { + return GetProperty(MirandaHandle, property, out value, out valueType); + } + + public int CallContactService(string serviceName) + { + return CallContactService(serviceName, UIntPtr.Zero, IntPtr.Zero); + } + + [CLSCompliant(false)] + public int CallContactService(string serviceName, UIntPtr wParam, IntPtr lParam) + { + if (serviceName == null) + throw new ArgumentNullException("serviceName"); + + CCSDATA ccsData = new CCSDATA(this, serviceName); + ccsData.WParam = wParam; + ccsData.LParam = lParam; + + try + { + unsafe + { + return MirandaContext.Current.CallServiceUnsafe(MirandaServices.MS_PROTO_CALLCONTACTSERVICE, null, &ccsData); + } + } + finally + { + ccsData.Free(); + } + } + + public void SendMessage(string message) + { + if (message == null) + throw new ArgumentNullException("message"); + + UnmanagedStringHandle nativeHandle = UnmanagedStringHandle.Empty; + + try + { + nativeHandle = new UnmanagedStringHandle(message, StringEncoding.Ansi); + CallContactService(MirandaServices.PS_MESSAGE, UIntPtr.Zero, nativeHandle.IntPtr); + } + finally + { + nativeHandle.Free(); + } + } + + public void OpenMessageWindow() + { + OpenMessageWindow(null); + } + + public void OpenMessageWindow(string message) + { + UnmanagedStringHandle messageHandle = UnmanagedStringHandle.Empty; + + try + { + if (!String.IsNullOrEmpty(message)) + messageHandle = new UnmanagedStringHandle(message, StringEncoding.Ansi); + + int result = (int)CallbackResult.Success; + + if (result != MirandaContext.Current.CallService(MS_MSG_SENDMESSAGE, MirandaHandle, messageHandle.IntPtr)) + if ((int)CallbackResult.Success != (result = MirandaContext.Current.CallService(MS_MSG_SENDMESSAGE_2, MirandaHandle, messageHandle.IntPtr))) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_MSG_SENDMESSAGE, result.ToString())); + } + finally + { + messageHandle.Free(); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/ContactInfoProperty.cs b/Hyphen/Plugins/Infrastructure/ContactInfoProperty.cs new file mode 100644 index 0000000..dc64d0e --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ContactInfoProperty.cs @@ -0,0 +1,49 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public enum ContactInfoProperty : byte + { + // Types of information you can retreive by setting the dwFlag in CONTACTINFO + FirstName = 1, // returns first eventName (string) + LastName = 2, // returns last eventName (string) + Nick = 3, // returns nick eventName (string) + CustomNick = 4, // returns custom nick name, clist name (string) + Email = 5, // returns email (string) + City = 6, // returns city (string) + State = 7, // returns state (string) + Country = 8, // returns country (string) + Phone = 9, // returns phone (string) + HomePage = 10, // returns homepage (string) + About = 11, // returns about info (string) + Gender = 12, // returns gender (byte,'M','F' character) + Age = 13, // returns age (byte, 0==unspecified) + FirstAndLastName = 14, // returns first eventName + last eventName (string) + UniqueID = 15, // returns uniqueid, protocol username (must check type for type of return) + } + + [Flags] + internal enum ContactInfoPropertyFlags : byte + { + Unicode = 0x80, + } +} diff --git a/Hyphen/Plugins/Infrastructure/ContactList.cs b/Hyphen/Plugins/Infrastructure/ContactList.cs new file mode 100644 index 0000000..410c882 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ContactList.cs @@ -0,0 +1,503 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Resources; +using System.Diagnostics; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System.Drawing; +using Virtuoso.Hyphen.Mini; +using System.Windows.Forms; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public sealed class ContactList : EventPublisher + { + #region Constants + + private const string ME_CLC_SHOWINFOTIP = "CLC/ShowInfoTip", + ME_CLC_HIDEINFOTIP = "CLC/HideInfoTip", + MS_CLC_SETINFOTIPHOVERTIME = "CLC/SetInfoTipHoverTime", + MS_CLC_GETINFOTIPHOVERTIME = "CLC/GetInfoTipHoverTime", + ME_CLIST_STATUSMODECHANGE = "CList/StatusModeChange", + ME_CLIST_PREBUILDCONTACTMENU = "CList/PreBuildContactMenu", + ME_CLIST_DOUBLECLICKED = "CList/DoubleClicked"; + + private const string MS_CLIST_ADDEVENT = "CList/AddEvent", + MS_CLIST_REMOVEEVENT = "Clist/RemoveEvent"; + + #endregion + + #region Fields + + private static readonly object SyncObject = new object(); + + private EventHandler> InfoTipShowEventHandler, + InfoTipHideEventHandler; + + private EventHandler ProtocolStatusChangeEventHandler; + private EventHandler> ContactMenuShowingEventHandler; + private MirandaEventHandler> ContactDoubleClickedEventHandler; + + private bool ContactSelectionTrackingEnabled; + private ContactInfo selectedContact; + + private static readonly Random Random = new Random(); + + #endregion + + #region .ctors + + internal ContactList() { } + + #endregion + + #region Properties + + public ContactInfo SelectedContact + { + get + { + return selectedContact; + } + } + + public byte? Transparency + { + get + { + object alpha = ContactInfo.MeNeutral.ReadSetting("Alpha", "CList", DatabaseSettingType.Byte); + + if (alpha != null) + return (byte)alpha; + else + return null; + } + set + { + ContactInfo.MeNeutral.WriteSetting("Alpha", "CList", value.GetValueOrDefault(byte.MaxValue), DatabaseSettingType.Byte); + } + } + + public bool TransparencyEnabled + { + get + { + object enabled = ContactInfo.MeNeutral.ReadSetting("Transparent", "CList", DatabaseSettingType.Byte); + + if (enabled != null) + return Convert.ToBoolean((byte)enabled); + else + return false; + } + set + { + ContactInfo.MeNeutral.WriteSetting("Transparent", "CList", Convert.ToByte(value), DatabaseSettingType.Byte); + } + } + + #endregion + + #region Events + + private void FireInfoTipEvent(EventHandler> e, IntPtr lParam) + { + if (e == null) + return; + + ContactListInfoTip infoTip = (ContactListInfoTip)Marshal.PtrToStructure(lParam, typeof(ContactListInfoTip)); + ContactListEventArgs eArgs = new ContactListEventArgs(infoTip); + + e(this, eArgs); + } + + public event EventHandler> InfoTipShow + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>>(ref InfoTipShowEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_CLC_SHOWINFOTIP, + delegate(UIntPtr wParam, IntPtr lParam) + { + FireInfoTipEvent(InfoTipShowEventHandler, lParam); + return (int)CallbackResult.Success; + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>>(ref InfoTipShowEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_CLC_SHOWINFOTIP, this.InfoTipShowEventHandler); + } + } + + public event EventHandler> InfoTipHide + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>>(ref InfoTipHideEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_CLC_HIDEINFOTIP, + delegate(UIntPtr wParam, IntPtr lParam) + { + FireInfoTipEvent(InfoTipHideEventHandler, lParam); + return (int)CallbackResult.Success; + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>>(ref InfoTipHideEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_CLC_HIDEINFOTIP, this.InfoTipHideEventHandler); + } + } + + public event EventHandler ProtocolStatusChange + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>(ref ProtocolStatusChangeEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_CLIST_STATUSMODECHANGE, + delegate(UIntPtr wParam, IntPtr lParam) + { + string protocolName = lParam == IntPtr.Zero ? null : Translate.ToString(lParam, StringEncoding.Ansi); + Protocol protocol = null; + + if (!String.IsNullOrEmpty(protocolName)) + protocol = new Protocol(protocolName, ProtocolType.Protocol); + + ProtocolStatusChangeEventArgs eArgs = new ProtocolStatusChangeEventArgs(protocol, Translate.ToStatus(wParam)); + + if (ProtocolStatusChangeEventHandler != null) + ProtocolStatusChangeEventHandler(this, eArgs); + + return (int)CallbackResult.Success; + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>(ref ProtocolStatusChangeEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_CLIST_STATUSMODECHANGE, ProtocolStatusChangeEventHandler); + } + } + + public event EventHandler> ContactMenuShowing + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>>(ref ContactMenuShowingEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_CLIST_PREBUILDCONTACTMENU, + delegate(UIntPtr wParam, IntPtr lParam) + { + if (ContactMenuShowingEventHandler != null) + ContactMenuShowingEventHandler(this, new ContactListEventArgs(ContactInfo.FromHandle(wParam))); + + return (int)CallbackResult.Success; + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>>(ref ContactMenuShowingEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_CLIST_PREBUILDCONTACTMENU, ContactMenuShowingEventHandler); + } + } + + public event MirandaEventHandler> ContactDoubleClicked + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>>(ref ContactDoubleClickedEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_CLIST_DOUBLECLICKED, + delegate(UIntPtr wParam, IntPtr lParam) + { + bool retValue = InvokeChainCancelable>(ContactDoubleClickedEventHandler, new ContactListEventArgs(ContactInfo.FromHandle(wParam))); + return Convert.ToInt32(retValue); + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>>(ref ContactDoubleClickedEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_CLIST_DOUBLECLICKED, ContactDoubleClickedEventHandler); + } + } + + #endregion + + #region Methods + + #region Menu + + public void AddMenuItem(MirandaPlugin owner, MenuItemDeclarationAttribute item) + { + if (owner == null) + throw new ArgumentNullException("owner"); + + if (item == null) + throw new ArgumentNullException("item"); + + string serviceName = item.IsContactMenuItem ? MirandaServices.MS_CLIST_ADDCONTACTMENUITEM : MirandaServices.MS_CLIST_ADDMAINMENUITEM; + + UnmanagedStructHandle nativeHandle = UnmanagedStructHandle.Empty; + CLISTMENUITEM nativeItem = new CLISTMENUITEM(owner, item); + + try + { + nativeHandle = new UnmanagedStructHandle(ref nativeItem); + + IntPtr handle = (IntPtr)MirandaContext.Current.CallService(serviceName, UIntPtr.Zero, nativeHandle.IntPtr, + (owner is StandalonePlugin && !item.IsAdditional)); + + item.MirandaHandle = handle; + Debug.Assert(handle != IntPtr.Zero); + } + finally + { + nativeHandle.Free(); + } + } + + public bool ModifyMenuItem(MirandaPlugin owner, MenuItemDeclarationAttribute menuItem, string text) + { + return ModifyMenuItem(owner, menuItem, text, MenuItemProperties.None, null, 0, true); + } + + public bool ModifyMenuItem(MirandaPlugin owner, MenuItemDeclarationAttribute menuItem, MenuItemProperties flags) + { + return ModifyMenuItem(owner, menuItem, null, flags, null, 0, true); + } + + public bool ModifyMenuItem(MirandaPlugin owner, MenuItemDeclarationAttribute menuItem, HotKeys hotKey) + { + return ModifyMenuItem(owner, menuItem, null, MenuItemProperties.None, null, hotKey, true); + } + + public bool ModifyMenuItem(MirandaPlugin owner, MenuItemDeclarationAttribute menuItem, Icon icon) + { + return ModifyMenuItem(owner, menuItem, null, MenuItemProperties.None, icon, 0, true); + } + + public bool ModifyMenuItem(MirandaPlugin owner, MenuItemDeclarationAttribute menuItem, string text, MenuItemProperties flags, Icon icon, HotKeys hotKey) + { + return ModifyMenuItem(owner, menuItem, text, flags, icon, hotKey, true); + } + + public bool ModifyMenuItem(MirandaPlugin owner, MenuItemDeclarationAttribute menuItem, string text, MenuItemProperties flags, Icon icon, HotKeys hotKey, bool updateItemDescriptor) + { + if (owner == null) + throw new ArgumentNullException("owner"); + + if (menuItem == null) + throw new ArgumentNullException("menuItem"); + + if (menuItem.MirandaHandle == IntPtr.Zero) + throw new ArgumentException("Invalid menu item handle."); + + UnmanagedStructHandle nativeHandle = UnmanagedStructHandle.Empty; + + try + { + SynchronizationHelper.BeginMenuItemUpdate(menuItem); + + CLISTMENUITEM nativeItem = new CLISTMENUITEM(owner, menuItem); + MenuItemModifyFlags modifyFlags = MenuItemModifyFlags.None; + + if (text != null) + { + modifyFlags |= MenuItemModifyFlags.CMIM_NAME; + nativeItem.Text = text; + + if (updateItemDescriptor) menuItem.Text = text; + } + if (flags != MenuItemProperties.KeepCurrent) + { + modifyFlags |= MenuItemModifyFlags.CMIM_FLAGS; + nativeItem.Flags = (uint)flags; + + if (updateItemDescriptor) menuItem.Flags = flags; + } + if (icon != null) + { + modifyFlags |= MenuItemModifyFlags.CMIM_ICON; + nativeItem.Icon = icon.Handle; + } + if (hotKey != 0) + { + modifyFlags |= MenuItemModifyFlags.CMIM_HOTKEY; + nativeItem.HotKey = (uint)hotKey; + if (updateItemDescriptor) menuItem.HotKey = hotKey; + } + + nativeItem.Flags |= (uint)modifyFlags; + + nativeHandle = new UnmanagedStructHandle(ref nativeItem); + bool result = MirandaContext.Current.CallService(MirandaServices.MS_CLIST_MODIFYMENUITEM, (UIntPtr)(uint)menuItem.MirandaHandle, nativeHandle.IntPtr) == 0 + ? true : false; + + Debug.Assert(result); + return result; + } + catch (Exception e) + { + throw new MirandaException(TextResources.ExceptionMsg_ErrorWhileCallingMirandaService + e.Message, e); + } + finally + { + nativeHandle.Free(); + SynchronizationHelper.EndUpdate(menuItem); + } + } + + #endregion + + #region UI + + public bool ShowBaloonTip(string title, string text, string protocol, ToolTipIcon icon, int timeout) + { + UnmanagedStructHandle nativeHandle = UnmanagedStructHandle.Empty; + + try + { + MIRANDASYSTRAYNOTIFY msn = new MIRANDASYSTRAYNOTIFY(title, text, icon); + msn.Timeout = (uint)timeout; + msn.Protocol = protocol; + + nativeHandle = new UnmanagedStructHandle(ref msn); + int result = MirandaContext.Current.CallService(MirandaServices.MS_CLIST_SYSTRAY_NOTIFY, UIntPtr.Zero, nativeHandle.IntPtr); + + bool retValue = (result == 0); + Debug.Assert(retValue); + + return retValue; + } + finally + { + nativeHandle.Free(); + } + } + + public bool SetInfoTipHoverTime(int time) + { + int result = MirandaContext.Current.CallService(MS_CLC_SETINFOTIPHOVERTIME, (UIntPtr)(uint)time, IntPtr.Zero); + Debug.Assert(result == 0); + + return result == 0; + } + + public int GetInfoTipHoverTime() + { + return MirandaContext.Current.CallService(MS_CLC_GETINFOTIPHOVERTIME); + } + + public void EnableContactSelectionTracking() + { + lock (SyncObject) + { + if (ContactSelectionTrackingEnabled) + return; + + ContactMenuShowing += HandleContactSelection; + ContactSelectionTrackingEnabled = true; + + MirandaContext.Current.IsolatedModePluginsUnloading += delegate { ContactMenuShowing -= HandleContactSelection; }; + } + } + + private void HandleContactSelection(object sender, ContactListEventArgs e) + { + lock (SyncObject) + selectedContact = e.EventData; + } + + #endregion + + #region Events + + public IntPtr AddEvent(ContactInfo contact, Icon icon, string serviceToCall, ContactListEventProperties properties, string toolTip) + { + if (contact == null) + throw new ArgumentNullException("contact"); + + return AddEvent(contact, icon, serviceToCall, IntPtr.Zero, contact.MirandaHandle, properties, toolTip); + } + + public IntPtr AddEvent(ContactInfo contact, Icon icon, string serviceToCall, IntPtr lParamToPass, IntPtr eventToken, ContactListEventProperties properties, string toolTip) + { + if (contact == null) + throw new ArgumentNullException("contact"); + + if (icon == null) + throw new ArgumentNullException("icon"); + + ContactListEvent clistEvent = new ContactListEvent(); + clistEvent.ContactHandle = contact.MirandaHandle; + clistEvent.EventHandle = eventToken; + clistEvent.Flags = (uint)properties; + clistEvent.IconHandle = icon.Handle; + clistEvent.LParam = lParamToPass; + clistEvent.ServiceName = serviceToCall; + clistEvent.Tooltip = toolTip; + + UnmanagedStructHandle nativeStruct = UnmanagedStructHandle.Empty; + + try + { + nativeStruct = new UnmanagedStructHandle(ref clistEvent); + IntPtr eventHandle = (IntPtr)MirandaContext.Current.CallService(MS_CLIST_ADDEVENT, UIntPtr.Zero, nativeStruct.IntPtr); + + if (eventHandle != IntPtr.Zero) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_CLIST_ADDEVENT, eventHandle.ToString())); + + return clistEvent.EventHandle; + } + finally + { + nativeStruct.Free(); + } + } + + public bool RemoveEvent(ContactInfo contact) + { + if (contact == null) + throw new ArgumentNullException("contact"); + + return RemoveEvent(contact, contact.MirandaHandle); + } + + public bool RemoveEvent(ContactInfo contact, IntPtr eventToken) + { + if (contact == null) + throw new ArgumentNullException("contact"); + + return !Convert.ToBoolean(MirandaContext.Current.CallService(MS_CLIST_REMOVEEVENT, contact.MirandaHandle, eventToken)); + } + + #endregion + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/ContactListEvent.cs b/Hyphen/Plugins/Infrastructure/ContactListEvent.cs new file mode 100644 index 0000000..f960383 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ContactListEvent.cs @@ -0,0 +1,91 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [StructLayout(LayoutKind.Sequential, Pack = 4, CharSet = CharSet.Ansi)] + public sealed class ContactListEvent + { + #region Native fields + + private readonly int Size; + internal IntPtr ContactHandle; + internal IntPtr IconHandle; + internal UInt32 Flags; + internal IntPtr EventHandle; + internal IntPtr lParam; + internal string ServiceName; + internal string Tooltip; + + #endregion + + #region .ctors + + internal ContactListEvent() + { + Size = Marshal.SizeOf(this); + } + + public static ContactListEvent FromPointer(IntPtr pClistEvent) + { + if (pClistEvent == IntPtr.Zero) + throw new ArgumentNullException("pClistEventHandle"); + + return (ContactListEvent)Marshal.PtrToStructure(pClistEvent, typeof(ContactListEvent)); + } + + #endregion + + #region Managed properties + + public ContactInfo Contact + { + get { return ContactInfo.FromHandle(ContactHandle); } + } + + public IntPtr LParam + { + get { return lParam; } + internal set { lParam = value; } + } + + #endregion + } + + // typedef struct { + // int cbSize; //size in bytes of this structure + // HANDLE hContact; //handle to the contact to put the icon by + // HICON hIcon; //icon to flash + // DWORD flags; //...of course + // union + // { + // HANDLE hDbEvent; //caller defined but should be unique for hContact + // char * lpszProtocol; + // }; + // LPARAM lParam; //caller defined + // char *pszService; //name of the service to call on activation + // union { + // char *pszTooltip; //short description of the event to display as a + // TCHAR *ptszTooltip; //tooltip on the system tray + // }; + //} CLISTEVENT; +} diff --git a/Hyphen/Plugins/Infrastructure/ContactListEventArgs.cs b/Hyphen/Plugins/Infrastructure/ContactListEventArgs.cs new file mode 100644 index 0000000..2b96dc3 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ContactListEventArgs.cs @@ -0,0 +1,49 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [Serializable] + public class ContactListEventArgs : MirandaEventArgs + { + #region Fields + + private T eventData; + public T EventData + { + get + { + return this.eventData; + } + } + + #endregion + + #region .ctors + + internal ContactListEventArgs(T eventData) + { + this.eventData = eventData; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/ContactListInfoTip.cs b/Hyphen/Plugins/Infrastructure/ContactListInfoTip.cs new file mode 100644 index 0000000..a3d3411 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ContactListInfoTip.cs @@ -0,0 +1,81 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using System.Drawing; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [StructLayout(LayoutKind.Sequential, Pack = 4)] + public struct ContactListInfoTip + { + #region Native fields + + private int size, isTreeFocused, isGroup; + private IntPtr itemPtr; + + private Point point; + private Rectangle rectangle; + + #endregion + + #region Properties + + public bool IsTreeFocused + { + get { return Convert.ToBoolean(isTreeFocused); } + } + + public bool IsGroup + { + get { return Convert.ToBoolean(isGroup); } + } + + public MirandaItem Item + { + get + { + return IsGroup ? (MirandaItem)new GroupInfo(itemPtr) : (MirandaItem)ContactInfo.FromHandle(itemPtr); + } + } + + public Point Point + { + get { return point; } + } + + public Rectangle Rectangle + { + get { return rectangle; } + } + + #endregion + } + + /* + * typedef struct { + int cbSize; + int isTreeFocused; //so the plugin can provide an option + int isGroup; //0 if it's a contact, 1 if it's a group + HANDLE hItem; //handle to group or contact + POINT ptCursor; + RECT rcItem; + } CLCINFOTIP;*/ +} diff --git a/Hyphen/Plugins/Infrastructure/ContextWorker.cs b/Hyphen/Plugins/Infrastructure/ContextWorker.cs new file mode 100644 index 0000000..26e82f1 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ContextWorker.cs @@ -0,0 +1,36 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + /// + /// Represents a base class for cross-domain callable object that operate with Miranda Context. + /// + public abstract class ContextWorker : RemoteObject + { + protected internal ContextWorker() { } + + protected MirandaContext Context + { + get { return MirandaContext.Current; } + } + } +} diff --git a/Hyphen/Plugins/Infrastructure/DatabaseEventInfo.cs b/Hyphen/Plugins/Infrastructure/DatabaseEventInfo.cs new file mode 100644 index 0000000..a3e29d5 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/DatabaseEventInfo.cs @@ -0,0 +1,419 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using System.Diagnostics; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + /// + /// Represents database event information. + /// + public class DatabaseEventInfo : IMirandaObject + { + #region Constants + + private const string MS_DB_EVENT_GETBLOBSIZE = "DB/Event/GetBlobSize"; + + /// + /// DB/Event/Get + /// Retrieves all the information stored in hDbEvent + /// wParam=(WPARAM)(HANDLE)hDbEvent + /// lParam=(LPARAM)(DBEVENTINFO*)&dbe + /// hDbEvent should have been returned by db/event/add or db/event/find*event + /// Returns 0 on success or nonzero if hDbEvent is invalid + /// Don't forget to set dbe.cbSize, dbe.pBlob and dbe.cbBlob before calling this + /// service + /// The correct value dbe.cbBlob can be got using db/event/getblobsize + /// If successful, all the fields of dbe are filled. dbe.cbBlob is set to the + /// actual number of bytes retrieved and put in dbe.pBlob + /// If dbe.cbBlob is too small, dbe.pBlob is filled up to the size of dbe.cbBlob + /// and then dbe.cbBlob is set to the required size of data to go in dbe.pBlob + /// On return, dbe.szModule is a pointer to the database module's own internal list + /// of modules. Look but don't touch. + /// + private const string MS_DB_EVENT_GET = "DB/Event/Get"; + + private const string MS_DB_TIME_TIMESTAMPTOSTRING = "DB/Time/TimestampToString"; + + /// + /// DB/Event/GetContact + /// Retrieves a handle to the contact that owns hDbEvent. + /// wParam=(WPARAM)(HANDLE)hDbEvent + /// lParam=0 + /// hDbEvent should have been returned by db/event/add or db/event/find*event + /// NULL is a valid return value, meaning, as usual, the user. + /// Returns (HANDLE)(-1) if hDbEvent is invalid, or the handle to the contact on + /// success + /// This service is exceptionally slow. Use only when you have no other choice at + /// all. + /// + private const string MS_DB_EVENT_GETCONTACT = "DB/Event/GetContact"; + + /// + /// DB/Event/GetText (0.7.0+) + /// Retrieves the event's text + /// wParam=(WPARAM)0 (unused) + /// lParam=(LPARAM)(DBEVENTGETTEXT*)egt - pointer to structure with parameters + /// egt->dbei should be the valid database event read via MS_DB_EVENT_GET + /// egt->datatype = DBVT_WCHAR or DBVT_ASCIIZ or DBVT_TCHAR. If a caller wants to + /// suppress Unicode part of event in answer, add DBVTF_DENYUNICODE to this field. + /// egt->codepage is any valid codepage, CP_ACP by default. + /// Function returns a pointer to a string in the required format. + /// This string should be freed by a call of mir_free + /// + private const string MS_DB_EVENT_GETTEXT = "DB/Event/GetText"; + + #endregion + + #region .ctors + + /// + /// Initializes a new instance of the class. + /// + protected DatabaseEventInfo() { } + + /// + /// Initializes a new instance of the class. + /// + /// Event handle. + protected DatabaseEventInfo(IntPtr eventHandle) + { + if (eventHandle == IntPtr.Zero) + throw new ArgumentNullException("eventHandle"); + + this.mirandaHandle = eventHandle; + FromHandle(eventHandle, out type, out flags, out data, out owningModule, out timestamp); + } + + /// + /// Creates a new instance of the from an event handle. + /// + /// Event handle. + /// Database event info. + public static DatabaseEventInfo FromHandle(IntPtr eventHandle) + { + return new DatabaseEventInfo(eventHandle); + } + + #endregion + + #region Initializers + + /// + /// Gets the event information based on its handle. + /// + /// Event handle. + /// [OUT] Event type. + /// [OUT] Event flags. + /// [OUT] Event data. + /// [OUT] Event related module. + /// [OUT] Event timestamp. + public static void FromHandle(IntPtr eventHandle, out DatabaseEventType type, out DatabaseEventProperties flags, out string data, out Protocol owningModule, out DateTime timestamp) + { + InteropBuffer buffer = null; + + try + { + unsafe + { + DBEVENTINFO dbEventInfo; + PrepareDbEventInfo(eventHandle, out dbEventInfo, out buffer); + + GetEventInfo(ref dbEventInfo, eventHandle, buffer, out type, out flags, out data, out owningModule, out timestamp); + } + } + catch (MirandaException) + { + throw; + } + catch (Exception e) + { + throw new InvalidOperationException(TextResources.ExceptionMsg_CannotFinishMarshaling, e); + } + finally + { + if (buffer != null) + { + buffer.Unlock(); + InteropBufferPool.ReleaseBuffer(buffer); + } + } + } + + /// + /// Prepares the for information extraction and the blob buffer. + /// + /// Event handle. + /// [OUT] DB event info to marshal data into. + /// [OUT] Locked Blob buffer. + private unsafe static void PrepareDbEventInfo(IntPtr eventHandle, out DBEVENTINFO dbEventInfo, out InteropBuffer buffer) + { + int blobSize = MirandaContext.Current.CallServiceUnsafe(MS_DB_EVENT_GETBLOBSIZE, eventHandle.ToPointer(), null); + + if (blobSize == -1) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_DB_EVENT_GETBLOBSIZE, blobSize.ToString())); + + // Acquire a buffer for the blob + buffer = InteropBufferPool.AcquireBuffer(blobSize); + buffer.Lock(); + + dbEventInfo = new DBEVENTINFO(blobSize, buffer.IntPtr); + } + + /// + /// Initializes the instance by marshaling data from a pointer. + /// + /// pointer. + private void MarshalEventInfo(IntPtr pDbEventInfo) + { + DBEVENTINFO info = (DBEVENTINFO)Marshal.PtrToStructure(pDbEventInfo, typeof(DBEVENTINFO)); + + // Get an appropriately size buffer for the blob + InteropBuffer buffer = InteropBufferPool.AcquireBuffer((int)info.BlobSize); + + try + { + buffer.Lock(); + GetEventInfo(ref info, IntPtr.Zero, buffer, out type, out flags, out data, out owningModule, out timestamp); + } + finally + { + buffer.Unlock(); + InteropBufferPool.ReleaseBuffer(buffer); + } + } + + /// + /// Get the event information from a struct. + /// + /// [REF] struct. + /// Event handle (the blob buffer will be populated if not null). + /// Buffer to use for blob marshaling. + /// [OUT] Event type. + /// [OUT] Event flags. + /// [OUT] Event data. + /// [OUT] Event related module. + /// [OUT] Event timestamp. + private static void GetEventInfo(ref DBEVENTINFO dbEventInfo, IntPtr eventHandle, InteropBuffer blobBuffer, out DatabaseEventType type, out DatabaseEventProperties flags, out string data, out Protocol owningModule, out DateTime timestamp) + { + MirandaContext context = MirandaContext.Current; + + unsafe + { + // If the event handle is set, we probably want to populate the blob buffer... + if (eventHandle != IntPtr.Zero) + PopulateBlobBuffer(ref dbEventInfo, eventHandle); + + type = (DatabaseEventType)dbEventInfo.EventType; + flags = (DatabaseEventProperties)dbEventInfo.Flags; + data = GetEventData(ref dbEventInfo); + } + + owningModule = GetEventModule(ref dbEventInfo); + GetEventTimestamp(ref dbEventInfo, blobBuffer, out timestamp); + } + + /// + /// Populates the blob buffer set by the parameter. + /// + /// [REF] struct identifiing the buffer. + /// Event handle. + /// Buffer could bet populated. + private unsafe static void PopulateBlobBuffer(ref DBEVENTINFO dbEventInfo, IntPtr eventHandle) + { + int result; + + fixed (void* pDbEventInfo = &dbEventInfo) + result = MirandaContext.Current.CallServiceUnsafe(MS_DB_EVENT_GET, eventHandle.ToPointer(), pDbEventInfo); + + if (result != 0) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_DB_EVENT_GET, result.ToString())); + } + + /// + /// Gets the event timestamp. + /// + /// [REF] struct. + /// Buffer to reuse. + /// [OUT] Timestamp. + private static void GetEventTimestamp(ref DBEVENTINFO dbEventInfo, InteropBuffer blobBuffer, out DateTime timestamp) + { + try + { + DBTIMETOSTRING timeToString = new DBTIMETOSTRING("s D"); + timeToString.MaxBytes = blobBuffer.Size; + timeToString.Output = blobBuffer.IntPtr; + + unsafe + { + MirandaContext.Current.CallServiceUnsafe(MS_DB_TIME_TIMESTAMPTOSTRING, (void*)dbEventInfo.Timestamp, &timeToString); + } + + timestamp = DateTime.Parse(Translate.ToString(timeToString.Output, StringEncoding.Ansi)); + } + catch (FormatException) + { + timestamp = DateTime.MinValue; + } + } + + /// + /// Gets the event module. + /// + /// [REF] struct. + /// Event module. + private static Protocol GetEventModule(ref DBEVENTINFO dbEventInfo) + { + Protocol owningModule; + bool moduleFound = false; + + if (dbEventInfo.Module != IntPtr.Zero) + moduleFound = MirandaContext.Current.Protocols.TryGetValue(Translate.ToString(dbEventInfo.Module, StringEncoding.Ansi), out owningModule); + else + owningModule = Protocol.UnknownProtocol; + + if (!moduleFound) + owningModule = Protocol.UnknownProtocol; + + return owningModule; + } + + /// + /// Gets the event data. + /// + /// [REF] struct. + /// Event data. + private unsafe static string GetEventData(ref DBEVENTINFO dbEventInfo) + { + string data; + + DBEVENTGETTEXT dbGetText = new DBEVENTGETTEXT(); + dbGetText.Codepage = 0; + dbGetText.DataType = (int)DatabaseSettingType.UnicodeString; + + IntPtr pText; + + fixed (void* pDbEventInfo = &dbEventInfo) + { + dbGetText.DbEventInfoPtr = new IntPtr(pDbEventInfo); + pText = (IntPtr)MirandaContext.Current.CallServiceUnsafe(MS_DB_EVENT_GETTEXT, null, &dbGetText); + } + + if (pText != IntPtr.Zero) + { + data = Translate.ToString(pText, StringEncoding.Unicode); + MirandaContext.Current.MirandaMemoryManager.Free(pText); + } + else + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_DB_EVENT_GETTEXT, "null")); + + return data; + } + + #endregion + + #region Properties + + private IntPtr mirandaHandle; + public IntPtr MirandaHandle + { + get { return mirandaHandle; } + } + + private Protocol owningModule; + public Protocol OwningModule + { + get { return owningModule; } + } + + private DateTime timestamp; + public DateTime Timestamp + { + get { return timestamp; } + } + + private DatabaseEventProperties flags; + public DatabaseEventProperties Flags + { + get { return flags; } + } + + private DatabaseEventType type; + public DatabaseEventType Type + { + get { return type; } + } + + private string data; + public string Data + { + get { return data; } + } + + #endregion + + #region Methods + + /// + /// Marshals the from a struct pointer. + /// + /// struct pointer. + /// Event info. + internal static DatabaseEventInfo FromPointer(IntPtr pDbEventInfo) + { + DatabaseEventInfo info = new DatabaseEventInfo(); + info.MarshalEventInfo(pDbEventInfo); + + return info; + } + + /// + /// Gets the handle of the contact owning this event. This method is very slow, use wisely. + /// + /// Associated contact handle. + public IntPtr GetContactHandle() + { + return GetContactHandle(mirandaHandle); + } + + /// + /// Gets the handle of the contact owning this event. This method is very slow, use wisely. + /// + /// Event handle to get the contact handle for. + /// Associated contact handle. + public static IntPtr GetContactHandle(IntPtr eventHandle) + { + if (eventHandle == IntPtr.Zero) + throw new ArgumentNullException("eventHandle"); + + int contactHandle = MirandaContext.Current.CallService(MS_DB_EVENT_GETCONTACT, eventHandle, IntPtr.Zero); + + if (contactHandle == -1) + throw new ArgumentException(TextResources.ExceptionMsg_InvalidHandle, "eventHandle"); + + return (IntPtr)contactHandle; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/EventHandle.cs b/Hyphen/Plugins/Infrastructure/EventHandle.cs new file mode 100644 index 0000000..46f1361 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/EventHandle.cs @@ -0,0 +1,114 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Hyphen; +using System.Runtime.CompilerServices; +using Virtuoso.Miranda.Plugins.Collections; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [CLSCompliant(false)] + public sealed class EventHandle : MirandaObject + { + #region Fields + + private readonly MirandaPlugin owner; + internal MirandaPlugin Owner + { + get { return owner; } + } + + private readonly string eventName; + public string EventName + { + get { return eventName; } + } + + #endregion + + #region .ctors + + internal EventHandle(MirandaPlugin owner, string eventName, IntPtr handle) + { + if (handle == IntPtr.Zero) + throw new ArgumentNullException("handle"); + + if (owner == null) + throw new ArgumentNullException("owner"); + + if (eventName == null) + throw new ArgumentNullException("eventName"); + + this.owner = owner; + this.MirandaHandle = handle; + this.eventName = eventName; + + List eventHandles = owner.Descriptor.EventHandles; + + try + { + SynchronizationHelper.BeginCollectionUpdate(eventHandles); + eventHandles.Add(this); + } + finally + { + SynchronizationHelper.EndUpdate(eventHandles); + } + } + + #endregion + + #region Methods + + public int FireEvent() + { + return FireEvent(UIntPtr.Zero, IntPtr.Zero); + } + + public int FireEvent(UIntPtr wParam, IntPtr lParam) + { + MirandaPluginLink link = MirandaContext.Current.PluginLink; + + lock (link) + return link.NativePluginLink.NotifyEventHooks(MirandaHandle, wParam, lParam); + } + + [MethodImpl(MethodImplOptions.Synchronized)] + public void SetDefaultSubscriber(Callback subscriber) + { + if (subscriber == null) + throw new ArgumentNullException("subscriber"); + + MirandaPluginLink link = MirandaContext.Current.PluginLink; + + lock (link) + { + int result; + + if ((result = link.NativePluginLink.SetHookDefaultForHookableEvent(MirandaHandle, subscriber)) != 0) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, "SetHookDefaultForHookableEvent", result.ToString())); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/EventHookAttribute.cs b/Hyphen/Plugins/Infrastructure/EventHookAttribute.cs new file mode 100644 index 0000000..ddcdae7 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/EventHookAttribute.cs @@ -0,0 +1,66 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [AttributeUsage(AttributeTargets.Method, AllowMultiple = true, Inherited = true)] + public sealed class EventHookAttribute : HookAttribute + { + #region Fields + + private string eventName; + public string EventName + { + get + { + return this.eventName; + } + set + { + this.eventName = value; + } + } + + internal override string HookName + { + get { return EventName; } + } + + internal override HookType HookType + { + get { return HookType.EventHook; } + } + + #endregion + + #region .ctors + + public EventHookAttribute(string eventName) + { + if (eventName == null) + throw new ArgumentNullException("eventName"); + + this.eventName = eventName; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/EventManager.cs b/Hyphen/Plugins/Infrastructure/EventManager.cs new file mode 100644 index 0000000..774efaa --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/EventManager.cs @@ -0,0 +1,151 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Collections; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Hyphen; +using Virtuoso.Miranda.Plugins.Native; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public static class EventManager + { + [CLSCompliant(false)] + public static void CreateEventHook(string eventName, Callback callback, MirandaPlugin owner) + { + if (String.IsNullOrEmpty(eventName)) + throw new ArgumentNullException("eventName"); + + if (callback == null) + throw new ArgumentNullException("callback"); + + if (owner == null) + throw new ArgumentNullException("owner"); + + if (!owner.Initialized) + throw new InvalidOperationException(TextResources.ExceptionMsg_PluginNotInitialized); + + HookDescriptorCollection collection = owner.Descriptor.EventHooks; + + try + { + SynchronizationHelper.BeginPluginUpdate(owner); + SynchronizationHelper.BeginCollectionUpdate(collection); + + HookDescriptor descriptor = HookDescriptor.SetUpAndStore(collection, eventName, owner.Descriptor, callback, HookType.EventHook); + descriptor.RegisteredManually = true; + + HookManager.CreateHook(descriptor); + } + finally + { + SynchronizationHelper.EndUpdate(owner); + SynchronizationHelper.EndUpdate(collection); + } + } + + public static void RemoveEventHook(string eventName, MirandaPlugin owner) + { + if (String.IsNullOrEmpty(eventName)) + throw new ArgumentNullException("eventName"); + + if (owner == null) + throw new ArgumentNullException("owner"); + + if (!owner.Initialized) + throw new InvalidOperationException(TextResources.ExceptionMsg_PluginNotInitialized); + + HookDescriptorCollection collection = owner.Descriptor.EventHooks; + + try + { + SynchronizationHelper.BeginCollectionUpdate(collection); + HookDescriptor descriptor = null; + + if ((descriptor = owner.Descriptor.EventHooks.Find(eventName)) == null) + return; + + HookManager.DestroyHook(descriptor); + collection.Remove(descriptor); + } + finally + { + SynchronizationHelper.EndUpdate(collection); + } + } + + [CLSCompliant(false)] + public static EventHandle CreateEvent(string eventName, MirandaPlugin owner) + { + return CreateEvent(eventName, owner, null); + } + + [CLSCompliant(false)] + public static EventHandle CreateEvent(string eventName, MirandaPlugin owner, Callback defaultSubscriber) + { + if (String.IsNullOrEmpty(eventName)) + throw new ArgumentNullException("eventName"); + + if (owner == null) + throw new ArgumentNullException("owner"); + + if (!owner.Initialized) + throw new InvalidOperationException(TextResources.ExceptionMsg_PluginNotInitialized); + + if (ServiceManager.ServiceExists(eventName)) + throw new ArgumentException("eventName"); + + EventHandle handle = new EventHandle(owner, eventName, MirandaContext.Current.PluginLink.NativePluginLink.CreateHookableEvent(eventName)); + + if (defaultSubscriber != null) + handle.SetDefaultSubscriber(defaultSubscriber); + + return handle; + } + + public static void RemoveEvent(EventHandle eventHandle) + { + if (eventHandle == null) + throw new ArgumentNullException("eventHandle"); + + MirandaPluginLink link = MirandaContext.Current.PluginLink; + + if (eventHandle.MirandaHandle != IntPtr.Zero) + { + int result; + if ((result = link.NativePluginLink.DestroyHookableEvent(eventHandle.MirandaHandle)) != 0) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, "DestroyHookableEvent", result.ToString())); + + eventHandle.MirandaHandle = IntPtr.Zero; + EventHandleCollection handles = eventHandle.Owner.Descriptor.EventHandles; + + try + { + SynchronizationHelper.BeginCollectionUpdate(handles); + handles.Remove(eventHandle); + } + finally + { + SynchronizationHelper.EndUpdate(handles); + } + } + } + } +} diff --git a/Hyphen/Plugins/Infrastructure/EventPublisher.cs b/Hyphen/Plugins/Infrastructure/EventPublisher.cs new file mode 100644 index 0000000..a167f0d --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/EventPublisher.cs @@ -0,0 +1,49 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public abstract class EventPublisher + { + internal EventPublisher() { } + + protected bool InvokeChainCancelable(MirandaEventHandler handler, TEventArgs eventArgs) where TEventArgs : MirandaEventArgs + { + return InvokeChainCancelable(handler, this, eventArgs); + } + + public static bool InvokeChainCancelable(MirandaEventHandler handler, object sender, TEventArgs eventArgs) where TEventArgs : MirandaEventArgs + { + bool retValue = EventResult.HonourEventChain; + + if (handler != null) + { + foreach (MirandaEventHandler del in handler.GetInvocationList()) + { + if ((retValue = del(sender, eventArgs)) == EventResult.BreakEventChain) + break; + } + } + + return retValue; + } + } +} diff --git a/Hyphen/Plugins/Infrastructure/GroupInfo.cs b/Hyphen/Plugins/Infrastructure/GroupInfo.cs new file mode 100644 index 0000000..e547946 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/GroupInfo.cs @@ -0,0 +1,75 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using System.Runtime.InteropServices; +using System.Diagnostics; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public sealed class GroupInfo : MirandaItem + { + #region Fields + + private const string MS_CLIST_GROUPGETNAME = "CList/GroupGetName"; + + #endregion + + #region .ctors + + internal GroupInfo(IntPtr handle) : base(handle, ItemType.Group) { } + + #endregion + + #region Properties + + public string Name + { + get + { + IntPtr pName = (IntPtr)MirandaContext.Current.CallService(MS_CLIST_GROUPGETNAME, MirandaHandle, IntPtr.Zero); + Debug.Assert(pName != IntPtr.Zero); + + if (pName != IntPtr.Zero) + return Marshal.PtrToStringAnsi(pName); + else + return null; + } + } + + public unsafe bool IsExpanded + { + get + { + int expanded = 0; + + IntPtr pName = (IntPtr)MirandaContext.Current.CallServiceUnsafe(MS_CLIST_GROUPGETNAME, MirandaHandle.ToPointer(), &expanded); + Debug.Assert(pName != IntPtr.Zero); + + if (pName != IntPtr.Zero) + return Convert.ToBoolean(expanded); + else + return false; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/HookAttribute.cs b/Hyphen/Plugins/Infrastructure/HookAttribute.cs new file mode 100644 index 0000000..eacc125 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/HookAttribute.cs @@ -0,0 +1,32 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public abstract class HookAttribute : Attribute + { + protected internal HookAttribute() { } + + internal abstract string HookName { get; } + + internal abstract HookType HookType { get; } + } +} diff --git a/Hyphen/Plugins/Infrastructure/HookDescriptor.cs b/Hyphen/Plugins/Infrastructure/HookDescriptor.cs new file mode 100644 index 0000000..89481a2 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/HookDescriptor.cs @@ -0,0 +1,164 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using Virtuoso.Hyphen; +using Virtuoso.Miranda.Plugins.Forms; +using Virtuoso.Hyphen.Mini; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + internal sealed class HookDescriptor : IMirandaObject, IDescriptor + { + #region Fields + + private string name; + private IntPtr handle; + + private Callback callback, callbackStub; + private HookType hookType; + + private PluginDescriptor owner; + private bool registeredManually; + + #endregion + + #region .ctor + + public HookDescriptor(string name, PluginDescriptor owner, Callback callback, HookType type) + { + if (String.IsNullOrEmpty(name)) + throw new ArgumentNullException("name"); + + if (owner == null) + throw new ArgumentNullException("owner"); + + if (callback == null) + throw new ArgumentNullException("callback"); + + this.callbackStub = SafeCallbackStub; + + this.name = name; + this.owner = owner; + this.callback = callback; + this.hookType = type; + } + + public static HookDescriptor SetUpAndStore(IList targetContainer, string name, PluginDescriptor owner, Callback callback, HookType type) + { + if (targetContainer == null) + throw new ArgumentNullException("targetContainer"); + + HookDescriptor descriptor = new HookDescriptor(name, owner, callback, type); + targetContainer.Add(descriptor); + + return descriptor; + } + + public static HookDescriptor SetUpAndStore(IDictionary targetContainer, string name, PluginDescriptor owner, Callback callback, HookType type) + { + return SetUpAndStore(targetContainer, name, name, owner, callback, type); + } + + public static HookDescriptor SetUpAndStore(IDictionary targetContainer, T key, string name, PluginDescriptor owner, Callback callback, HookType type) + { + if (targetContainer == null) + throw new ArgumentNullException("targetContainer"); + + HookDescriptor descriptor = new HookDescriptor(name, owner, callback, type); + targetContainer.Add(key, descriptor); + + return descriptor; + } + + #endregion + + #region Methods + + private int SafeCallbackStub(UIntPtr wParam, IntPtr lParam) + { + try + { + return callback(wParam, lParam); + } + catch (Exception e) + { + MirandaPlugin.GetExceptionHandler(owner).HandleException(e, owner); + return (int)CallbackResult.Failure; + } + } + + public override int GetHashCode() + { + return (name.GetHashCode() + callback.Method.Name.GetHashCode() + (int)hookType); + } + + public override bool Equals(object obj) + { + if (obj == null) + return false; + + HookDescriptor other = obj as HookDescriptor; + + if (other == null) + return false; + + return GetHashCode() == other.GetHashCode(); + } + + #endregion + + #region Properties + + public string Name + { + get { return name; } + } + + public IntPtr MirandaHandle + { + get { return handle; } + internal set { handle = value; } + } + + public Callback Callback + { + get { return callbackStub; } + } + + public HookType HookType + { + get { return hookType; } + } + + public PluginDescriptor Owner + { + get { return owner; } + } + + public bool RegisteredManually + { + get { return registeredManually; } + set { registeredManually = value; } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/HookManager.cs b/Hyphen/Plugins/Infrastructure/HookManager.cs new file mode 100644 index 0000000..04beff8 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/HookManager.cs @@ -0,0 +1,177 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Hyphen; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Resources; +using System.Diagnostics; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + internal static class HookManager + { + public static void CreateHooks(params HookDescriptor[] hooks) + { + if (hooks == null) + throw new ArgumentNullException("hooks"); + + if (hooks.Length == 0) + return; + + foreach (HookDescriptor hook in hooks) + CreateHook(hook); + } + + public static void CreateHook(HookDescriptor hook) + { + try + { + SynchronizationHelper.BeginDescriptorUpdate(hook); + + switch (hook.HookType) + { + case HookType.EventHook: + { + HookEvent(hook); + break; + } + case HookType.ServiceFunction: + { + CreateServiceFunction(hook); + break; + } + default: + throw new ArgumentException("descriptor"); + } + } + finally + { + SynchronizationHelper.EndUpdate(hook); + } + } + + private static void CreateServiceFunction(HookDescriptor hook) + { + if (!ServiceManager.ServiceExists(hook.Name)) + { + hook.MirandaHandle = MirandaContext.Current.PluginLink.NativePluginLink.CreateServiceFunction(hook.Name, hook.Callback); + + if (hook.MirandaHandle == IntPtr.Zero) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable1_ServiceFunctionCreationFailed, hook.Name)); + } + else + { + if (!hook.Owner.ServiceFunctions.Exists(delegate(HookDescriptor _hook) + { + return _hook.Equals(hook) && _hook.MirandaHandle != IntPtr.Zero; + })) + throw new InvalidOperationException(String.Format(TextResources.ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists, hook.Name)); + } + } + + private static void HookEvent(HookDescriptor hook) + { + hook.MirandaHandle = MirandaContext.Current.PluginLink.NativePluginLink.HookEvent(hook.Name, hook.Callback); + + if (hook.MirandaHandle == IntPtr.Zero) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable1_EventHookingFailed, hook.Name)); + } + + public static void DestroyHook(HookDescriptor hook) + { + try + { + SynchronizationHelper.BeginDescriptorUpdate(hook); + + switch (hook.HookType) + { + case HookType.EventHook: + { + UnhookEvent(hook); + break; + } + case HookType.ServiceFunction: + { + DestroyServiceFunction(hook); + break; + } + default: + throw new ArgumentException("descriptor"); + } + } + finally + { + SynchronizationHelper.EndUpdate(hook); + } + } + + private static void UnhookEvent(HookDescriptor descriptor) + { + if (descriptor == null) + throw new ArgumentNullException("descriptor"); + + if (descriptor.HookType != HookType.EventHook) + throw new ArgumentOutOfRangeException("descriptor"); + + if (descriptor.MirandaHandle == IntPtr.Zero) + return; + + try + { + SynchronizationHelper.BeginDescriptorUpdate(descriptor); + + int result = MirandaContext.Current.PluginLink.NativePluginLink.UnhookEvent(descriptor.MirandaHandle); + Debug.Assert(result == 0); + + descriptor.MirandaHandle = IntPtr.Zero; + } + finally + { + SynchronizationHelper.EndUpdate(descriptor); + } + } + + private static void DestroyServiceFunction(HookDescriptor descriptor) + { + if (descriptor == null) + throw new ArgumentNullException("descriptor"); + + if (descriptor.HookType != HookType.ServiceFunction) + throw new ArgumentOutOfRangeException("descriptor"); + + if (descriptor.MirandaHandle == IntPtr.Zero) + return; + + try + { + SynchronizationHelper.BeginDescriptorUpdate(descriptor); + + int result = MirandaContext.Current.PluginLink.NativePluginLink.DestroyServiceFunction(descriptor.MirandaHandle); + Debug.Assert(result == 0); + + descriptor.MirandaHandle = IntPtr.Zero; + } + finally + { + SynchronizationHelper.EndUpdate(descriptor); + } + } + } +} diff --git a/Hyphen/Plugins/Infrastructure/HookType.cs b/Hyphen/Plugins/Infrastructure/HookType.cs new file mode 100644 index 0000000..03a0e47 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/HookType.cs @@ -0,0 +1,30 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + internal enum HookType + { + Undefined, + EventHook, + ServiceFunction, + } +} diff --git a/Hyphen/Plugins/Infrastructure/IMirandaObject.cs b/Hyphen/Plugins/Infrastructure/IMirandaObject.cs new file mode 100644 index 0000000..dab07f6 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/IMirandaObject.cs @@ -0,0 +1,28 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public interface IMirandaObject + { + IntPtr MirandaHandle { get; } + } +} diff --git a/Hyphen/Plugins/Infrastructure/ISettingOwner.cs b/Hyphen/Plugins/Infrastructure/ISettingOwner.cs new file mode 100644 index 0000000..76f90c5 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ISettingOwner.cs @@ -0,0 +1,28 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public interface ISettingOwner + { + string Name { get; } + } +} diff --git a/Hyphen/Plugins/Infrastructure/IStringResolver.cs b/Hyphen/Plugins/Infrastructure/IStringResolver.cs new file mode 100644 index 0000000..b6131a8 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/IStringResolver.cs @@ -0,0 +1,28 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public interface IStringResolver + { + string ResolveString(string stringToResolve, string tag); + } +} diff --git a/Hyphen/Plugins/Infrastructure/LanguagePack.cs b/Hyphen/Plugins/Infrastructure/LanguagePack.cs new file mode 100644 index 0000000..a741739 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/LanguagePack.cs @@ -0,0 +1,75 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public static class LanguagePack + { + #region Enums + + private enum LanguagePackEncoding : ushort + { + Ansi = 0, + Unicode = 0x1000 + } + + #endregion + + #region Constants + + private const string MS_LANGPACK_TRANSLATESTRING = "LangPack/TranslateString"; + + #endregion + + #region FromPointer methods + + public static string TranslateString(string str) + { + if (String.IsNullOrEmpty(str)) + return str; + + UnmanagedStringHandle stringHandle = UnmanagedStringHandle.Empty; + + try + { + StringEncoding mirandaEncoding = MirandaEnvironment.MirandaStringEncoding; + LanguagePackEncoding encoding = (mirandaEncoding == StringEncoding.Unicode ? LanguagePackEncoding.Unicode : LanguagePackEncoding.Ansi); + + stringHandle = new UnmanagedStringHandle(str, mirandaEncoding); + IntPtr translatedPtr = (IntPtr)MirandaContext.Current.CallService(MS_LANGPACK_TRANSLATESTRING, (UIntPtr)encoding, stringHandle.IntPtr); + + return translatedPtr == stringHandle.IntPtr ? str : Translate.ToString(translatedPtr, mirandaEncoding); + } + catch (Exception e) + { + throw new MirandaException(TextResources.ExceptionMsg_ErrorWhileCallingMirandaService, e); + } + finally + { + stringHandle.Free(); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/LanguagePackStringResolver.cs b/Hyphen/Plugins/Infrastructure/LanguagePackStringResolver.cs new file mode 100644 index 0000000..86e89a6 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/LanguagePackStringResolver.cs @@ -0,0 +1,33 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public class LanguagePackStringResolver : IStringResolver + { + public LanguagePackStringResolver() { } + + public string ResolveString(string stringToResolve, string tag) + { + return LanguagePack.TranslateString(stringToResolve); + } + } +} diff --git a/Hyphen/Plugins/Infrastructure/LazyEventBinder.cs b/Hyphen/Plugins/Infrastructure/LazyEventBinder.cs new file mode 100644 index 0000000..6b376fc --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/LazyEventBinder.cs @@ -0,0 +1,102 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using System.Diagnostics; +using Virtuoso.Miranda.Plugins.Native; +using System.Threading; +using Virtuoso.Miranda.Plugins.Resources; +using System.Runtime.CompilerServices; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + /// + /// Represents a late-binded master subscriber of Miranda events. + /// + internal static class LazyEventBinder + { + #region Fields + + private static readonly Dictionary EventHandlerDescriptorsTable; + + #endregion + + #region .ctors + + static LazyEventBinder() + { + EventHandlerDescriptorsTable = new Dictionary(3); + } + + #endregion + + #region Management methods + + public static void AttachDelegate(ref T destination, T value) where T : class + { + if (value == null) + throw new ArgumentNullException("value"); + + if (!typeof(T).IsSubclassOf(typeof(Delegate))) + throw new ArgumentException("T"); + + destination = Delegate.Combine(destination as Delegate, value as Delegate) as T; + } + + public static void DetachDelegate(ref T destination, T value) where T : class + { + if (!typeof(T).IsSubclassOf(typeof(Delegate))) + throw new ArgumentException("T"); + + destination = Delegate.Remove(destination as Delegate, value as Delegate) as T; + } + + public static void HookMirandaEvent(string eventName, Callback callback) + { + lock (EventHandlerDescriptorsTable) + { + if (EventHandlerDescriptorsTable.ContainsKey(eventName)) + return; + + HookDescriptor descriptor = HookDescriptor.SetUpAndStore(EventHandlerDescriptorsTable, eventName, MirandaPlugin.Hyphen.Singleton.Descriptor, callback, HookType.EventHook); + HookManager.CreateHook(descriptor); + } + } + + public static void UnhookMirandaEvent(string eventName, Delegate callback) + { + if (callback != null) + return; + + lock (EventHandlerDescriptorsTable) + { + if (!EventHandlerDescriptorsTable.ContainsKey(eventName)) + return; + + int result = MirandaContext.Current.PluginLink.NativePluginLink.UnhookEvent(EventHandlerDescriptorsTable[eventName].MirandaHandle); + Debug.Assert(result == 0); + + EventHandlerDescriptorsTable.Remove(eventName); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/MenuItemDeclarationAttribute.cs b/Hyphen/Plugins/Infrastructure/MenuItemDeclarationAttribute.cs new file mode 100644 index 0000000..4777f06 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MenuItemDeclarationAttribute.cs @@ -0,0 +1,214 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using System.Reflection; +using System.Diagnostics; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = true, Inherited = true)] + public sealed class MenuItemDeclarationAttribute : Attribute, IMirandaObject + { + #region Fields & Properties + + private static readonly Type StringResolverType = typeof(IStringResolver); + + private string text; + public string Text + { + get { return text; } + set { text = value; } + } + + private MenuItemProperties flags; + public MenuItemProperties Flags + { + get { return flags; } + set { flags = value; } + } + + private int position, popUpPosition; + public int PopUpPosition + { + get { return popUpPosition; } + set { popUpPosition = value; } + } + public int Position + { + get { return position; } + set { position = value; } + } + + private bool useEmbeddedIcon; + public bool UseEmbeddedIcon + { + get { return useEmbeddedIcon; } + set { useEmbeddedIcon = value; } + } + + private bool hasIcon; + public bool HasIcon + { + get { return hasIcon; } + set { hasIcon = value; } + } + + private string iconID; + public string IconID + { + get { return iconID; } + set { iconID = value; } + } + + private string service; + public string Service + { + get { return service; } + internal set { service = value; } + } + + private string popUpMenu; + public string PopUpMenu + { + get { return popUpMenu; } + } + + private string owningModule; + public string OwningModule + { + get { return owningModule; } + set { owningModule = value; } + } + + private HotKeys hotKey; + public HotKeys HotKey + { + get { return hotKey; } + set { hotKey = value; } + } + + private Type stringResolver; + public Type StringResolver + { + get { return stringResolver; } + } + + private string tag; + public string Tag + { + get { return tag; } + set { tag = value; } + } + + private bool isContactMenuItem; + public bool IsContactMenuItem + { + get { return isContactMenuItem; } + set { isContactMenuItem = value; } + } + + private IntPtr mirandaHandle; + public IntPtr MirandaHandle + { + get + { + return this.mirandaHandle; + } + internal set + { + this.mirandaHandle = value; + } + } + + private bool isAdditional; + public bool IsAdditional + { + get { return isAdditional; } + set { isAdditional = value; } + } + + #endregion + + #region .ctors + + public MenuItemDeclarationAttribute(string text) : this(text, null, null, null) { } + + public MenuItemDeclarationAttribute(string text, Type stringResolver) : this(text, null, stringResolver) { } + + public MenuItemDeclarationAttribute(string text, string service) : this(text, null, service, null) { } + + public MenuItemDeclarationAttribute(string text, string popUpMenu, string service) : this(text, popUpMenu, service, null) { } + + public MenuItemDeclarationAttribute(string text, string service, Type stringResolver) : this(text, null, service, stringResolver) { } + + public MenuItemDeclarationAttribute(string text, string popUpMenu, string service, Type stringResolver) + { + if (text == null) + throw new ArgumentNullException("text"); + + this.text = text; + this.service = (service == null ? String.Empty : service); + this.popUpMenu = popUpMenu; + this.stringResolver = stringResolver; + + /* m_clist.h + * WARNING: do not use Translate(TS) for p(t)szName or p(t)szPopupName as they + are translated by the core, which may lead to double translation. */ + if (stringResolver != null && stringResolver.GetType() != typeof(LanguagePackStringResolver)) + ResolveStrings(text, popUpMenu, stringResolver); + } + + private void ResolveStrings(string text, string popUpMenu, Type stringResolver) + { + try + { + if (stringResolver != null && stringResolver.GetInterface(StringResolverType.FullName) != null) + { + IStringResolver resolver = null; + StringResolverCache cache = StringResolverCache.Singleton; + + lock (cache) + { + if (!cache.TryGetValue(stringResolver, out resolver)) + { + resolver = (IStringResolver)Activator.CreateInstance(stringResolver, true); + + if (resolver == null) + throw new TypeLoadException(stringResolver.FullName); + else + cache.Add(stringResolver, resolver); + } + } + + this.text = resolver.ResolveString(text, tag); + this.popUpMenu = resolver.ResolveString(popUpMenu, tag); + } + } + catch (Exception e) + { + throw new FusionException(String.Format(TextResources.ExceptionMsg_Formatable1_CannotLoadStringResolver, stringResolver.FullName), null, null, null, e); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaContactEventArgs.cs b/Hyphen/Plugins/Infrastructure/MirandaContactEventArgs.cs new file mode 100644 index 0000000..ec6ee37 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaContactEventArgs.cs @@ -0,0 +1,54 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [Serializable] + public class MirandaContactEventArgs : MirandaEventArgs + { + #region Fields + + private readonly ContactInfo contactInfo; + + #endregion + + #region .ctors + + public MirandaContactEventArgs(ContactInfo contactInfo) + { + if (contactInfo == null) + throw new ArgumentNullException("contactInfo"); + + this.contactInfo = contactInfo; + } + + #endregion + + #region Properties + + public ContactInfo ContactInfo + { + get { return contactInfo; } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaContactSettingEventArgs.cs b/Hyphen/Plugins/Infrastructure/MirandaContactSettingEventArgs.cs new file mode 100644 index 0000000..5daa4fe --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaContactSettingEventArgs.cs @@ -0,0 +1,71 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [Serializable] + public class MirandaContactSettingEventArgs : MirandaContactEventArgs + { + #region Properties + + private string settingName; + public string SettingName + { + get { return settingName; } + } + + private string settingOwner; + public string SettingOwner + { + get { return settingOwner; } + } + + private object value; + public object Value + { + get { return value; } + } + + private DatabaseSettingType valueType; + public DatabaseSettingType ValueType + { + get { return valueType; } + } + + #endregion + + #region .ctors + + public MirandaContactSettingEventArgs(ContactInfo contactInfo, string name, string owner, object value, DatabaseSettingType valueType) + : base(contactInfo) + { + if (String.IsNullOrEmpty(name)) + throw new ArgumentNullException("name"); + + this.settingName = name; + this.settingOwner = owner; + this.value = value; + this.valueType = valueType; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaContext.cs b/Hyphen/Plugins/Infrastructure/MirandaContext.cs new file mode 100644 index 0000000..9fad5a3 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaContext.cs @@ -0,0 +1,373 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using System.Runtime.InteropServices; +using System.Diagnostics; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Miranda.Plugins.Collections; +using System.Collections.ObjectModel; +using Virtuoso.Hyphen; +using System.Runtime.CompilerServices; +using System.Windows.Forms; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public sealed class MirandaContext + { + #region Constants + + private const string MS_SYSTEM_GETVERSIONTEXT = "Miranda/System/GetVersionText"; + + /// + /// Returns Miranda's RTL/CRT function poiners to malloc() free() realloc() -- 0.1.2.2+ + /// This is useful for preallocation of memory for use with Miranda's services + /// that Miranda can free -- or reallocation of a block of memory passed with a service. + /// Do not use with memory unless it is explicitly expected the memory *can* + /// or *shall* be used in this way. The passed structure is expected to have it's .cbSize initialised + /// wParam=0, lParam = (LPARAM) &MM_INTERFACE. + /// + private const string MS_SYSTEM_GET_MMI = "Miranda/System/GetMMI"; + + #endregion + + #region Fields + + private static MirandaContext singleton; + private PluginManagerBase pluginManager; + + private readonly ServiceCallInterceptionManager serviceInterceptors; + private readonly MirandaDatabase mirandaDatabase; + private ProtocolDictionary protocols; + private readonly MirandaPluginLink pluginLink; + private readonly ContactList contactList; + + #endregion + + #region .ctors + + private MirandaContext(PluginManagerBase pluginManager, MirandaPluginLink mirandaLink, bool skipContextInfo) + { + if (mirandaLink == null) + throw new ArgumentNullException("mirandaLink"); + + this.pluginManager = pluginManager; + this.mirandaDatabase = new MirandaDatabase(); + this.pluginLink = mirandaLink; + this.contactList = new ContactList(); + this.serviceInterceptors = new ServiceCallInterceptionManager(); + + GetMMInterface(); + + PopulateEnvironmentInformation(); + + if (!skipContextInfo) + PopulateContextInformation(); + else + this.protocols = new ProtocolDictionary(0); + } + + /// + /// Initializes a context from a plugin link. + /// + /// + /// + internal static void InitializeCurrent(MirandaPluginLink mirandaLink, bool skipContextPopulation) + { + InitializeCurrent(mirandaLink, null, skipContextPopulation); + } + + internal static void InitializeCurrent(MirandaPluginLink mirandaLink, PluginManagerBase pluginManager) + { + InitializeCurrent(mirandaLink, pluginManager, false); + } + + [MethodImpl(MethodImplOptions.Synchronized)] + internal static void InitializeCurrent(MirandaPluginLink mirandaLink, PluginManagerBase pluginManager, bool skipContextPopulation) + { + if (singleton == null) + singleton = new MirandaContext(pluginManager, mirandaLink, skipContextPopulation); + } + + [MethodImpl(MethodImplOptions.Synchronized)] + internal static void InitializeCurrent(MirandaContext context) + { + if (context == null) + throw new ArgumentNullException("context"); + + if (singleton == null) + singleton = context; + else + throw new InvalidOperationException(); + } + + [MethodImpl(MethodImplOptions.Synchronized)] + internal static void InvalidateCurrent() + { + if (Initialized) + { + singleton.DetachPluginManager(); + singleton = null; + } + } + + [MethodImpl(MethodImplOptions.Synchronized)] + internal void AssociatePluginManager(PluginManagerBase manager) + { + if (manager == null) + throw new ArgumentNullException("manager"); + + pluginManager = manager; + } + + [MethodImpl(MethodImplOptions.Synchronized)] + internal void DetachPluginManager() + { + pluginManager = null; + } + + #endregion + + #region Initialization + + private void GetMMInterface() + { + mirandaMemoryManager = new MM_INTERFACE(); + mirandaMemoryManager.Size = Marshal.SizeOf(typeof(MM_INTERFACE)); + + UnmanagedStructHandle mmiHandle = new UnmanagedStructHandle(ref mirandaMemoryManager); + + try + { + if (CallService(MS_SYSTEM_GET_MMI, IntPtr.Zero, mmiHandle.IntPtr) == CallbackResult.Success) + mmiHandle.MarshalBack(out mirandaMemoryManager); + else + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_SYSTEM_GET_MMI, "1")); + } + finally + { + mmiHandle.Free(); + } + } + + internal void PopulateContextInformation() + { + PopulateNetworkProtocols(); + } + + private unsafe void PopulateNetworkProtocols() + { + try + { + int count; + PROTOCOLDESCRIPTOR** pointerArrayPtr; + + int result = CallServiceUnsafe(MirandaServices.MS_PROTO_ENUMPROTOCOLS, &count, &pointerArrayPtr); + if (result != 0) throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MirandaServices.MS_PROTO_ENUMPROTOCOLS, result.ToString())); + + ProtocolDictionary protocols = new ProtocolDictionary(count); + + for (int i = 0; i < count; i++) + { + // *(ptr_to_array_of_ptrs + i * sizeof(PROTOCOLDESCRIPTOR)) = *ptr_to_ptr = *ptr = data + PROTOCOLDESCRIPTOR nativeDescriptor = **(((PROTOCOLDESCRIPTOR**)pointerArrayPtr) + i); + Protocol protocol = new Protocol(ref nativeDescriptor); + + protocols.Add(protocol.Name, protocol); + } + + this.protocols = protocols; + } + catch (Exception) + { + this.protocols = new ProtocolDictionary(0); + } + } + + private void PopulateEnvironmentInformation() + { + InteropBuffer buffer = InteropBufferPool.AcquireBuffer(); + + try + { + buffer.Lock(); + + int result = CallService(MS_SYSTEM_GETVERSIONTEXT, buffer.SizeAsUIntPtr, buffer.IntPtr); + Debug.Assert(result == 0); + + if (result == 0 && Translate.ToString(buffer.IntPtr, StringEncoding.Ansi).IndexOf("Unicode") != -1) + MirandaEnvironment.MirandaStringEncoding = StringEncoding.Unicode; + else + MirandaEnvironment.MirandaStringEncoding = StringEncoding.Ansi; + } + finally + { + buffer.Unlock(); + InteropBufferPool.ReleaseBuffer(buffer); + } + + MirandaEnvironment.MirandaVersion = Translate.FromMirandaVersion((uint)CallService(MirandaServices.MS_SYSTEM_GETVERSION)); + } + + #endregion + + #region Properties + + internal MirandaPluginLink PluginLink + { + get + { + return this.pluginLink; + } + } + + private MM_INTERFACE mirandaMemoryManager; + internal MM_INTERFACE MirandaMemoryManager + { + get { return mirandaMemoryManager; } + } + + internal PluginManagerBase PluginManager + { + get + { + if (this.pluginManager == null) + throw new InvalidOperationException("No plugin manager associated with this context."); + + return this.pluginManager; + } + } + + public bool HasPluginManager + { + get + { + return this.pluginManager != null; + } + } + + public static MirandaContext Current + { + get + { + if (singleton == null) + throw new InvalidOperationException(TextResources.ExceptionMsg_MirandaContextNotAvailable); + + return singleton; + } + } + + public static bool Initialized + { + get + { + return singleton != null; + } + } + + public ServiceCallInterceptionManager ServiceCallInterceptors + { + get + { + return this.serviceInterceptors; + } + } + + public MirandaDatabase MirandaDatabase + { + get + { + return this.mirandaDatabase; + } + } + + public ProtocolDictionary Protocols + { + get + { + return this.protocols; + } + } + + public ContactList ContactList + { + get { return contactList; } + } + + #endregion + + #region Events + + public event EventHandler ModulesLoaded; + + internal void RaiseModulesLoadedEvent() + { + if (ModulesLoaded != null) + ModulesLoaded(this, EventArgs.Empty); + } + + internal event EventHandler IsolatedModePluginsUnloading; + + internal void RaiseIsolatedModePluginsUnloadingEvent() + { + if (IsolatedModePluginsUnloading != null) + IsolatedModePluginsUnloading(null, EventArgs.Empty); + } + + #endregion + + #region CallService + + public int CallService(string serviceName) + { + return CallService(serviceName, UIntPtr.Zero, IntPtr.Zero, false); + } + + public int CallService(string serviceName, IntPtr wParam, IntPtr lParam) + { + return CallService(serviceName, Translate.ToHandle(wParam), lParam, false); + } + + [CLSCompliant(false)] + public int CallService(string serviceName, UIntPtr wParam, IntPtr lParam) + { + return CallService(serviceName, wParam, lParam, false); + } + + internal int CallService(string serviceName, UIntPtr wParam, IntPtr lParam, bool noInterception) + { + if (String.IsNullOrEmpty(serviceName)) + throw new ArgumentNullException("service"); + + int returnCode = + serviceInterceptors.RequiresInterception(serviceName) && !noInterception ? + serviceInterceptors[serviceName](wParam, lParam) : pluginLink.NativePluginLink.CallService(serviceName, wParam, lParam); + + return returnCode; + } + + internal unsafe int CallServiceUnsafe(string serviceName, void* wParam, void* lParam) + { + return pluginLink.CallServiceUnsafe(serviceName, wParam, lParam); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaDatabase.cs b/Hyphen/Plugins/Infrastructure/MirandaDatabase.cs new file mode 100644 index 0000000..9fed1a1 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaDatabase.cs @@ -0,0 +1,507 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins; +using System.Runtime.CompilerServices; +using Virtuoso.Miranda.Plugins.Native; +using System.Diagnostics; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Resources; +using System.Threading; +using System.Collections.ObjectModel; +using Virtuoso.Hyphen; +using Virtuoso.Miranda.Plugins.Helpers; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public sealed class MirandaDatabase : EventPublisher + { + #region Constants + + private const string ME_DB_EVENT_ADDED = "DB/Event/Added", + ME_DB_EVENT_DELETED = "DB/Event/Deleted", + ME_DB_EVENT_FILTER_ADD = "DB/Event/FilterAdd", + ME_DB_CONTACT_ADDED = "DB/Contact/Added", + ME_DB_CONTACT_DELETED = "DB/Contact/Deleted", + ME_DB_CONTACT_SETTINGCHANGED = "DB/Contact/SettingChanged"; + + private const string MS_DB_GETPROFILENAME = "DB/GetProfileName", + MS_DB_GETPROFILEPATH = "DB/GetProfilePath", + MS_DB_EVENT_ADD = "DB/Event/Add"; + + private const string MS_DB_CONTACT_GETCOUNT = "DB/Contact/GetCount", + MS_DB_CONTACT_FINDFIRST = "DB/Contact/FindFirst", + MS_DB_CONTACT_FINDNEXT = "DB/Contact/FindNext"; + + private const string MS_DB_EVENT_FINDFIRST = "DB/Event/FindFirst", + MS_DB_EVENT_FINDNEXT = "DB/Event/FindNext"; + + #endregion + + #region .ctors + + internal MirandaDatabase() { } + + #endregion + + #region Event handlers + + private MirandaEventHandler EventAddedEventHandler, + EventDeletedEventHandler, BeforeEventAddedEventHandler; + + private MirandaEventHandler ContactAddedEventHandler, + ContactDeletedEventHandler; + + private MirandaEventHandler ContactSettingChangedEventHandler; + + #endregion + + #region Events & Triggers + + private int RaiseDbEvent(MirandaEventHandler handler, bool fromPointer, UIntPtr wParam, IntPtr lParam) + { + if (handler == null) + return 0; + + ContactInfo contactInfo = ContactInfo.FromHandle(wParam); + DatabaseEventInfo eventInfo = fromPointer ? DatabaseEventInfo.FromPointer(lParam) : DatabaseEventInfo.FromHandle(lParam); + MirandaDatabaseEventArgs eventArgs = new MirandaDatabaseEventArgs(contactInfo, eventInfo); + + bool retValue = InvokeChainCancelable(handler, eventArgs); + return Convert.ToInt32(retValue); + } + + public event MirandaEventHandler EventAdded + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>(ref EventAddedEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_DB_EVENT_ADDED, + delegate(UIntPtr wParam, IntPtr lParam) + { + return RaiseDbEvent(EventAddedEventHandler, false, wParam, lParam); + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>(ref EventAddedEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_DB_EVENT_ADDED, EventAddedEventHandler); + } + } + + public event MirandaEventHandler EventDeleted + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>(ref EventDeletedEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_DB_EVENT_DELETED, + delegate(UIntPtr wParam, IntPtr lParam) + { + return RaiseDbEvent(EventDeletedEventHandler, false, wParam, lParam); + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>(ref EventDeletedEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_DB_EVENT_DELETED, EventDeletedEventHandler); + } + } + + /// + /// Return TRUE to filter out the event, FALSE to pass the message along. + /// + public event MirandaEventHandler BeforeEventAdded + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>(ref BeforeEventAddedEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_DB_EVENT_FILTER_ADD, + delegate(UIntPtr wParam, IntPtr lParam) + { + return RaiseDbEvent(BeforeEventAddedEventHandler, true, wParam, lParam); + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>(ref BeforeEventAddedEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_DB_EVENT_FILTER_ADD, BeforeEventAddedEventHandler); + } + } + + private int RaiseContactEvent(MirandaEventHandler handler, UIntPtr wParam) + { + if (handler == null) + return 0; + + ContactInfo contactInfo = GetContactInfo(wParam); + MirandaContactEventArgs eventArgs = new MirandaContactEventArgs(contactInfo); + + bool retValue = InvokeChainCancelable(handler, eventArgs); + return Convert.ToInt32(retValue); + } + + private static ContactInfo GetContactInfo(UIntPtr wParam) + { + if (wParam == UIntPtr.Zero) + return ContactInfo.MeNeutral; + else + return ContactInfo.FromHandle(wParam); + } + + private unsafe int RaiseContactSettingEvent(UIntPtr hContact, IntPtr pDbWriteSetting) + { + DBCONTACTWRITESETTING dbWriteSetting = *(DBCONTACTWRITESETTING*)pDbWriteSetting.ToPointer(); + ContactInfo contactInfo = GetContactInfo(hContact); + + string name = Translate.ToString(dbWriteSetting.Name, StringEncoding.Ansi); + string moduleName = Translate.ToString(dbWriteSetting.Module, StringEncoding.Ansi); + object value = null; + + if ((DatabaseSettingType)dbWriteSetting.Value.Type != DatabaseSettingType.Blob) + value = DBCONTACTWRITESETTING.ExtractValue(pDbWriteSetting); + else + Debugger.Log(10, Loader.LogCategory, "Blob settings are not yet supported, the value will be null."); + + MirandaContactSettingEventArgs eventArgs = new MirandaContactSettingEventArgs(contactInfo, name, moduleName, value, (DatabaseSettingType)dbWriteSetting.Value.Type); + + bool retValue = InvokeChainCancelable(ContactSettingChangedEventHandler, eventArgs); + return Convert.ToInt32(retValue); + } + + public event MirandaEventHandler ContactAdded + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>(ref ContactAddedEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_DB_CONTACT_ADDED, + delegate(UIntPtr wParam, IntPtr lParam) + { + return RaiseContactEvent(ContactAddedEventHandler, wParam); + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>(ref ContactAddedEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_DB_CONTACT_ADDED, ContactAddedEventHandler); + } + } + + public event MirandaEventHandler ContactDeleted + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>(ref ContactDeletedEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_DB_CONTACT_DELETED, + delegate(UIntPtr wParam, IntPtr lParam) + { + return RaiseContactEvent(ContactDeletedEventHandler, wParam); + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>(ref ContactDeletedEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_DB_CONTACT_DELETED, ContactDeletedEventHandler); + } + } + + public event MirandaEventHandler ContactSettingChanged + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>(ref ContactSettingChangedEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_DB_CONTACT_SETTINGCHANGED, + delegate(UIntPtr wParam, IntPtr lParam) + { + return RaiseContactSettingEvent(wParam, lParam); + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>(ref ContactSettingChangedEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_DB_CONTACT_SETTINGCHANGED, ContactSettingChangedEventHandler); + } + } + + #endregion + + #region Properties + + #region Profile + + public string ProfileName + { + get + { + InteropBuffer buffer = InteropBufferPool.AcquireBuffer(); + + try + { + buffer.Lock(); + + int result = MirandaContext.Current.CallService(MS_DB_GETPROFILENAME, buffer.SizeAsUIntPtr, buffer.IntPtr); + Debug.Assert(result == 0); + + if (result != 0) return null; + return Translate.ToString(buffer.IntPtr, StringEncoding.Ansi); + } + catch (Exception e) + { + throw new MirandaException(TextResources.ExceptionMsg_ErrorWhileCallingMirandaService, e); + } + finally + { + buffer.Unlock(); + InteropBufferPool.ReleaseBuffer(buffer); + } + } + } + + public string ProfilePath + { + get + { + InteropBuffer buffer = InteropBufferPool.AcquireBuffer(); + + try + { + buffer.Lock(); + + int result = MirandaContext.Current.CallService(MS_DB_GETPROFILEPATH, buffer.SizeAsUIntPtr, buffer.IntPtr); + Debug.Assert(result == 0); + + if (result != 0) return null; + return Translate.ToString(buffer.IntPtr, StringEncoding.Ansi); + } + catch (Exception e) + { + throw new MirandaException(TextResources.ExceptionMsg_ErrorWhileCallingMirandaService, e); + } + finally + { + buffer.Unlock(); + InteropBufferPool.ReleaseBuffer(buffer); + } + } + } + + #endregion + + #endregion + + #region Methods + + #region Contacts + + /// + /// Enumerates contact handles, excluding the Me contact. + /// + /// Contact handles. + public IEnumerable GetContactHandles() + { + MirandaContext context = MirandaContext.Current; + Callback findNext = ServiceManager.GetService(MS_DB_CONTACT_FINDNEXT); + + UIntPtr handle = (UIntPtr)(uint)context.CallService(MS_DB_CONTACT_FINDFIRST); + + do + { + if (handle != UIntPtr.Zero) + yield return Translate.ToHandle(handle); + } + while ((handle = (UIntPtr)(uint)findNext(handle, IntPtr.Zero)) != UIntPtr.Zero); + } + + public ReadOnlyCollection GetContacts() + { + return GetContacts(false); + } + + public ReadOnlyCollection GetContacts(bool includeSelf) + { + MirandaContext context = MirandaContext.Current; + Callback findNext = ServiceManager.GetService(MS_DB_CONTACT_FINDNEXT); + + List contacts = new List(context.CallService(MS_DB_CONTACT_GETCOUNT)); + + if (includeSelf) + contacts.Add(ContactInfo.MeNeutral); + + foreach (IntPtr handle in GetContactHandles()) + contacts.Add(ContactInfo.FromHandle(handle)); + + return contacts.AsReadOnly(); + } + + public ContactInfo FindContact(string uuid) + { + return FindContact(uuid, ContactInfoProperty.UniqueID, StringEncoding.Ansi); + } + + public ContactInfo FindContact(string searchValue, ContactInfoProperty searchCriterion, StringEncoding valueEncoding) + { + return FindContact(searchValue, searchCriterion, valueEncoding, StringComparison.Ordinal); + } + + public ContactInfo FindContact(string searchValue, ContactInfoProperty searchCriterion, StringEncoding valueEncoding, StringComparison comparisonType) + { + if (searchValue == null) + throw new ArgumentNullException("searchValues"); + + foreach (IntPtr handle in GetContactHandles()) + { + object value; + ContactInfoPropertyType type; + + if (ContactInfo.GetProperty(handle, searchCriterion, out value, out type) + && searchValue.Equals(value.ToString(), comparisonType)) + return ContactInfo.FromHandle(handle); + } + + Debug.Assert(false); + return null; + } + + public ContactInfo[] FindContacts(params string[] uuids) + { + if (uuids == null) + throw new ArgumentNullException("uuids"); + + List results = new List(uuids.Length); + + foreach (string uuid in uuids) + { + ContactInfo contact = FindContact(uuid, ContactInfoProperty.UniqueID, StringEncoding.Ansi); + + if (contact != null) + results.Add(contact); + } + + return results.ToArray(); + } + + #endregion + + #region Events + + public IntPtr AddEvent(ContactInfo associatedContact, object data, ISettingOwner owner, DatabaseEventType type, DatabaseEventProperties flags, DateTime? timestamp) + { + return AddEvent(associatedContact, data, owner, type, flags, timestamp, true); + } + + public IntPtr AddEvent(ContactInfo associatedContact, object data, ISettingOwner owner, DatabaseEventType type, DatabaseEventProperties flags, DateTime? timestamp, bool throwOnFailure) + { + if (owner == null) + throw new ArgumentNullException("owner"); + + return AddEvent(associatedContact, data, owner.Name, type, flags, timestamp, throwOnFailure); + } + + public IntPtr AddEvent(ContactInfo associatedContact, object data, string owner, DatabaseEventType type, DatabaseEventProperties flags, DateTime? timestamp, bool throwOnFailure) + { + if (associatedContact == null) + throw new ArgumentNullException("associatedContact"); + + if (String.IsNullOrEmpty(owner)) + throw new ArgumentNullException("owner"); + + if (data == null) + throw new ArgumentNullException("data"); + + IntPtr pBlob = IntPtr.Zero; + UnmanagedStructHandle nativeStruct = UnmanagedStructHandle.Empty; + + try + { + int totalBytes; + + if (data is string) + { + totalBytes = DBEVENTINFO.LayoutAnsiUniString((string)data, out pBlob); + } + else if (data is byte[]) + { + byte[] dataBytes = (byte[])data; + totalBytes = dataBytes.Length; + + pBlob = Marshal.AllocHGlobal(totalBytes); + Marshal.Copy(dataBytes, 0, pBlob, dataBytes.Length); + } + else + throw new ArgumentOutOfRangeException("data"); + + DBEVENTINFO info = new DBEVENTINFO(0, IntPtr.Zero); + info.Module = Translate.ToHandle(owner, StringEncoding.Ansi).IntPtr; + info.BlobSize = (uint)totalBytes; + info.BlobPtr = pBlob; + info.EventType = (ushort)type; + info.Flags = (uint)flags; + info.Timestamp = Utilities.GetTimestamp(timestamp.HasValue ? timestamp.Value : DateTime.Now); + + nativeStruct = new UnmanagedStructHandle(ref info, pBlob, info.Module); + IntPtr eventHandle = (IntPtr)MirandaContext.Current.CallService(MS_DB_EVENT_ADD, associatedContact.MirandaHandle, nativeStruct.IntPtr); + + if (eventHandle == IntPtr.Zero && throwOnFailure) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_DB_EVENT_ADD, eventHandle.ToString())); + else + return eventHandle; + } + finally + { + nativeStruct.Free(); + } + } + + public IEnumerable GetEventHandles(ContactInfo owner) + { + if (owner == null) + throw new ArgumentNullException("owner"); + + return GetEventHandles(owner.MirandaHandle); + } + + public IEnumerable GetEventHandles(IntPtr ownerHandle) + { + Callback findNext = ServiceManager.GetService(MS_DB_EVENT_FINDNEXT); + IntPtr pEvent = (IntPtr)MirandaContext.Current.CallService(MS_DB_EVENT_FINDFIRST, ownerHandle, IntPtr.Zero); + + while (pEvent != IntPtr.Zero) + { + yield return pEvent; + pEvent = (IntPtr)findNext(Translate.ToHandle(pEvent), IntPtr.Zero); + } + } + + #endregion + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaDatabaseEventArgs.cs b/Hyphen/Plugins/Infrastructure/MirandaDatabaseEventArgs.cs new file mode 100644 index 0000000..e92b80c --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaDatabaseEventArgs.cs @@ -0,0 +1,49 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [Serializable] + public class MirandaDatabaseEventArgs : MirandaContactEventArgs + { + #region .ctors + + public MirandaDatabaseEventArgs(ContactInfo contact, DatabaseEventInfo eventInfo) : base(contact) + { + if (eventInfo == null) + throw new ArgumentNullException("eventInfo"); + + this.eventInfo = eventInfo; + } + + #endregion + + #region Properties + + private readonly DatabaseEventInfo eventInfo; + public DatabaseEventInfo EventInfo + { + get { return eventInfo; } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaEnvironment.cs b/Hyphen/Plugins/Infrastructure/MirandaEnvironment.cs new file mode 100644 index 0000000..3936149 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaEnvironment.cs @@ -0,0 +1,123 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using System.IO; +using Virtuoso.Hyphen; +using System.Windows.Forms; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public static class MirandaEnvironment + { + #region Fields + + private static Version mirandaVersion; + private static StringEncoding mirandaStringEncoding; + + internal const string MirandaPluginsFolderRelativePath = @"plugins\", + ManagedPluginsFolderName = "managed", + ManagedPluginsFolderRelativePath = MirandaPluginsFolderRelativePath + ManagedPluginsFolderName; + + private static readonly string mirandaFolderPath = Application.StartupPath, + mirandaPluginsFolderPath = Path.Combine(mirandaFolderPath, MirandaPluginsFolderRelativePath), + managedPluginsFolderPath = Path.Combine(mirandaFolderPath, ManagedPluginsFolderRelativePath), + mirandaBootIniPath = mirandaFolderPath + @"\MirandaBoot.ini"; + + #endregion + + #region Methods + + public static string GetManagedSubdirectoryRelativePath(string subDir) + { + return Path.Combine(ManagedPluginsFolderRelativePath, subDir); + } + + #endregion + + #region Properties + + public static StringEncoding MirandaStringEncoding + { + get + { + return mirandaStringEncoding; + } + internal set + { + mirandaStringEncoding = value; + } + } + + public static string MirandaFolderPath + { + get + { + return mirandaFolderPath; + } + } + + public static string MirandaPluginsFolderPath + { + get + { + return mirandaPluginsFolderPath; + } + } + + public static string ManagedPluginsFolderPath + { + get + { + return managedPluginsFolderPath; + } + } + + public static Version MirandaVersion + { + get + { + return mirandaVersion; + } + internal set + { + mirandaVersion = value; + } + } + + public static Version HyphenVersion + { + get + { + return Loader.HyphenVersion; + } + } + + public static string MirandaBootIniPath + { + get + { + return mirandaBootIniPath; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaEventArgs.cs b/Hyphen/Plugins/Infrastructure/MirandaEventArgs.cs new file mode 100644 index 0000000..3078cbd --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaEventArgs.cs @@ -0,0 +1,29 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [Serializable] + public abstract class MirandaEventArgs : EventArgs + { + protected MirandaEventArgs() { } + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaEventHandler.cs b/Hyphen/Plugins/Infrastructure/MirandaEventHandler.cs new file mode 100644 index 0000000..b6c897f --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaEventHandler.cs @@ -0,0 +1,32 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + /// + /// Represents a generic handler for Miranda-raised events. + /// + /// Type of EventArgs. + /// Sender of the event. + /// Event arguments. + /// TRUE to block the event from bubbling to another subscribers, FALSE to pass it along. + public delegate bool MirandaEventHandler(object sender, TEventArgs e) where TEventArgs : MirandaEventArgs; +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaEvents.cs b/Hyphen/Plugins/Infrastructure/MirandaEvents.cs new file mode 100644 index 0000000..a6a16c5 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaEvents.cs @@ -0,0 +1,35 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + internal static class MirandaEvents + { + public const string ME_SYSTEM_SHUTDOWN = "Miranda/System/Shutdown", + ME_SYSTEM_OKTOEXIT = "Miranda/System/OkToExitEvent", + ME_DB_EVENT_ADDED = "DB/Event/Added", + ME_DB_EVENT_DELETED = "DB/Event/Deleted", + ME_DB_CONTACT_ADDED = "DB/Contact/Added", + ME_DB_CONTACT_DELETED = "DB/Contact/Deleted", + ME_DB_CONTACT_SETTINGCHANGED = "DB/Contact/SettingChanged", + ME_SYSTEM_MODULESLOADED = "Miranda/System/ModulesLoaded"; + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaItem.cs b/Hyphen/Plugins/Infrastructure/MirandaItem.cs new file mode 100644 index 0000000..31a7787 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaItem.cs @@ -0,0 +1,73 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public enum ItemType : int + { + Unspecified, + Contact, + Group + } + + public class MirandaItem : MirandaObject + { + #region Fields + + private static readonly Type ItemTypeType = typeof(ItemType); + + private ItemType type; + + #endregion + + #region .ctors + + protected MirandaItem(IntPtr handle, ItemType type) : this(handle) + { + if (!Enum.IsDefined(ItemTypeType, type)) + throw new ArgumentOutOfRangeException("type"); + + if (type == ItemType.Unspecified) + throw new ArgumentException("Unspecified type is not supported."); + + this.type = type; + } + + internal MirandaItem(IntPtr handle) + { + this.MirandaHandle = handle; + } + + #endregion + + #region Properties + + public ItemType Type + { + get + { + return this.type; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaObject.cs b/Hyphen/Plugins/Infrastructure/MirandaObject.cs new file mode 100644 index 0000000..64414cd --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaObject.cs @@ -0,0 +1,48 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public abstract class MirandaObject : IMirandaObject + { + #region Fields + + private IntPtr mirandaHandle; + + #endregion + + #region .ctors + + protected MirandaObject() { } + + #endregion + + #region Properties + + public IntPtr MirandaHandle + { + get { return mirandaHandle; } + protected internal set { mirandaHandle = value; } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/MirandaServices.cs b/Hyphen/Plugins/Infrastructure/MirandaServices.cs new file mode 100644 index 0000000..97be71a --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/MirandaServices.cs @@ -0,0 +1,44 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using System.Drawing; +using System.Runtime.InteropServices; +using System.Diagnostics; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + internal static class MirandaServices + { + public const string MS_CLIST_ADDMAINMENUITEM = "CList/AddMainMenuItem", + MS_CLIST_ADDCONTACTMENUITEM = "CList/AddContactMenuItem", + MS_CLIST_MODIFYMENUITEM = "CList/ModifyMenuItem", + MS_CLIST_SYSTRAY_NOTIFY = "Miranda/Systray/Notify", + MS_CONTACT_GETCONTACTINFO = "Miranda/Contact/GetContactInfo", + + MS_PROTO_GETCONTACTBASEPROTO = "Proto/GetContactBaseProto", + MS_PROTO_ENUMPROTOCOLS = "Proto/EnumProtocols", + MS_PROTO_CALLCONTACTSERVICE = "Proto/CallContactService", + MS_PROTO_REGISTERMODULE = "Proto/RegisterModule", + PS_MESSAGE = "/SendMsg", + MS_SYSTEM_GETVERSION = "Miranda/System/GetVersion"; + } +} diff --git a/Hyphen/Plugins/Infrastructure/PluginConfiguration.cs b/Hyphen/Plugins/Infrastructure/PluginConfiguration.cs new file mode 100644 index 0000000..bc8207b --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/PluginConfiguration.cs @@ -0,0 +1,277 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.IO; +using System.IO.IsolatedStorage; +using System.Runtime.Serialization.Formatters.Binary; +using Virtuoso.Miranda.Plugins.Collections; +using Virtuoso.Miranda.Plugins.Configuration; +using Virtuoso.Miranda.Plugins.Helpers; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [Serializable] + public abstract class PluginConfiguration + { + #region Fields + + private static readonly object SyncObject = new object(); + + private static readonly TypeInstanceCache Stores = new TypeInstanceCache(); + private static readonly TypeInstanceCache Encryptions = new TypeInstanceCache(); + + internal readonly ConfigurationValues values; + + private bool isDirty; + + #endregion + + #region .ctors + + protected PluginConfiguration() + { + values = new ConfigurationValues(); + } + + protected virtual void InitializeDefaultConfiguration() { } + + #endregion + + #region Events + + [field: NonSerialized] + public event EventHandler ConfigurationChanged; + + protected void RaiseChangedEvent() + { + if (ConfigurationChanged != null) + ConfigurationChanged(this, EventArgs.Empty); + } + + #endregion + + #region Properties + + public ConfigurationValues Values + { + get + { + return values; + } + } + + public bool IsDirty + { + get + { + return isDirty; + } + protected internal set + { + isDirty = value; + } + } + + #endregion + + #region Methods + + protected virtual void OnBeforeSerialization() { } + + protected virtual void OnAfterDeserialization() { } + + protected void MarkDirty() + { + IsDirty = true; + RaiseChangedEvent(); + } + + #region Helpers + + private static ConfigurationOptionsAttribute GetOptions(Type configType) + { + if (configType == null) + throw new ArgumentNullException("configType"); + + ConfigurationOptionsAttribute options = null; + Type configAttribType = typeof(ConfigurationOptionsAttribute); + + if (configType.IsDefined(configAttribType, false)) + options = (ConfigurationOptionsAttribute)configType.GetCustomAttributes(configAttribType, false)[0]; + else + options = new ConfigurationOptionsAttribute(); + + return options.Finalize(); + } + + private static byte[] FetchStream(Stream stream) + { + if (stream == null) + throw new ArgumentNullException("stream"); + + if (!stream.CanRead) + throw new ArgumentException(); + + byte[] buffer = new byte[stream.Length]; + + if (stream.Read(buffer, 0, buffer.Length) != stream.Length) + throw new IOException(); + + return buffer; + } + + internal static void FlushCaches() + { + lock (SyncObject) + { + foreach (IStorage storage in Stores.Values) + storage.Dispose(); + + Stores.Clear(); + Encryptions.Clear(); + } + } + + #endregion + + #region Save + + public void Save() + { + try + { + lock (SyncObject) + { + OnBeforeSerialization(); + + ConfigurationOptionsAttribute options = GetOptions(GetType()); + IStorage storage = Stores.Instantiate(options.Storage); + + if (options.Encrypt) + SerializeEncrypted(storage, options); + else + Serialize(storage, options); + } + } + catch (IsolatedStorageException isE) + { + throw new ConfigurationException(TextResources.ExceptionMsg_UnableToSaveConfiguration_StorageError, isE); + } + } + + private void Serialize(IStorage storage, ConfigurationOptionsAttribute options) + { + BinaryFormatter serializer = new BinaryFormatter(); + + using (Stream stream = storage.OpenWrite(GetType(), options)) + serializer.Serialize(stream, this); + } + + private void SerializeEncrypted(IStorage storage, ConfigurationOptionsAttribute options) + { + IEncryption encryption = Encryptions.Instantiate(options.Encryption); + + using (Stream serializationStream = new MemoryStream(2048)) + { + new BinaryFormatter().Serialize(serializationStream, this); + serializationStream.Seek(0, SeekOrigin.Begin); + + byte[] data = FetchStream(serializationStream); + byte[] protectedData = encryption.Encrypt(data); + + using (Stream stream = storage.OpenWrite(GetType(), options)) + stream.Write(protectedData, 0, protectedData.Length); + } + } + + #endregion + + #region Load + + public static T Load() where T : PluginConfiguration + { + try + { + lock (SyncObject) + { + Type configType = typeof(T); + ConfigurationOptionsAttribute options = GetOptions(configType); + + IStorage storage = Stores.Instantiate(options.Storage); + + if (!storage.Exists(configType, options)) + return GetDefaultConfiguration(); + + using (Stream stream = storage.OpenRead(configType, options)) + { + T result = null; + + if (options.Encrypt) + result = DeserializeEncrypted(stream, options); + else + result = Deserialize(stream); + + result.OnAfterDeserialization(); + return result; + } + } + } + catch (OperationCanceledException e) + { + throw new ConfigurationException(TextResources.ExceptionMsg_UnableToLoadConfiguration_StorageError, e); + } + catch (Exception e) + { + T defaults = GetDefaultConfiguration(); + defaults.Save(); + + throw new ConfigurationException(TextResources.ExceptionMsg_UnableToLoadConfiguration_StorageError, e); + } + } + + private static T Deserialize(Stream stream) where T : PluginConfiguration + { + return new BinaryFormatter().Deserialize(stream) as T; + } + + private static T DeserializeEncrypted(Stream stream, ConfigurationOptionsAttribute options) where T : PluginConfiguration + { + byte[] protectedData = FetchStream(stream); + byte[] data = Encryptions.Instantiate(options.Encryption).Decrypt(protectedData); + + using (Stream serializedStream = new MemoryStream(data)) + return new BinaryFormatter().Deserialize(serializedStream) as T; + } + + public static TConfig GetDefaultConfiguration() where TConfig : PluginConfiguration + { + TConfig result = Activator.CreateInstance(typeof(TConfig), true) as TConfig; + + if (result == null) + throw new ConfigurationException(); + + result.InitializeDefaultConfiguration(); + return result; + } + + #endregion + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/Protocol.cs b/Hyphen/Plugins/Infrastructure/Protocol.cs new file mode 100644 index 0000000..fff89ba --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/Protocol.cs @@ -0,0 +1,225 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Hyphen; +using System.Runtime.CompilerServices; +using Virtuoso.Miranda.Plugins.Infrastructure.Protocols; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public class Protocol : ContextWorker, ISettingOwner + { + #region Constants + + internal const string PS_GETSTATUS = "/GetStatus"; + internal const string PS_SETSTATUS = "/SetStatus"; + internal const string PS_GETCAPS = "/GetCaps"; + internal const string PS_GETNAME = "/GetName"; + internal const string PS_LOADICON = "/LoadIcon"; + internal const string PSS_MESSAGE = "/SendMsg"; + + private const string MS_PROTO_ISPROTOONCONTACT = "Proto/IsProtoOnContact"; + + #endregion + + #region Fields + + private static readonly Protocol unknownProtocol = new Protocol(); + + private readonly string name; + private readonly ProtocolType type; + + #endregion + + #region .ctors + + internal Protocol() + { + this.name = String.Empty; + this.type = ProtocolType.Other; + } + + internal Protocol(string name, ProtocolType type) + { + if (String.IsNullOrEmpty(name)) + throw new ArgumentNullException("name"); + + if (!Enum.IsDefined(typeof(ProtocolType), type)) + throw new ArgumentOutOfRangeException("type"); + + this.name = name; + this.type = type; + } + + internal Protocol(ref PROTOCOLDESCRIPTOR descriptor) + { + if (descriptor.Name == IntPtr.Zero) + throw new ArgumentException(); + + this.name = Translate.ToString(descriptor.Name, StringEncoding.Ansi); + this.type = (ProtocolType)descriptor.Type; + } + + ~Protocol() + { + if (namePtr.IsValid) + namePtr.Free(); + } + + #endregion + + #region Events + + private static MirandaEventHandler StatusChangedEventHandler; + public static event MirandaEventHandler StatusChanged + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + // Important to check to not hook the Ack for nothing + if (value == null) + throw new ArgumentNullException("value"); + + // First subscriber? + if (StatusChangedEventHandler == null) + AckRouter.AckReceived += AckRouter_AckReceived; + + LazyEventBinder.AttachDelegate>(ref StatusChangedEventHandler, value); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>(ref StatusChangedEventHandler, value); + + // No more subscribers? + if (StatusChangedEventHandler == null) + AckRouter.AckReceived -= AckRouter_AckReceived; + } + } + + private static bool AckRouter_AckReceived(object sender, AckEventArgs e) + { + if (e.Type == AckType.Status) + { + if (StatusChangedEventHandler != null) + StatusChangedEventHandler(e.Protocol, new ProtocolStatusChangeEventArgs(e.Protocol, (StatusMode)e.LParam)); + } + + return EventResult.HonourEventChain; + } + + #endregion + + #region Methods + + private void CheckUnknown() + { + if (String.IsNullOrEmpty(name)) + throw new InvalidOperationException(TextResources.ExceptionMsg_CallInvalidForUnknownNetworkProtocol); + } + + [CLSCompliant(false)] + public int CallProtocolService(string serviceName, UIntPtr wParam, IntPtr lParam) + { + if (serviceName == null) + throw new ArgumentNullException("serviceName"); + + CheckUnknown(); + return MirandaContext.Current.CallService(GetProtoServiceName(serviceName), wParam, lParam); + } + + public string GetProtoServiceName(string service) + { + if (service == null) + throw new ArgumentNullException("service"); + + return String.Format("{0}{1}", Name, service); + } + + public bool HasInChain(ContactInfo contact) + { + if (contact == null) + throw new ArgumentNullException("contact"); + + return HasInChain(contact.MirandaHandle); + } + + public bool HasInChain(IntPtr contactHandle) + { + return Convert.ToBoolean(Context.CallService(MS_PROTO_ISPROTOONCONTACT, contactHandle, NamePtr)); + } + + #endregion + + #region Properties + + public static Protocol UnknownProtocol + { + get { return Protocol.unknownProtocol; } + } + + public StatusMode Status + { + get + { + return (StatusMode)CallProtocolService(PS_GETSTATUS, UIntPtr.Zero, IntPtr.Zero); + } + set + { + CallProtocolService(PS_SETSTATUS, (UIntPtr)value, IntPtr.Zero); + } + } + + public string Name + { + get { return name; } + } + + public ProtocolType Type + { + get { return type; } + } + + public bool IsUnknown + { + get + { + return object.ReferenceEquals(this, UnknownProtocol); + } + } + + private UnmanagedStringHandle namePtr; + protected virtual IntPtr NamePtr + { + get + { + if (!namePtr.IsValid) + namePtr = Translate.ToHandle(Name, StringEncoding.Ansi); + + return namePtr.IntPtr; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/ProtocolStatus.cs b/Hyphen/Plugins/Infrastructure/ProtocolStatus.cs new file mode 100644 index 0000000..1092301 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ProtocolStatus.cs @@ -0,0 +1,74 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using System.Diagnostics; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public static class ProtocolStatus + { + #region Fields + + private const string MS_AWAYMSG_SHOWAWAYMSG = "SRAway/GetMessage", + MS_AWAYMSG_GETSTATUSMSG = "SRAway/GetStatusMessage"; + + #endregion + + #region Methods + + public static bool ShowAwayMessage(ContactInfo contact) + { + int result = MirandaContext.Current.CallService(MS_AWAYMSG_SHOWAWAYMSG, contact.MirandaHandle, IntPtr.Zero); + Debug.Assert(result == 0); + + return result == 0; + } + + public static string GetStatusMessage(StatusMode status) + { + if (!Enum.IsDefined(typeof(StatusMode), status)) + throw new ArgumentOutOfRangeException("status"); + + IntPtr statusPtr = IntPtr.Zero; + + try + { + statusPtr = (IntPtr)MirandaContext.Current.CallService(MS_AWAYMSG_GETSTATUSMSG, (UIntPtr)(ulong)status, IntPtr.Zero); + if (statusPtr == IntPtr.Zero) return null; + + return Translate.ToString(statusPtr, Virtuoso.Miranda.Plugins.Native.StringEncoding.Ansi); + } + catch (Exception e) + { + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_AWAYMSG_GETSTATUSMSG, 0), e); + } + finally + { + if (statusPtr != IntPtr.Zero) + Marshal.FreeHGlobal(statusPtr); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/ProtocolStatusChangeEventArgs.cs b/Hyphen/Plugins/Infrastructure/ProtocolStatusChangeEventArgs.cs new file mode 100644 index 0000000..022e256 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ProtocolStatusChangeEventArgs.cs @@ -0,0 +1,52 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public class ProtocolStatusChangeEventArgs : MirandaEventArgs + { + #region Properties + + private StatusMode newStatus; + public StatusMode NewStatus + { + get { return newStatus; } + } + + private Protocol protocol; + public Protocol Protocol + { + get { return protocol; } + } + + #endregion + + #region .ctors + + public ProtocolStatusChangeEventArgs(Protocol protocol, StatusMode newStatus) + { + this.newStatus = newStatus; + this.protocol = protocol; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/Protocols/AckBroadcaster.cs b/Hyphen/Plugins/Infrastructure/Protocols/AckBroadcaster.cs new file mode 100644 index 0000000..3d12eab --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/Protocols/AckBroadcaster.cs @@ -0,0 +1,90 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using System.Threading; +using System.Security; + +namespace Virtuoso.Miranda.Plugins.Infrastructure.Protocols +{ + [SuppressUnmanagedCodeSecurity] + public static class AckBroadcaster + { + #region Constants + + private const string MS_PROTO_BROADCASTACK = "Proto/BroadcastAck"; + + #endregion + + #region Helpers + + private static ACKDATA BuildAckData(IntPtr pModuleName, AckType type, bool success, IntPtr contactHandle, IntPtr processHandle, IntPtr lParam) + { + ACKDATA ack = new ACKDATA(pModuleName, (int)type, success ? (int)AckResult.Success : (int)AckResult.Failure); + ack.ContactHandle = contactHandle; + ack.ProcessHandle = processHandle; + ack.LParam = lParam; + + return ack; + } + + private static unsafe int BroadcastAck(ACKDATA* ack) + { + return MirandaContext.Current.CallServiceUnsafe(MS_PROTO_BROADCASTACK, null, ack); + } + + #endregion + + #region Methods + + public static int BroadcastAck(string moduleName, AckType type, bool success, IntPtr contactHandle, IntPtr processHandle, IntPtr lParam) + { + UnmanagedStringHandle pModuleName = UnmanagedStringHandle.Empty; + + try + { + pModuleName = new UnmanagedStringHandle(moduleName, StringEncoding.Ansi); + return BroadcastAck(pModuleName.IntPtr, type, success, contactHandle, processHandle, lParam); + } + finally + { + pModuleName.Free(); + } + } + + public static unsafe void BroadcastMessageAckAsync(IntPtr pModuleName, bool success, IntPtr contactHandle, int processCookie) + { + ACKDATA ack = BuildAckData(pModuleName, AckType.Message, success, contactHandle, (IntPtr)processCookie, IntPtr.Zero); + ThreadPool.QueueUserWorkItem(delegate(object ackObject) + { + ACKDATA _ack = (ACKDATA)ackObject; + BroadcastAck(&_ack); + }, ack); + } + + public static unsafe int BroadcastAck(IntPtr pModuleName, AckType type, bool success, IntPtr contactHandle, IntPtr processHandle, IntPtr lParam) + { + ACKDATA ack = BuildAckData(pModuleName, type, success, contactHandle, processHandle, lParam); + return BroadcastAck(&ack); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/Protocols/AckEnums.cs b/Hyphen/Plugins/Infrastructure/Protocols/AckEnums.cs new file mode 100644 index 0000000..06423bb --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/Protocols/AckEnums.cs @@ -0,0 +1,48 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure.Protocols +{ + public enum AckType : int + { + Message = 0, + Url = 1, + File = 2, + Chat = 3, + AwayMessage = 4, + AuthorizationRequest = 5, + Added = 6, + GetInfo = 7, + SetInfo = 8, + Login = 9, + Search = 10, + NewUser = 11, + Status = 12, + Contacts = 13, //send/recv of contacts + Avatar = 14, //send/recv of avatars from a protocol + } + + public enum AckResult : int + { + Success = 0, + Failure = 1, + } +} diff --git a/Hyphen/Plugins/Infrastructure/Protocols/AckEventArgs.cs b/Hyphen/Plugins/Infrastructure/Protocols/AckEventArgs.cs new file mode 100644 index 0000000..d78298f --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/Protocols/AckEventArgs.cs @@ -0,0 +1,93 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; + +namespace Virtuoso.Miranda.Plugins.Infrastructure.Protocols +{ + public sealed class AckEventArgs : MirandaEventArgs + { + #region Properties + + private Protocol protocol; + public Protocol Protocol + { + get { return protocol; } + } + + private ContactInfo contact; + public ContactInfo Contact + { + get { return contact; } + } + + private AckType type; + public AckType Type + { + get { return type; } + } + + private AckResult result; + public AckResult Result + { + get { return result; } + } + + private IntPtr processHandle; + public IntPtr ProcessHandle + { + get { return processHandle; } + } + + private IntPtr lParam; + public IntPtr LParam + { + get { return lParam; } + } + + #endregion + + #region .ctors + + public AckEventArgs() { } + + internal unsafe static AckEventArgs FromACKDATA(IntPtr pAckData) + { + if (pAckData == IntPtr.Zero) + throw new ArgumentNullException("pAckData"); + + ACKDATA ackData = *(ACKDATA*)pAckData.ToPointer(); + AckEventArgs ackArgs = new AckEventArgs(); + + ackArgs.contact = ContactInfo.FromHandle(ackData.ContactHandle); + ackArgs.lParam = ackData.LParam; + ackArgs.processHandle = ackData.ProcessHandle; + ackArgs.result = (AckResult)ackData.Result; + ackArgs.type = (AckType)ackData.Type; + + if (ackData.ModuleName != IntPtr.Zero) + ackArgs.protocol = MirandaContext.Current.Protocols[Translate.ToString(ackData.ModuleName, StringEncoding.Ansi)]; + + return ackArgs; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/Protocols/AckRouter.cs b/Hyphen/Plugins/Infrastructure/Protocols/AckRouter.cs new file mode 100644 index 0000000..283e3a6 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/Protocols/AckRouter.cs @@ -0,0 +1,125 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.CompilerServices; + +namespace Virtuoso.Miranda.Plugins.Infrastructure.Protocols +{ + public static class AckRouter + { + #region Constants + + /// + /// Call the next service in the chain for this send operation. + /// wParam=wParam + /// lParam=lParam + /// The return value should be returned immediately + /// wParam and lParam should be passed as the parameters that your service was + /// called with. wParam must remain untouched but lParam is a CCSDATA structure + /// that can be copied and modified if needed. + /// Typically, the last line of any chaining protocol function is + /// return CallService(MS_PROTO_CHAINSEND,wParam,lParam); + /// + private const string MS_PROTO_CHAINSEND = "Proto/ChainSend"; + + /// + /// Call the next service in the chain for this receive operation + /// wParam=wParam + /// lParam=lParam + /// The return value should be returned immediately + /// wParam and lParam should be passed as the parameters that your service was + /// called with. wParam must remain untouched but lParam is a CCSDATA structure + /// that can be copied and modified if needed. + /// When being initiated by the network-access protocol module, wParam should be + /// zero. + /// Thread safety: ms_proto_chainrecv is completely thread safe since 0.1.2.0 + /// Calls to it are translated to the main thread and passed on from there. The + /// function will not return until all callees have returned, irrepective of + /// differences between threads the functions are in. + /// + private const string MS_PROTO_CHAINRECV = "Proto/ChainRecv"; + + #endregion + + #region Fields + + private const string ME_PROTO_ACK = "Proto/Ack"; + private static MirandaEventHandler AckReceivedEventHandler; + + #endregion + + #region Events + + public static event MirandaEventHandler AckReceived + { + [MethodImpl(MethodImplOptions.Synchronized)] + add + { + LazyEventBinder.AttachDelegate>(ref AckReceivedEventHandler, value); + LazyEventBinder.HookMirandaEvent(ME_PROTO_ACK, + delegate(UIntPtr wParam, IntPtr lParam) + { + AckEventArgs e = AckEventArgs.FromACKDATA(lParam); + + EventPublisher.InvokeChainCancelable(AckReceivedEventHandler, null, e); + return (int)CallbackResult.Success; + }); + } + [MethodImpl(MethodImplOptions.Synchronized)] + remove + { + LazyEventBinder.DetachDelegate>(ref AckReceivedEventHandler, value); + LazyEventBinder.UnhookMirandaEvent(ME_PROTO_ACK, AckReceivedEventHandler); + } + } + + #endregion + + #region Methods + + public static int ChainSend(ContactChainData chainData) + { + if (chainData == null) + throw new ArgumentNullException("chainData"); + + return ChainSend(chainData.WParam, chainData.CcsDataPtr); + } + + public static int ChainSend(UIntPtr wParam, IntPtr lParam) + { + return MirandaContext.Current.CallService(MS_PROTO_CHAINSEND, wParam, lParam); + } + + public static int ChainReceive(ContactChainData chainData) + { + if (chainData == null) + throw new ArgumentNullException("chainData"); + + return ChainReceive(chainData.WParam, chainData.CcsDataPtr); + } + + public static int ChainReceive(UIntPtr wParam, IntPtr lParam) + { + return MirandaContext.Current.CallService(MS_PROTO_CHAINRECV, wParam, lParam); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/Protocols/ContactChainData.cs b/Hyphen/Plugins/Infrastructure/Protocols/ContactChainData.cs new file mode 100644 index 0000000..c3dde1c --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/Protocols/ContactChainData.cs @@ -0,0 +1,89 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; + +namespace Virtuoso.Miranda.Plugins.Infrastructure.Protocols +{ + public sealed class ContactChainData + { + #region .ctors + + internal unsafe ContactChainData(IntPtr pCcsData) + { + if (pCcsData == IntPtr.Zero) + throw new ArgumentNullException("pCssData"); + + this.ccsDataPtr = pCcsData; + + CCSDATA ccsData = *(CCSDATA*)pCcsData.ToPointer(); + this.contactInfo = ContactInfo.FromHandle(ccsData.ContactHandle); + this.wParam = ccsData.WParam; + this.lParam = ccsData.LParam; + this.serviceName = Translate.ToString(ccsData.ServiceNamePtr, StringEncoding.Ansi); + } + + #endregion + + #region Properties + + private ContactInfo contactInfo; + public ContactInfo ContactInfo + { + get { return contactInfo; } + } + + private string serviceName; + public string ServiceName + { + get { return serviceName; } + } + + private UIntPtr wParam; + [CLSCompliant(false)] + public UIntPtr WParam + { + get { return wParam; } + } + + private IntPtr lParam; + public IntPtr LParam + { + get { return lParam; } + } + + private IntPtr ccsDataPtr; + internal IntPtr CcsDataPtr + { + get { return ccsDataPtr; } + } + + #endregion + + #region Methods + + public string GetLParamAsString(StringEncoding encoding) + { + return Translate.ToString(LParam, encoding); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/Protocols/ManagedProtocol.cs b/Hyphen/Plugins/Infrastructure/Protocols/ManagedProtocol.cs new file mode 100644 index 0000000..0f44aa6 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/Protocols/ManagedProtocol.cs @@ -0,0 +1,107 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Resources; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Helpers; + +namespace Virtuoso.Miranda.Plugins.Infrastructure.Protocols +{ + public sealed class ManagedProtocol : Protocol + { + #region Constants + + private const string MS_PROTO_ADDTOCONTACT = "Proto/AddToContact"; + + private bool Registered; + + #endregion + + #region .ctors + + internal ManagedProtocol(string name, ProtocolType type) : base(name, type) { } + + #endregion + + #region Properties + + private PROTOCOLDESCRIPTOR nativeDescriptor; + public PROTOCOLDESCRIPTOR NativeDescriptor + { + get { return nativeDescriptor; } + } + + #endregion + + #region Methods + + internal void Register() + { + if (Registered) + throw new InvalidOperationException(); + + PROTOCOLDESCRIPTOR descriptor = new PROTOCOLDESCRIPTOR(Name, Type); + UnmanagedStructHandle nativeHandle = UnmanagedStructHandle.Empty; + + try + { + nativeHandle = new UnmanagedStructHandle(ref descriptor); + int result = Context.CallService(MirandaServices.MS_PROTO_REGISTERMODULE, UIntPtr.Zero, nativeHandle.IntPtr); + + if (result != 0) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, result.ToString())); + + this.nativeDescriptor = descriptor; + Registered = true; + } + finally + { + nativeHandle.Free(); + } + } + + internal void Unregister() + { + if (!Registered) + throw new InvalidOperationException(); + + // Currently, nothing else to do + } + + public void AddToContact(ContactInfo contact) + { + if (contact == null) + throw new ArgumentNullException("contact"); + + AddToContact(contact.MirandaHandle); + } + + public void AddToContact(IntPtr contactHandle) + { + int result = Context.CallService(MS_PROTO_ADDTOCONTACT, contactHandle, NativeDescriptor.Name); + + if (result != 0) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_PROTO_ADDTOCONTACT, result.ToString())); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/PublicEnums.cs b/Hyphen/Plugins/Infrastructure/PublicEnums.cs new file mode 100644 index 0000000..1a6f060 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/PublicEnums.cs @@ -0,0 +1,322 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public enum DatabaseSettingType : byte + { + Deleted = 0, //this setting just got deleted, no other values are valid + Byte = 1, //bVal and cVal are valid + UInt16 = 2, //wVal and sVal are valid + UInt32 = 4, //dVal and lVal are valid + AsciiString = 255, //pszVal is valid + Blob = 254, //cpbVal and pbVal are valid + UTF8String = 253, //pszVal is valid + UnicodeString = 252, //pszVal is valid + } + + public enum ProtocolType : int + { + Ignore = 50, // added during v0.3.3 + Protocol = 1000, + Encryption = 2000, + Filter = 3000, + Translation = 4000, + Other = 10000 //avoid using this if at all possible + } + + internal enum ProtocolFlagsKind : int + { + /// + /// The network capabilities that the protocol supports. + /// + Capabilities = 1, + + /// + /// The status modes that the protocol supports. + /// + StatusModes = 2, + + /// + /// The status modes that the protocol supports away-style messages for. Uses the flags. + /// + AwayStatusModes = 3 + } + + [Flags, CLSCompliant(false)] + public enum ProtocolCapabilities : uint + { + /// + /// None. + /// + None = 0, + + /// + /// Supports IM sending. + /// + IMSend = 0x00000001, + /// + /// Supports IM receiving. + /// + IMReceive = 0x00000002, + IM = (IMSend | IMReceive), + /// + /// Aupports separate URL sending. + /// + UrlSend = 0x00000004, + /// + /// Supports separate URL receiving. + /// + UrlReceive = 0x00000008, + Url = (UrlSend | UrlReceive), + /// + /// Supports file sending. + /// + FileSend = 0x00000010, + /// + /// Supports file receiving. + /// + FileReceive = 0x00000020, + File = (FileSend | FileReceive), + /// + /// Supports broadcasting away messages. + /// + ModeMessageSend = 0x00000040, + /// + /// Supports reading others' away messages. + /// + ModeMessageReceive = 0x00000080, + ModeMessage = (ModeMessageSend | ModeMessageReceive), + /// + /// Contact lists are stored on the server, not locally. See notes below. + /// + ServerContactList = 0x00000100, + /// + /// Will get authorisation requests for some or all contacts. + /// + AuthorizationRequired = 0x00000200, + /// + /// Will get 'you were added' notifications. + /// + Added = 0x00000400, + /// + /// Has an invisible list. + /// + VisibleList = 0x00000800, + /// + /// Has a visible list for when in invisible mode. + /// + InvisibleList = 0x00001000, + /// + /// Supports setting different status modes to each contact. + /// + IndividualStatus = 0x00002000, + /// + /// the protocol is extensible and Supports plugin-defined messages. + /// + Extensible = 0x00004000, + /// + /// Supports direct (not server mediated) communication between clients. + /// + P2P = 0x00008000, + /// + /// Supports creation of new user IDs. + /// + NewUser = 0x00010000, + /// + /// Has a realtime chat capability. + /// + Chat = 0x00020000, + /// + /// Supports replying to a mode message request with different text depending on the contact requesting. + /// + IndividualModeMessage = 0x00040000, + /// + /// Supports a basic user searching facility. + /// + BasicSearch = 0x00080000, + /// + /// Supports one or more protocol-specific extended search schemes. + /// + ExtendedSearch = 0x00100000, + /// + /// Supports renaming of incoming files as they are transferred. + /// + CanRenameFile = 0x00200000, + /// + /// Can resume broken file transfers. + /// + FileResume = 0x00400000, + /// + /// Can add search results to the contact list. + /// + AddSearches = 0x00800000, + /// + /// Can send contacts to other users. + /// + ContactSend = 0x01000000, + /// + /// Can receive contacts from other users. + /// + ContactReceive = 0x02000000, + Contact = (ContactSend | ContactReceive), + /// + /// Can change our user information stored on server. + /// + ChangeInfo = 0x04000000, + /// + /// Supports a search by e-mail feature. + /// + SearchByEmail = 0x08000000, + /// + /// Set if the uniquely identifying field of the network is the e-mail address. + /// + UserIDIsEmail = 0x10000000, + /// + /// Supports searching by nick/first/last names. + /// + SearchByName = 0x20000000, + /// + /// Has a dialog box to allow searching all the possible fields. + /// + ExtendedSearchUI = 0x40000000, + /// + /// The unique user IDs for this protocol are numeric. + /// + NumericUserID = 0x80000000, + } + + [Flags] + public enum ProtocolStatusModes : int + { + Online = 0x00000001, //an unadorned online mode + Invisible = 0x00000002, + ShortAway = 0x00000004, //Away on ICQ, BRB on MSN + LongAway = 0x00000008, //NA on ICQ, Away on MSN + LightDND = 0x00000010, //Occupied on ICQ, Busy on MSN + HeavyDND = 0x00000020, //DND on ICQ + FreeForChat = 0x00000040, + OutToLunch = 0x00000080, + OnThePhone = 0x00000100, + Idle = 0x00000200 //added during 0.3.4 (2004/09/13) + } + + public enum DatabaseEventType : short + { + Message = 0, + Url = 1, + Contacts = 2, //v0.1.2.2+ + Added = 1000, //v0.1.1.0+: these used to be module- + AuthorizationRequest = 1001, //specific codes, hence the module- + File = 1002, //specific limit has been raised to 2000 + } + + [Flags] + public enum DatabaseEventProperties : int + { + None = 0, + + First = 1, //this is the first event in the chain; + //internal only: *do not* use this flag + Sent = 2, //this event was sent by the user. If not set this + //event was received. + Read = 4, //event has been read by the user. It does not need + //to be processed any more except for history. + + Rtl = 8, //event contains the right-to-left aligned text + Utf8 = 16 //event contains a text in utf-8 + } + + [Flags] + public enum MenuItemProperties : int + { + KeepCurrent = -1, + None = 0, + Grayed = 1, + Checked = 2, + Hidden = 4, + OnlineOnly = 8, + OfflineOnly = 16, + NotOnListOnly = 32, + NonNotOnListOnly = 64 + } + + [Flags] + public enum HotKeys : int + { + Alt = 0x0001, + Ctrl = 0x0002, + Shift = 0x0004, + WinKey = 0x0008 + } + + public enum ContactInfoPropertyType : int + { + Unknown = 0, + Byte = 1, + UInt16 = 2, + UInt32 = 3, + String = 4 + } + + public static class CallbackResult + { + public const int Success = 0; + public const int Failure = -1; + } + + public static class EventResult + { + public const bool HonourEventChain = false; + public const bool BreakEventChain = true; + } + + [Flags] + public enum ContactListEventProperties : int + { + None = 0, + + /// + /// Flashes the icon even if the user is occupied, and puts the event at the top of the queue. + /// + Urgent = 1, + + /// + /// The icon will not flash for ever, only a few times. This is for eg online alert. + /// + Minor = 2, + + // #define CLEF_URGENT 1 //flashes the icon even if the user is occupied, + // //and puts the event at the top of the queue + //#define CLEF_ONLYAFEW 2 //the icon will not flash for ever, only a few + // //times. This is for eg online alert + //#define CLEF_UNICODE 4 //set pszTooltip as unicode + + //#define CLEF_PROTOCOLGLOBAL 8 //set event globally for protocol, hContact has to be NULL, + // //lpszProtocol the protocol ID name to be set + + //#if defined( _UNICODE ) + // #define CLEF_TCHAR CLEF_UNICODE //will use TCHAR* instead of char* + //#else + // #define CLEF_TCHAR 0 //will return char*, as usual + //#endif + } +} diff --git a/Hyphen/Plugins/Infrastructure/RemoteObject.cs b/Hyphen/Plugins/Infrastructure/RemoteObject.cs new file mode 100644 index 0000000..5797036 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/RemoteObject.cs @@ -0,0 +1,33 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public abstract class RemoteObject : MarshalByRefObject + { + protected RemoteObject() { } + + public override object InitializeLifetimeService() + { + return null; + } + } +} diff --git a/Hyphen/Plugins/Infrastructure/RuntimeCaches.cs b/Hyphen/Plugins/Infrastructure/RuntimeCaches.cs new file mode 100644 index 0000000..77891b5 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/RuntimeCaches.cs @@ -0,0 +1,54 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + internal static class RuntimeCaches + { + #region Fields + + private static readonly Dictionary Caches = new Dictionary(1); + + #endregion + + #region Getters + + public static IDictionary GetCache(string cacheName) + { + return GetCache(cacheName) as IDictionary; + } + + public static object GetCache(string name) + { + if (Caches.ContainsKey(name)) + throw new ArgumentException("Cache not found.", "name"); + + return Caches[name]; + } + + public static bool CacheRegistered(string name) + { + return Caches.ContainsKey(name); + } + + #endregion + + #region Setters + + public static void RegisterCache(string name, object cache) + { + if (Caches.ContainsKey(name)) + throw new ArgumentException("Cache already registered.", "name"); + + Caches[name] = cache; + } + + public static bool UnregisterCache(string name) + { + return Caches.Remove(name); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/RuntimeEnvironment.cs b/Hyphen/Plugins/Infrastructure/RuntimeEnvironment.cs new file mode 100644 index 0000000..ee45be9 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/RuntimeEnvironment.cs @@ -0,0 +1,85 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Hyphen; +using System.Threading; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + /// + /// Provides information about current state of Hyphen runtime. + /// This class can be used only from the context of standalone modules (i.e. from the default AppDomain only). + /// + public static class RuntimeEnvironment + { + #region Fields + + private static volatile bool Initialized; + + #endregion + + #region Methods + + /// + /// Marks the class initialized. + /// + internal static void Initialize() + { + Initialized = true; + } + + /// + /// Verifies whether the class was initialized (from the default AppDomain). + /// + /// Class not initialized (i.e. called from other than default AppDomain). + private static void VerifyInitialized() + { + if (!Initialized) + throw new NotSupportedException(); + } + + #endregion + + #region Properties + + private static bool hyphenIsLoading; + + /// + /// Gets an indication whether the Hyphen runtime is currently loading. + /// + /// Class not initialized (i.e. called from other than default AppDomain). + public static bool HyphenIsLoading + { + get { VerifyInitialized(); return hyphenIsLoading; } + internal set { hyphenIsLoading = value; } + } + + /// + /// Gets an indication whether the Isolated plugins are loaded. + /// + /// Class not initialized (i.e. called from other than default AppDomain). + public static bool IsolatedModePluginsLoaded + { + get { VerifyInitialized(); return Loader.GetInstance().PluginsLoaded; } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/ServiceCallInterceptionManager.cs b/Hyphen/Plugins/Infrastructure/ServiceCallInterceptionManager.cs new file mode 100644 index 0000000..93203d0 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ServiceCallInterceptionManager.cs @@ -0,0 +1,82 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.Serialization; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public sealed class ServiceCallInterceptionManager + { + #region Fields + + private readonly Dictionary Interceptors; + + #endregion + + #region .ctors + + public ServiceCallInterceptionManager() + { + this.Interceptors = new Dictionary(2); + } + + #endregion + + #region Methods + + public bool RequiresInterception(string serviceName) + { + lock (Interceptors) + return Interceptors.ContainsKey(serviceName); + } + + public Callback this[string serviceName] + { + get + { + lock (Interceptors) + { + Callback interceptor = null; + Interceptors.TryGetValue(serviceName, out interceptor); + + return interceptor; + } + } + set + { + Register(serviceName, value); + } + } + + public void Register(string serviceName, Callback interceptor) + { + lock (Interceptors) + Interceptors[serviceName] = interceptor; + } + + public void Unregister(string serviceName) + { + lock (Interceptors) + Interceptors.Remove(serviceName); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/ServiceFunctionAttribute.cs b/Hyphen/Plugins/Infrastructure/ServiceFunctionAttribute.cs new file mode 100644 index 0000000..79a68cc --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ServiceFunctionAttribute.cs @@ -0,0 +1,66 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [AttributeUsage(AttributeTargets.Method, AllowMultiple = true, Inherited = true)] + public sealed class ServiceFunctionAttribute : HookAttribute + { + #region Fields + + private string serviceName; + public string ServiceName + { + get + { + return this.serviceName; + } + set + { + this.serviceName = value; + } + } + + internal override string HookName + { + get { return ServiceName; } + } + + internal override HookType HookType + { + get { return HookType.ServiceFunction; } + } + + #endregion + + #region .ctors + + public ServiceFunctionAttribute(string serviceName) + { + if (serviceName == null) + throw new ArgumentNullException("serviceName"); + + this.serviceName = serviceName; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/ServiceManager.cs b/Hyphen/Plugins/Infrastructure/ServiceManager.cs new file mode 100644 index 0000000..221ac91 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/ServiceManager.cs @@ -0,0 +1,101 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Collections; +using Virtuoso.Miranda.Plugins.Resources; +using System.Diagnostics; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public static class ServiceManager + { + [CLSCompliant(false)] + public static void CreateServiceFunction(string serviceName, Callback callback, MirandaPlugin owner) + { + if (String.IsNullOrEmpty(serviceName)) + throw new ArgumentNullException("serviceName"); + + if (callback == null) + throw new ArgumentNullException("callback"); + + if (owner == null) + throw new ArgumentNullException("owner"); + + if (!owner.Initialized) + throw new InvalidOperationException(TextResources.ExceptionMsg_PluginNotInitialized); + + HookDescriptorCollection collection = owner.Descriptor.ServiceFunctions; + + try + { + SynchronizationHelper.BeginPluginUpdate(owner); + SynchronizationHelper.BeginCollectionUpdate(collection); + + HookDescriptor descriptor = HookDescriptor.SetUpAndStore(collection, serviceName, owner.Descriptor, callback, HookType.ServiceFunction); + descriptor.RegisteredManually = true; + + HookManager.CreateHook(descriptor); + } + finally + { + SynchronizationHelper.EndUpdate(owner); + SynchronizationHelper.EndUpdate(collection); + } + } + + public static bool ServiceExists(string name) + { + return MirandaContext.Current.PluginLink.NativePluginLink.ServiceExists(name) != 0; + } + + [CLSCompliant(false)] + public static Callback GetService(string serviceName) + { + return CallbackWrapper.Create(serviceName); + } + + public static void RemoveServiceFunction(MirandaPlugin owner, string eventName) + { + if (owner == null) + throw new ArgumentNullException("owner"); + + if (String.IsNullOrEmpty(eventName)) + throw new ArgumentNullException("eventName"); + + HookDescriptorCollection collection = owner.Descriptor.ServiceFunctions; + + try + { + SynchronizationHelper.BeginCollectionUpdate(collection); + HookDescriptor descriptor = null; + + if ((descriptor = collection.Find(eventName)) == null) + return; + + HookManager.DestroyHook(descriptor); + collection.Remove(descriptor); + } + finally + { + SynchronizationHelper.EndUpdate(collection); + } + } + } +} diff --git a/Hyphen/Plugins/Infrastructure/Skin.cs b/Hyphen/Plugins/Infrastructure/Skin.cs new file mode 100644 index 0000000..e5a0d7a --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/Skin.cs @@ -0,0 +1,81 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + /// + /// Manages Miranda skin entities, for example icons and sounds. + /// + /// m_skin.h + public static class Skin + { + #region Constants + + private const string MS_SKIN_LOADICON = "Skin/Icons/Load", + MS_SKIN_LOADPROTOICON = "Skin/Icons/LoadProto"; + + #endregion + + #region Icons + + public static class Icons + { + public const int Message = 100; + } + + #endregion + + #region Methods + + public static IntPtr LoadIcon(int id) + { + return (IntPtr)MirandaContext.Current.CallService(MS_SKIN_LOADICON, (UIntPtr)(uint)id, IntPtr.Zero); + } + + public static IntPtr LoadProtocolIcon(StatusMode status) + { + return LoadProtocolIcon((string)null, status); + } + + public static IntPtr LoadProtocolIcon(Protocol protocol, StatusMode status) + { + return LoadProtocolIcon((protocol != null ? protocol.Name : null), status); + } + + public static IntPtr LoadProtocolIcon(string protocolName, StatusMode status) + { + UnmanagedStringHandle protoNamePtr = UnmanagedStringHandle.Empty; + + try + { + protoNamePtr = new UnmanagedStringHandle(protocolName, StringEncoding.Ansi); + return (IntPtr)MirandaContext.Current.CallService(MS_SKIN_LOADPROTOICON, protoNamePtr.IntPtr, (IntPtr)status); + } + finally + { + protoNamePtr.Free(); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/StatusMode.cs b/Hyphen/Plugins/Infrastructure/StatusMode.cs new file mode 100644 index 0000000..3ba1884 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/StatusMode.cs @@ -0,0 +1,46 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Helpers; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + public enum StatusMode : int + { + Offline = 40071, + Online = 40072, + Away = 40073, + DND = 40074, + NA = 40075, + Occupied = 40076, + + [EnumValueFriendlyName("Free for chat")] + FreeForChat = 40077, + Invisible = 40078, + + [EnumValueFriendlyName("On the phone")] + OnThePhone = 40079, + + [EnumValueFriendlyName("Out to lunch")] + OutToLunch = 40080, + + Idle = 40081 /* do not use as a status */ + } +} diff --git a/Hyphen/Plugins/Infrastructure/StringResolverCache.cs b/Hyphen/Plugins/Infrastructure/StringResolverCache.cs new file mode 100644 index 0000000..8b922b3 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/StringResolverCache.cs @@ -0,0 +1,51 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Helpers; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + internal sealed class StringResolverCache : TypeInstanceCache + { + #region Fields + + private static StringResolverCache singleton; + + #endregion + + #region .ctors + + private StringResolverCache() { } + + #endregion + + #region Properties + + public static StringResolverCache Singleton + { + get + { + return singleton ?? (singleton = new StringResolverCache()); + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Infrastructure/Translate.cs b/Hyphen/Plugins/Infrastructure/Translate.cs new file mode 100644 index 0000000..0b0a2a2 --- /dev/null +++ b/Hyphen/Plugins/Infrastructure/Translate.cs @@ -0,0 +1,199 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Resources; +using System.Runtime.InteropServices; +using System.Diagnostics; +using Virtuoso.Miranda.Plugins.Native; + +namespace Virtuoso.Miranda.Plugins.Infrastructure +{ + [CLSCompliant(false)] + public static class Translate + { + #region Fields + + private static readonly Type StatusEnumType = typeof(StatusMode); + + #endregion + + #region ToStatus + + public static StatusMode ToStatus(UIntPtr wParam) + { + if (!Enum.IsDefined(StatusEnumType, (int)wParam.ToUInt32())) + throw new ArgumentException("wParam", TextResources.ExceptionMsg_InvalidValueToTranslate); + + return (StatusMode)(wParam); + } + + #endregion + + #region ToString + + public static string ToString(IntPtr lParam, StringEncoding marshalAs) + { + return ToString(lParam, 0, marshalAs, false); + } + + public static string ToString(IntPtr lParam, StringEncoding marshalAs, bool transformExceptionsToNull) + { + return ToString(lParam, 0, marshalAs, transformExceptionsToNull); + } + + public static string ToString(IntPtr lParam, int length, StringEncoding marshalAs) + { + return ToString(lParam, length, marshalAs, false); + } + + public static string ToString(IntPtr lParam, int length, StringEncoding marshalAs, bool tranformExceptionsToNull) + { + if (lParam == IntPtr.Zero) + throw new ArgumentNullException("lParam"); + + if (length < 0) + throw new ArgumentOutOfRangeException("length"); + + if (marshalAs != StringEncoding.MirandaDefault && marshalAs != StringEncoding.Ansi && marshalAs != StringEncoding.Unicode) + throw new ArgumentOutOfRangeException("marshalAs"); + + try + { + reEval: + switch (marshalAs) + { + case StringEncoding.MirandaDefault: + marshalAs = MirandaEnvironment.MirandaStringEncoding; + if (marshalAs == StringEncoding.MirandaDefault) throw new ArgumentException(TextResources.ExceptionMsg_CannotDetectMirandaDefaultStringEncoding); + goto reEval; + case StringEncoding.Ansi: + if (length > 0) + return Marshal.PtrToStringAnsi(lParam, length); + else + return Marshal.PtrToStringAnsi(lParam); + case StringEncoding.Unicode: + if (length > 0) + return Marshal.PtrToStringUni(lParam, length); + else + return Marshal.PtrToStringUni(lParam); + default: + return null; + } + } + catch (Exception e) + { + if (!tranformExceptionsToNull) + throw new ArgumentException("lParam", TextResources.ExceptionMsg_InvalidValueToTranslate + e.Message, e); + else + return null; + } + } + + #endregion + + #region ToHandle + + public static IntPtr ToHandle(UIntPtr wParam) + { + return new IntPtr((long)wParam.ToUInt64()); + } + + public static UIntPtr ToHandle(IntPtr lParam) + { + return new UIntPtr((ulong)lParam.ToInt64()); + } + + public static UnmanagedStringHandle ToHandle(string str, StringEncoding encoding) + { + return new UnmanagedStringHandle(str, encoding); + } + + #endregion + + #region To/From Miranda HyphenVersion Format + + [CLSCompliant(false)] + public static uint ToMirandaVersion(Version version) + { + if (version == null) + throw new ArgumentNullException("version"); + + return (((((uint)(version.Major)) & 0xFF) << 24) | ((((uint)(version.Minor)) & 0xFF) << 16) | ((((uint)(version.Build)) & 0xFF) << 8) | (((uint)(version.MinorRevision)) & 0xFF)); + } + + [CLSCompliant(false)] + public static Version FromMirandaVersion(uint version) + { + return new Version((int)((version >> 24) & 0xff), (int)((version >> 16) & 0xff), (int)((version >> 8) & 0xff), (int)(version & 0xff)); + } + + #endregion + + #region Misc. + + public static byte[] ToBlob(IntPtr blobPtr, int size) + { + if (blobPtr == IntPtr.Zero) + throw new ArgumentNullException("blobPtr"); + + if (size < 0) + throw new ArgumentOutOfRangeException("size"); + + byte[] blob = new byte[size]; + Marshal.Copy(blobPtr, blob, 0, size); + + return blob; + } + + #endregion + + #region Internal helpers + + internal static object ValueFromVariant(ref DBVARIANT dbVariant) + { + switch ((DbVariantValue)dbVariant.Type) + { + case DbVariantValue.DBVT_ASCIIZ: + return Translate.ToString(dbVariant.Text.TextPtr, dbVariant.Text.TextBufferSize, StringEncoding.Ansi); + case DbVariantValue.DBVT_UTF8: + return Translate.ToString(dbVariant.Text.TextPtr, dbVariant.Text.TextBufferSize, StringEncoding.Unicode); + case DbVariantValue.DBVT_BLOB: + return ToBlob(dbVariant.Blob.BlobPtr, dbVariant.Blob.Size); + case DbVariantValue.DBVT_BYTE: + return dbVariant.Primitives.Byte; + case DbVariantValue.DBVT_DELETED: + return null; + case DbVariantValue.DBVT_DWORD: + return dbVariant.Primitives.DWord; + case DbVariantValue.DBVT_WORD: + return dbVariant.Primitives.Word; + case DbVariantValue.DBVT_WCHAR: + return Marshal.PtrToStringBSTR(dbVariant.Text.TextPtr); + case DbVariantValue.DBVTF_VARIABLELENGTH: + throw new NotSupportedException(); + default: + return null; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/LoaderOptionsAttribute.cs b/Hyphen/Plugins/LoaderOptionsAttribute.cs new file mode 100644 index 0000000..f9ce73b --- /dev/null +++ b/Hyphen/Plugins/LoaderOptionsAttribute.cs @@ -0,0 +1,160 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Hyphen; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins +{ + [Flags] + public enum LoaderOptions : int + { + None = 0, + HasCustomApiExports = 2, + CannotBeUnloaded = 4, + } + + internal enum LoaderOptionsOwner + { + Type, + Assembly + } + + [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class, AllowMultiple = true, Inherited = true)] + public sealed class LoaderOptionsAttribute : Attribute + { + #region Fields + + private LoaderOptions options; + public LoaderOptions Options + { + get { return options; } + set { options = value; } + } + + private Version requiredVersion; + public Version RequiredVersion + { + get { return requiredVersion; } + } + + private Version minimalMirandaVersion; + public Version MinimalMirandaVersion + { + get { return minimalMirandaVersion; } + } + + #endregion + + #region .ctors + + public LoaderOptionsAttribute(LoaderOptions options) + : this(null, null, options) { } + + public LoaderOptionsAttribute(string requiredVersion) + : this(requiredVersion, null, LoaderOptions.None) { } + + public LoaderOptionsAttribute(string requiredVersion, LoaderOptions options) + : this(requiredVersion, null, options) { } + + public LoaderOptionsAttribute(string requiredVersion, string minimalMirandaVersion) + : this(requiredVersion, minimalMirandaVersion, LoaderOptions.None) { } + + public LoaderOptionsAttribute(string requiredVersion, string minimalMirandaVersion, LoaderOptions options) + { + if (!String.IsNullOrEmpty(requiredVersion)) + this.requiredVersion = new Version(requiredVersion); + + if (!String.IsNullOrEmpty(minimalMirandaVersion)) + this.minimalMirandaVersion = new Version(minimalMirandaVersion); + + this.options = options; + } + + #endregion + + #region Methods + + internal bool SupportsMirandaVersion(uint mirandaVersion) + { + return SupportsMirandaVersion(Translate.FromMirandaVersion(mirandaVersion)); + } + + internal bool SupportsMirandaVersion(Version mirandaVersion) + { + // If the plugin has a min supported Miranda info.. + if (MinimalMirandaVersion != null) + { + if (mirandaVersion < MinimalMirandaVersion) + return false; + } + // If not, use Hyphen's... + else if (!Loader.SupportsMirandaVersion(mirandaVersion)) + return false; + + return true; + } + + internal static LoaderOptionsAttribute Get(Type pluginType, LoaderOptionsOwner target) + { + if (pluginType == null) + throw new ArgumentNullException("pluginType"); + + Type thisType = typeof(LoaderOptionsAttribute); + LoaderOptionsAttribute result = null; + + switch (target) + { + case LoaderOptionsOwner.Type: + foreach (LoaderOptionsAttribute attrib in pluginType.GetCustomAttributes(thisType, true)) + { + if (result == null) + result = attrib; + else + { + if (result.requiredVersion == null) + result.requiredVersion = attrib.requiredVersion; + else if (attrib.RequiredVersion != null) + throw new NotSupportedException(TextResources.ExceptionMsg_DuplicitLoaderOptions); + + if (result.minimalMirandaVersion == null) + result.minimalMirandaVersion = attrib.minimalMirandaVersion; + else if (attrib.MinimalMirandaVersion != null) + throw new NotSupportedException(TextResources.ExceptionMsg_DuplicitLoaderOptions); + } + + result.options |= attrib.options; + } + break; + case LoaderOptionsOwner.Assembly: + if (pluginType.Assembly.IsDefined(thisType, false)) + result = (LoaderOptionsAttribute)pluginType.Assembly.GetCustomAttributes(thisType, false)[0]; + break; + default: + throw new ArgumentOutOfRangeException("target"); + } + + return result ?? new LoaderOptionsAttribute(LoaderOptions.None); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Log.cs b/Hyphen/Plugins/Log.cs new file mode 100644 index 0000000..e8e3d85 --- /dev/null +++ b/Hyphen/Plugins/Log.cs @@ -0,0 +1,57 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.IO; +using System.Diagnostics; +using System.Windows.Forms; + +namespace Virtuoso.Miranda.Plugins +{ + internal static class Log + { + #region Properties + + private static TraceSwitch traceSwitch; + public static TraceSwitch TraceSwitch + { + get { return traceSwitch; } + } + + #endregion + + #region .ctors + + static Log() + { + traceSwitch = new TraceSwitch("HyphenTracing", "Hyphen Tracing", "Warning"); + } + + #endregion + + [Conditional("DEBUG")] + public static void DebuggerWrite(int priority, string source, string message) + { + Debugger.Log(priority, source, message); + } + + public static void Warning(string message, string category, params string[] formatArgs) + { + Trace.WriteLineIf(TraceSwitch.TraceWarning, String.Format(message, formatArgs), category); + } + } +} diff --git a/Hyphen/Plugins/MirandaPlugin.EmptyPlugin.cs b/Hyphen/Plugins/MirandaPlugin.EmptyPlugin.cs new file mode 100644 index 0000000..de227ee --- /dev/null +++ b/Hyphen/Plugins/MirandaPlugin.EmptyPlugin.cs @@ -0,0 +1,114 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2008 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Reflection; +using Virtuoso.Miranda.Plugins.Forms; +using Virtuoso.Miranda.Plugins.Resources; +using System.Diagnostics; + +namespace Virtuoso.Miranda.Plugins +{ + partial class MirandaPlugin + { + /// + /// Represents an unknown plugin. Hyphen will impersonate itself with this plugin when binding to Miranda's events. + /// + internal sealed class Hyphen : MirandaPlugin, IExceptionHandler, IExceptionReporter + { + #region Fields + + private static readonly Hyphen singleton = new Hyphen(); + + #endregion + + #region .ctors + + private Hyphen() + { + PluginDescriptor.SetUp(this); + } + + #endregion + + #region Properties + + public static Hyphen Singleton + { + get + { + return singleton; + } + } + + public override string Name + { + get { return "Hyphen"; } + } + + public override string Author + { + get { return "virtuoso"; } + } + + public override string Description + { + get { return String.Empty; } + } + + public override Uri HomePage + { + get { return new Uri("http://www.none.com"); } + } + + public override Version Version + { + get { return Assembly.GetExecutingAssembly().GetName().Version; } + } + + public override bool HasOptions + { + get { return false; } + } + + #endregion + + #region IExceptionHandler Members + + public void HandleException(Exception e, PluginDescriptor descriptor) + { + ErrorDialog.PresentModal(e, this, TextResources.MsgBox_Text_HyphenCrashed, false); + } + + #endregion + + #region IExceptionReporter Members + + void IExceptionReporter.ReportException(Exception e) + { + ProcessStartInfo startInfo = new ProcessStartInfo(String.Format("mailto:{0}?subject={1}&body={2}", "deml.tomas@seznam.cz", TextResources.MsgBox_Caption_HyphenCrashed, e.ToString())); + startInfo.UseShellExecute = true; + + Process.Start(startInfo); + } + + #endregion + } + } +} diff --git a/Hyphen/Plugins/MirandaPlugin.cs b/Hyphen/Plugins/MirandaPlugin.cs new file mode 100644 index 0000000..3cf4312 --- /dev/null +++ b/Hyphen/Plugins/MirandaPlugin.cs @@ -0,0 +1,178 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Collections; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins +{ + [UnmanagedFunctionPointer(CallingConvention.Cdecl), CLSCompliant(false)] + public delegate int Callback(UIntPtr wParam, IntPtr lParam); + + public enum PluginState : int + { + Disabled, + Enabled, + CrashDisabled + } + + public abstract partial class MirandaPlugin : ContextWorker, ISettingOwner + { + #region Fields + + private MenuItemDeclarationCollection menuItemsCollection; + private MenuItemDeclarationReadOnlyCollection menuItemsReadOnly; + + private PluginDescriptor descriptor; + + #endregion + + #region .ctors + + protected MirandaPlugin() + { + menuItemsCollection = new MenuItemDeclarationCollection(); + menuItemsReadOnly = new MenuItemDeclarationReadOnlyCollection(menuItemsCollection); + } + + #endregion + + #region Properties + + public abstract string Name { get; } + + public abstract string Author { get; } + + public abstract string Description { get; } + + public abstract Uri HomePage { get; } + + public abstract Version Version { get; } + + public abstract bool HasOptions { get; } + + public MenuItemDeclarationReadOnlyCollection MenuItems + { + get { return menuItemsReadOnly; } + } + + public bool Initialized + { + get + { + return descriptor != null; + } + } + + internal MenuItemDeclarationCollection MenuItemsCollection + { + get + { + return menuItemsCollection; + } + } + + protected internal PluginDescriptor Descriptor + { + get + { + if (descriptor == null) + throw new InvalidOperationException(TextResources.ExceptionMsg_PluginNotInitialized); + + return descriptor; + } + internal set + { + if (descriptor != null) + throw new InvalidOperationException(TextResources.ExceptionMsg_PluginAlreadyInitialized); + + descriptor = value; + } + } + + internal string UniqueName + { + get + { + return String.Format("{0}.{1}.{2}", Author, Name, Version); + } + } + + #endregion + + #region Methods + + public sealed override int GetHashCode() + { + return GetType().FullName.GetHashCode(); + } + + public sealed override bool Equals(object obj) + { + if (obj == null) return false; + MirandaPlugin other = obj as MirandaPlugin; + + if (other == null) return false; + return GetHashCode() == other.GetHashCode(); + } + + public override string ToString() + { + return String.Format("{0} by {1}, v{2}", Name, Author, Version); + } + + internal static IExceptionHandler GetExceptionHandler(PluginDescriptor descriptor) + { + if (descriptor == null) + throw new ArgumentNullException("descriptor"); + + // Custom handler (i.e. Hyphen's) + if (descriptor.Plugin is IExceptionHandler) + return (IExceptionHandler)descriptor.Plugin; + // Isolated plugin crashed + else if (!descriptor.IsStandalone) + return MirandaContext.Current.PluginManager; + // Generic handler + else + return DefaultExceptionHandler.Create(descriptor.Plugin); + } + + #endregion + + #region Events + + internal virtual void AfterMenuItemsPopulationInternal(MenuItemDeclarationCollection items) { AfterMenuItemsPopulation(items); } + protected virtual void AfterMenuItemsPopulation(MenuItemDeclarationCollection items) { } + + internal virtual void BeforeMirandaShutdownInternal() { BeforeMirandaShutdown(); } + protected virtual void BeforeMirandaShutdown() { } + + internal virtual void BeforePluginDisableInternal() { BeforePluginDisable(); } + protected virtual void BeforePluginDisable() { } + + internal virtual void AfterPluginEnableInternal() { AfterPluginEnable(); } + protected virtual void AfterPluginEnable() { } + + internal virtual void AfterPluginInitializationInternal() { AfterPluginInitialization(); } + protected virtual void AfterPluginInitialization() { } + + #endregion + } +} diff --git a/Hyphen/Plugins/Native/ACKDATA.cs b/Hyphen/Plugins/Native/ACKDATA.cs new file mode 100644 index 0000000..d8c46de --- /dev/null +++ b/Hyphen/Plugins/Native/ACKDATA.cs @@ -0,0 +1,65 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4)] + public struct ACKDATA + { + private readonly int Size; + public IntPtr ModuleName; + public IntPtr ContactHandle; + public int Type; + public int Result; + public IntPtr ProcessHandle; + public IntPtr LParam; + + public ACKDATA(IntPtr moduleName, int type, int result) + { + this.ModuleName = moduleName; + this.Type = type; + this.Result = result; + + this.ContactHandle = IntPtr.Zero; + this.ProcessHandle = IntPtr.Zero; + this.LParam = IntPtr.Zero; + + this.Size = Marshal.SizeOf(typeof(ACKDATA)); + } + } + + //a general network 'ack' + //wParam=0 + //lParam=(LPARAM)(ACKDATA*)&ack + //Note that just because definitions are here doesn't mean they will be sent. + //Read the documentation for the function you are calling to see what replies + //you will receive. + /*typedef struct { + int cbSize; + const char *szModule; //the name of the protocol module which initiated this ack + HANDLE hContact; + int type; //an ACKTYPE_ constant + int result; //an ACKRESULT_ constant + HANDLE hProcess; //a caller-defined process code + LPARAM lParam; //caller-defined extra info + } ACKDATA;*/ +} diff --git a/Hyphen/Plugins/Native/ADDCONTACTSTRUCT.cs b/Hyphen/Plugins/Native/ADDCONTACTSTRUCT.cs new file mode 100644 index 0000000..f6eeddb --- /dev/null +++ b/Hyphen/Plugins/Native/ADDCONTACTSTRUCT.cs @@ -0,0 +1,41 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [StructLayout( LayoutKind.Sequential, Pack = 4, CharSet = CharSet.Ansi)] + internal struct ADDCONTACTSTRUCT + { + public int HandleType; + public IntPtr Handle; + public string Protocol; + } + + /* + * typedef struct{ + int handleType; //one of the HANDLE_ constants + HANDLE handle; //hDbEvent if acs.handleType==HANDLE_EVENT, hContact if acs.handleType==HANDLE_CONTACT, ignored if acs.handleType==HANDLE_SEARCHRESULT + const char *szProto; //ignored if acs.handleType!=HANDLE_SEARCHRESULT + PROTOSEARCHRESULT *psr; //ignored if acs.handleType!=HANDLE_SEARCHRESULT + }ADDCONTACTSTRUCT; + */ +} diff --git a/Hyphen/Plugins/Native/CCSDATA.cs b/Hyphen/Plugins/Native/CCSDATA.cs new file mode 100644 index 0000000..acdacb4 --- /dev/null +++ b/Hyphen/Plugins/Native/CCSDATA.cs @@ -0,0 +1,58 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4)] + internal struct CCSDATA + { + #region Fields + + public readonly IntPtr ContactHandle; + public IntPtr ServiceNamePtr; + + public UIntPtr WParam; + public IntPtr LParam; + + #endregion + + #region .ctors + + public CCSDATA(ContactInfo contact, string serviceName) + { + this.ContactHandle = contact.MirandaHandle; + this.ServiceNamePtr = new UnmanagedStringHandle(serviceName, StringEncoding.Ansi).IntPtr; + + this.WParam = UIntPtr.Zero; + this.LParam = IntPtr.Zero; + } + + public void Free() + { + if (ServiceNamePtr != IntPtr.Zero) + Marshal.FreeHGlobal(ServiceNamePtr); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Native/CLISTMENUITEM.cs b/Hyphen/Plugins/Native/CLISTMENUITEM.cs new file mode 100644 index 0000000..592f4f5 --- /dev/null +++ b/Hyphen/Plugins/Native/CLISTMENUITEM.cs @@ -0,0 +1,128 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using System.Reflection; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Drawing; +using System.Diagnostics; +using System.IO; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 4)] + internal struct CLISTMENUITEM + { + #region Fields + + private readonly int Size; + + public string Text; + public uint Flags; + public int Position; + public IntPtr Icon; + public string Service; + public string PopUpMenu; + public int PopUpPosition; + public uint HotKey; + public string ContactOwner; + + #endregion + + #region .ctors + + public CLISTMENUITEM(MirandaPlugin owner, MenuItemDeclarationAttribute attrib) + { + if (owner == null) + throw new ArgumentNullException("owner"); + + if (attrib == null) + throw new ArgumentNullException("attrib"); + + this.Text = attrib.Text; + this.Service = attrib.Service; + this.ContactOwner = attrib.OwningModule; + this.Flags = (uint)attrib.Flags; + this.PopUpMenu = attrib.PopUpMenu; + this.PopUpPosition = attrib.PopUpPosition; + this.Position = attrib.Position; + this.HotKey = (uint)attrib.HotKey; + this.Icon = IntPtr.Zero; + this.Size = Marshal.SizeOf(typeof(CLISTMENUITEM)); + + LoadIcon(owner, attrib); + } + + #endregion + + #region Methods + + private void LoadIcon(MirandaPlugin owner, MenuItemDeclarationAttribute attrib) + { + try + { + if (!attrib.HasIcon) + return; + + if (attrib.UseEmbeddedIcon) + { + using (Stream stream = owner.GetType().Assembly.GetManifestResourceStream(attrib.IconID)) + { + if (stream != null) + Icon = IconImageCache.Singleton.GetStreamedIcon(stream).Handle; + else + Debug.Fail("Embedded icon not found."); + } + } + else + Icon = Skin.LoadIcon(int.Parse(attrib.IconID)); + } + catch + { + this.Icon = IntPtr.Zero; + } + } + + #endregion + } + + /* + typedef struct { + int cbSize; //size in bytes of this structure + char *pszName; //text of the menu item + DWORD flags; //flags + int position; //approx position on the menu. lower numbers go nearer the top + HICON hIcon; //HasIcon to put by the item. If this was not loaded from + //a resource, you can delete it straight after the call + char *pszService; //eventName of service to call when the item gets selected + char *pszPopupName; //eventName of the popup menu that this item is on. If this + //is NULL the item is on the root of the menu + int popupPosition; //position of the popup menu on the root menu. Ignored + //if pszPopupName is NULL or the popup menu already + //existed + DWORD hotKey; //keyboard accelerator, same as lParam of WM_HOTKEY + //0 for none + char *pszContactOwner; //contact menus only. The protocol module that owns + //the contacts to which this menu item applies. NULL if it + //applies to all contacts. If it applies to multiple but not all + //protocols, add multiple menu items or use ME_CLIST_PREBUILDCONTACTMENU + } CLISTMENUITEM; + */ +} diff --git a/Hyphen/Plugins/Native/CONTACTINFO.cs b/Hyphen/Plugins/Native/CONTACTINFO.cs new file mode 100644 index 0000000..1ff7c14 --- /dev/null +++ b/Hyphen/Plugins/Native/CONTACTINFO.cs @@ -0,0 +1,71 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4)] + internal struct CONTACTINFO + { + #region Fields + + private readonly int Size; + + public byte Flag; + public IntPtr ContactHandle; + public IntPtr Module; + public byte Type; + + public IntPtr Value; + + #endregion + + #region .ctors + + public CONTACTINFO(IntPtr contactHandle, IntPtr module) + { + this.ContactHandle = contactHandle; + this.Flag = 0; + this.Module = module; + this.Type = 0; + this.Value = IntPtr.Zero; + this.Size = Marshal.SizeOf(typeof(CONTACTINFO)); + } + + #endregion + } + + /*typedef struct { + int cbSize; + BYTE dwFlag; + HANDLE hContact; + char *szProto; + BYTE type; + union { + BYTE bVal; + WORD wVal; + DWORD dVal; + char *pszVal; + WORD cchVal; + }; +} CONTACTINFO;*/ +} diff --git a/Hyphen/Plugins/Native/DBCONTACTSETTING.cs b/Hyphen/Plugins/Native/DBCONTACTSETTING.cs new file mode 100644 index 0000000..3beac7d --- /dev/null +++ b/Hyphen/Plugins/Native/DBCONTACTSETTING.cs @@ -0,0 +1,102 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4, CharSet = CharSet.Ansi)] + internal struct DBCONTACTWRITESETTING + { + #region Fields + + public IntPtr Module; + public IntPtr Name; + + public DBVARIANT Value; + + #endregion + + #region Methods + + public static unsafe object ExtractValue(IntPtr pDbWriteSetting) + { + DBCONTACTWRITESETTING dbWriteSetting = *(DBCONTACTWRITESETTING*)pDbWriteSetting.ToPointer(); + + switch ((DatabaseSettingType)dbWriteSetting.Value.Type) + { + case DatabaseSettingType.AsciiString: + return Marshal.PtrToStringAnsi(dbWriteSetting.Value.Text.TextPtr); + case DatabaseSettingType.UnicodeString: + case DatabaseSettingType.UTF8String: + return Marshal.PtrToStringUni(dbWriteSetting.Value.Text.TextPtr); + case DatabaseSettingType.Byte: + return dbWriteSetting.Value.Primitives.Byte; + case DatabaseSettingType.UInt16: + return dbWriteSetting.Value.Primitives.Word; + case DatabaseSettingType.UInt32: + return dbWriteSetting.Value.Primitives.DWord; + case DatabaseSettingType.Blob: + return Translate.ToBlob(dbWriteSetting.Value.Blob.BlobPtr, dbWriteSetting.Value.Blob.Size); + case DatabaseSettingType.Deleted: + return null; + default: + LogUnsupportedValue(dbWriteSetting); + return null; + } + } + + private static void LogUnsupportedValue(DBCONTACTWRITESETTING dbWriteSetting) + { + string name = "N/A"; + string module = "N/A"; + + try + { + name = Translate.ToString(dbWriteSetting.Name, StringEncoding.Ansi); + module = Translate.ToString(dbWriteSetting.Module, StringEncoding.Ansi); + } + catch (Exception) + { } + + Log.Warning("Attempted to extract an unsupported DB contact setting {0}:{1} of type {1}", + module, name, dbWriteSetting.Value.Type.ToString("X")); + } + + #endregion + } + + [StructLayout(LayoutKind.Sequential, Pack = 4, CharSet = CharSet.Ansi)] + internal struct DBCONTACTGETSETTING + { + public string Module; + public string Name; + + public IntPtr DbVariantPtr; + } + + /*[StructLayout(LayoutKind.Sequential, Pack = 4, CharSet = CharSet.Ansi)] + internal struct DBCONTACTGETSETTING_PTR + { + public IntPtr Module; + public IntPtr Name; + + public IntPtr DbVariant; + }*/ +} diff --git a/Hyphen/Plugins/Native/DBEVENTGETTEXT.cs b/Hyphen/Plugins/Native/DBEVENTGETTEXT.cs new file mode 100644 index 0000000..c8ee108 --- /dev/null +++ b/Hyphen/Plugins/Native/DBEVENTGETTEXT.cs @@ -0,0 +1,40 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4)] + internal struct DBEVENTGETTEXT + { + public IntPtr DbEventInfoPtr; + public int DataType; + public int Codepage; + } + + /* m_database.h + * typedef struct { + * DBEVENTINFO* dbei; + * int datatype; + * int codepage; + * } DBEVENTGETTEXT; + */ +} diff --git a/Hyphen/Plugins/Native/DBEVENTINFO.cs b/Hyphen/Plugins/Native/DBEVENTINFO.cs new file mode 100644 index 0000000..801bb2e --- /dev/null +++ b/Hyphen/Plugins/Native/DBEVENTINFO.cs @@ -0,0 +1,140 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4), CLSCompliant(false), Serializable] + public struct DBEVENTINFO + { + #region Fields + + private readonly int Size; + + public IntPtr Module; + public UInt32 Timestamp; + public UInt32 Flags; + public UInt16 EventType; + public UInt32 BlobSize; + + [NonSerialized] + public IntPtr BlobPtr; + + #endregion + + #region .ctors + + public DBEVENTINFO(int blobSize, IntPtr blobPtr) + { + this.Module = IntPtr.Zero; + this.Timestamp = this.Flags = this.EventType = 0; + this.BlobSize = (uint)blobSize; + this.BlobPtr = blobPtr; + + unsafe + { + this.Size = sizeof(DBEVENTINFO); + } + } + + #endregion + + #region Methods + + /// + /// Formats the ANSI-\0-UNICODE-\0\0 layout in the memory. + /// + /// String to layout. + /// [OUT] Blob pointer to the resulting memory layout. + /// Blob size in bytes. + /// Message blob format: ansi\0unicode\0\0 + public static int LayoutAnsiUniString(string data, out IntPtr pBlob) + { + int ansiBytesCount = Encoding.Default.GetByteCount(data); + int unicodeBytesCount = Encoding.Unicode.GetByteCount(data); + int terminatorBytesCount = 3; + + int totalBytes = ansiBytesCount + unicodeBytesCount + terminatorBytesCount; + + pBlob = Marshal.AllocHGlobal(totalBytes); + IntPtr pAnsiEnd = new IntPtr(pBlob.ToInt64() + (long)ansiBytesCount); + IntPtr pAnsiTermEnd = new IntPtr(pAnsiEnd.ToInt64() + 1L); + + Marshal.Copy(Encoding.Default.GetBytes(data), 0, pBlob, ansiBytesCount); + Marshal.Copy(new char[] { '\0' }, 0, pAnsiEnd, 1); + + Marshal.Copy(Encoding.Unicode.GetBytes(data), 0, pAnsiTermEnd, unicodeBytesCount); + Marshal.Copy(new char[] { '\0', '\0' }, 0, new IntPtr(pAnsiTermEnd.ToInt64() + (long)unicodeBytesCount), 2); + + return totalBytes; + } + + #endregion + } + + [StructLayout(LayoutKind.Sequential)] + internal struct DBTIMETOSTRING + { + #region Fields + + public IntPtr Format; + public IntPtr Output; + public int MaxBytes; + + #endregion + + #region .ctors + + public DBTIMETOSTRING(string format) + { + Format = new UnmanagedStringHandle(format, StringEncoding.Ansi).IntPtr; + Output = IntPtr.Zero; + MaxBytes = 0; + } + + public void Free() + { + if (Format != IntPtr.Zero) + Marshal.FreeHGlobal(Format); + } + + #endregion + } + + // typedef struct { + // char *szFormat; //format string, as above + // char *szDest; //place to put the output string + // int cbDest; //maximum number of bytes to put in szDest + //} DBTIMETOSTRING; + + // typedef struct { + // int cbSize; //size of the structure in bytes + // char *szModule; //pointer to eventName of the module that 'owns' this + // //event, ie the one that is in control of the data format + // DWORD timestamp; //seconds since 00:00, 01/01/1970. Gives us times until + // //2106 unless you use the standard C library which is + // //signed and can only do until 2038. In GMT. + // DWORD flags; //the omnipresent flags + // WORD eventType; //module-defined event type field + // DWORD cbBlob; //size of pBlob in bytes + // PBYTE pBlob; //pointer to buffer containing module-defined event data + //} DBEVENTINFO; +} diff --git a/Hyphen/Plugins/Native/DBVARIANT.cs b/Hyphen/Plugins/Native/DBVARIANT.cs new file mode 100644 index 0000000..d6c0818 --- /dev/null +++ b/Hyphen/Plugins/Native/DBVARIANT.cs @@ -0,0 +1,116 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Miranda.Plugins.Native +{ + internal enum DbVariantValue : byte + { + DBVT_DELETED = 0, //this setting just got deleted, no other values are valid + DBVT_BYTE = 1, //bVal and cVal are valid + DBVT_WORD = 2, //wVal and sVal are valid + DBVT_DWORD = 4, //dVal and lVal are valid + DBVT_ASCIIZ = 255, //pszVal is valid + DBVT_BLOB = 254, //cpbVal and pbVal are valid + DBVT_UTF8 = 253, //pszVal is valid + DBVT_WCHAR = 252, //pszVal is valid + DBVTF_VARIABLELENGTH = 0x80 + } + + [StructLayout(LayoutKind.Explicit, Pack = 4, Size = 12)] + internal struct DBVARIANT + { + [FieldOffset(0)] + public byte Type; + + [FieldOffset(4)] + public DBVARIANT_PRIMITIVE Primitives; + + [FieldOffset(4)] + public DBVARIANT_TEXT Text; + + [FieldOffset(4)] + public DBVARIANT_BLOB Blob; + } + + [StructLayout(LayoutKind.Explicit, Pack = 4)] + internal struct DBVARIANT_PRIMITIVE + { + [FieldOffset(0)] + public byte Byte; + + [FieldOffset(0)] + public char Char; + + [FieldOffset(0)] + public UInt16 Word; + + [FieldOffset(0)] + public short Short; + + [FieldOffset(0)] + public UInt32 DWord; + + [FieldOffset(0)] + public int Integer; + } + + [StructLayout(LayoutKind.Explicit, Pack = 4)] + internal struct DBVARIANT_TEXT + { + [FieldOffset(0)] + public IntPtr TextPtr; + + [FieldOffset(4)] + public UInt16 TextBufferSize; + } + + [StructLayout(LayoutKind.Explicit, Pack = 4)] + internal struct DBVARIANT_BLOB + { + [FieldOffset(0)] + public UInt16 Size; + + [FieldOffset(2)] + public IntPtr BlobPtr; + } + + // typedef struct { + // BYTE type; + // union { + // BYTE bVal; char cVal; + // WORD wVal; short sVal; + // DWORD dVal; long lVal; + // struct { + // union { + // char *pszVal; + // TCHAR *ptszVal; + // WCHAR *pwszVal; + // }; + // WORD cchVal; //only used for db/contact/getsettingstatic + // }; + // struct { + // WORD cpbVal; + // BYTE *pbVal; + // }; + // }; + //} DBVARIANT; +} diff --git a/Hyphen/Plugins/Native/IUnmanagedMemoryHandle.cs b/Hyphen/Plugins/Native/IUnmanagedMemoryHandle.cs new file mode 100644 index 0000000..8c30442 --- /dev/null +++ b/Hyphen/Plugins/Native/IUnmanagedMemoryHandle.cs @@ -0,0 +1,29 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Native +{ + public interface IUnmanagedMemoryHandle : IDisposable + { + IntPtr IntPtr { get; } + void Free(); + } +} diff --git a/Hyphen/Plugins/Native/IconImageCache.cs b/Hyphen/Plugins/Native/IconImageCache.cs new file mode 100644 index 0000000..182c996 --- /dev/null +++ b/Hyphen/Plugins/Native/IconImageCache.cs @@ -0,0 +1,193 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Drawing; +using System.IO; +using System.Runtime.CompilerServices; + +namespace Virtuoso.Miranda.Plugins.Native +{ + internal sealed class IconImageCache + { + #region Fields + + private static IconImageCache singleton; + + private readonly Dictionary IconCache; + private readonly Dictionary StreamedIconCache; + private readonly Dictionary ImageCache; + + #endregion + + #region .ctors + + [MethodImpl(MethodImplOptions.Synchronized)] + private IconImageCache() + { + IconCache = new Dictionary(1); + StreamedIconCache = new Dictionary(1); + ImageCache = new Dictionary(1); + } + + #endregion + + #region Properties + + public static IconImageCache Singleton + { + get + { + return singleton ?? (singleton = new IconImageCache()); + } + } + + #endregion + + #region GetXY methods + + public Icon GetIcon(IntPtr handle) + { + lock (IconCache) + { + Icon icon = null; + IntPtr key = handle; + + if (IconCache.ContainsKey(key)) + icon = IconCache[key]; + else + IconCache[key] = icon = Icon.FromHandle(handle); + + return icon; + } + } + + public Icon GetStreamedIcon(Stream stream) + { + lock (StreamedIconCache) + { + lock (IconCache) + { + int streamHandle = ComputeStreamHandle(stream); + + if (StreamedIconCache.ContainsKey(streamHandle)) + return StreamedIconCache[streamHandle]; + + Icon icon = new Icon(stream); + + StreamedIconCache[streamHandle] = icon; + + if (!IconCache.ContainsKey(icon.Handle)) + IconCache[icon.Handle] = icon; + + return icon; + } + } + } + + private static int ComputeStreamHandle(Stream stream) + { + lock (stream) + { + int streamHandle = 0, result; + + long prevPosition = stream.Position; + stream.Position = 0; + + while ((result = stream.ReadByte()) != -1) + streamHandle += (byte)result; + + stream.Position = prevPosition; + return streamHandle; + } + } + + public Image GetIconImage(IntPtr handle) + { + Image image = null; + Icon icon = GetIcon(handle); + + lock (ImageCache) + { + if (ImageCache.ContainsKey(icon)) + image = ImageCache[icon]; + else + ImageCache[icon] = image = icon.ToBitmap(); + + return image; + } + } + + public bool IsCached(IntPtr handle) + { + lock (IconCache) + return IconCache.ContainsKey(handle); + } + + public bool IsCached(Stream stream) + { + lock (StreamedIconCache) + return StreamedIconCache.ContainsKey(ComputeStreamHandle(stream)); + } + + #endregion + + #region IDisposable Members + + public void Dispose() + { + Dispose(true); + } + + [MethodImpl(MethodImplOptions.Synchronized)] + private void Dispose(bool disposing) + { + GC.SuppressFinalize(this); + + if (disposing) + { + lock (IconCache) + { + lock (ImageCache) + { + lock (StreamedIconCache) + { + foreach (Icon icon in IconCache.Values) + icon.Dispose(); + + foreach (Icon icon in StreamedIconCache.Values) + icon.Dispose(); + + foreach (Image image in ImageCache.Values) + image.Dispose(); + + IconCache.Clear(); + StreamedIconCache.Clear(); + ImageCache.Clear(); + + singleton = null; + } + } + } + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Native/InteropBuffer.cs b/Hyphen/Plugins/Native/InteropBuffer.cs new file mode 100644 index 0000000..5eb3e18 --- /dev/null +++ b/Hyphen/Plugins/Native/InteropBuffer.cs @@ -0,0 +1,246 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using System.Threading; +using System.Runtime.CompilerServices; +using System.Diagnostics; +using Virtuoso.Hyphen; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Native +{ + // Every method touching a memory location or returning its address requires the buffer to be suspended! + [CLSCompliant(false)] + public sealed class InteropBuffer : IUnmanagedMemoryHandle + { + #region Fields + + private const string LogCategory = Loader.LogCategory + "::InteropBuffer"; + + private readonly int size; + private IntPtr sizeAsIntPtr; + private UIntPtr sizeAsUIntPtr; + + private readonly object SyncObject; + + private IntPtr intPtr; + private volatile int Owner; + + private volatile bool reserved; + + #endregion + + #region .ctors + + internal InteropBuffer(int size) + { + if (size <= 0) throw new ArgumentOutOfRangeException("size"); + + SyncObject = new object(); + Log.DebuggerWrite(0, LogCategory, "InteropBuffer SyncObject initialized"); + + this.size = size; + + intPtr = Marshal.AllocHGlobal(size); + Log.DebuggerWrite(0, LogCategory, "InteropBuffer memory allocated (" + size + " B)"); + } + + ~InteropBuffer() + { + Dispose(false); + } + + private void CheckLock() + { + if (Owner == 0) throw new InvalidOperationException(TextResources.ExceptionMsg_InteropBufferNotLocked); + } + + #endregion + + #region IUnmanagedMemoryHandle Members + + public IntPtr IntPtr + { + get + { + lock (SyncObject) + { + // Touches memory, lock needed + CheckLock(); + + if (intPtr == IntPtr.Zero) + throw new ObjectDisposedException("InteropBuffer"); + + return intPtr; + } + } + } + + void IUnmanagedMemoryHandle.Free() + { + lock (SyncObject) + { + CheckLock(); + Dispose(true); + } + } + + #endregion + + #region IDisposable Members + + void IDisposable.Dispose() + { + ((IUnmanagedMemoryHandle)this).Free(); + } + + internal void Dispose(bool disposing) + { + GC.SuppressFinalize(this); + + if (intPtr != IntPtr.Zero) + { + Marshal.FreeHGlobal(intPtr); + intPtr = IntPtr.Zero; + + Log.DebuggerWrite(0, LogCategory, "InteropBuffer memory released"); + } + } + + #endregion + + #region Properties + + public bool Locked + { + get + { + return Owner != 0; + } + } + + public int Size + { + get + { + return size; + } + } + + public IntPtr SizeAsIntPtr + { + get + { + if (sizeAsIntPtr == IntPtr.Zero) + sizeAsIntPtr = new IntPtr(size); + + return sizeAsIntPtr; + } + } + + public UIntPtr SizeAsUIntPtr + { + get + { + if (sizeAsUIntPtr == UIntPtr.Zero) + sizeAsUIntPtr = (UIntPtr)(ulong)size; + + return sizeAsUIntPtr; + } + } + + internal bool Reserved + { + get + { + return reserved; + } + set + { + reserved = value; + } + } + + #endregion + + #region Methods + + public override int GetHashCode() + { + return intPtr.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null) return false; + + InteropBuffer other = obj as InteropBuffer; + if (other == null) return false; + + return (GetHashCode() == other.GetHashCode()); + } + + public void Lock() + { + Log.DebuggerWrite(0, LogCategory, "Attempting to lock InteropBuffer for thread id " + Thread.CurrentThread.ManagedThreadId); + + Monitor.Enter(SyncObject); + Owner = Thread.CurrentThread.ManagedThreadId; + + Log.DebuggerWrite(0, LogCategory, "InteropBuffer locked for thread id " + Owner); + } + + public void Unlock() + { + Log.DebuggerWrite(0, LogCategory, "Attempting to unlock InteropBuffer of thread id " + Thread.CurrentThread.ManagedThreadId); + CheckLock(); + + if (Owner == Thread.CurrentThread.ManagedThreadId) + { + Monitor.Exit(SyncObject); + + Log.DebuggerWrite(0, LogCategory, "InteropBuffer unlocked by thread id " + this.Owner); + Owner = 0; + } + else + throw new InvalidOperationException(TextResources.ExceptionMsg_InvalidCrossThreadInteropBufferUnlock); + } + + public void Zero() + { + lock (SyncObject) + { + // Touches memory, lock needed + CheckLock(); + + for (int i = 0; i < Size; i++) + Marshal.WriteByte(intPtr, i, 0); + } + } + + public static implicit operator IntPtr(InteropBuffer buffer) + { + return buffer.intPtr; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Native/InteropBufferPool.cs b/Hyphen/Plugins/Native/InteropBufferPool.cs new file mode 100644 index 0000000..0cc9746 --- /dev/null +++ b/Hyphen/Plugins/Native/InteropBufferPool.cs @@ -0,0 +1,186 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.CompilerServices; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Native +{ + // Impl note: should be static, but UnitTests' private accessors dislike that... + [CLSCompliant(false)] + public sealed class InteropBufferPool + { + #region Fields + + public const int DefaultMaximumAvailableBufferSize = 260; + private const int DefaultBuffersCount = 2; + + private static int maximumAvailableBufferSize = DefaultMaximumAvailableBufferSize; + + public static int MaximumAvailableBufferSize + { + get { return InteropBufferPool.maximumAvailableBufferSize; } + } + + private static int NextAvailableBufferIndex; + private static InteropBuffer[] Buffers; + + private static volatile bool Disposed; + + #endregion + + #region .ctors & .dctors + + private InteropBufferPool() { } + + #endregion + + #region Methods + + internal static void Dispose() + { + if (Disposed || Buffers == null) + return; + + lock (Buffers) + { + Disposed = true; + + for (int i = 0; i < Buffers.Length; i++) + { + try + { + Buffers[i].Dispose(true); + Buffers[i] = null; + } + catch { } + } + } + } + + internal static void Refresh() + { + Dispose(); + + Buffers = null; + Disposed = false; + + VerifyPoolConsistency(); + } + + private static void VerifyPoolConsistency() + { + if (Disposed) + throw new ObjectDisposedException("InteropBufferPool"); + + if (Buffers == null) + { + NextAvailableBufferIndex = 0; + maximumAvailableBufferSize = DefaultMaximumAvailableBufferSize; + + Buffers = new InteropBuffer[DefaultBuffersCount]; + + for (int i = 0; i < DefaultBuffersCount; i++) + Buffers[i] = new InteropBuffer(maximumAvailableBufferSize); + } + } + + public static InteropBuffer AcquireBuffer() + { + return AcquireBuffer(maximumAvailableBufferSize); + } + + public static InteropBuffer AcquireBuffer(int size) + { + if (size <= 0) + throw new ArgumentOutOfRangeException("size"); + + VerifyPoolConsistency(); + + lock (Buffers) + { + InteropBuffer buffer = null; + + if (NextAvailableBufferIndex > Buffers.Length - 1 || size > maximumAvailableBufferSize) + buffer = new InteropBuffer(size); + else + { + int index = Array.FindIndex(Buffers, delegate(InteropBuffer _buffer) + { + if (_buffer.Size >= size) + return true; + else + return false; + }); + + if (index == -1 || index < NextAvailableBufferIndex) + buffer = new InteropBuffer(size); + else + { + buffer = Buffers[index]; + NextAvailableBufferIndex++; + } + } + + buffer.Reserved = true; + return buffer; + } + } + + public static void ReleaseBuffer(InteropBuffer buffer) + { + if (buffer == null) + return; + + if (buffer.Locked) + throw new InvalidOperationException(TextResources.ExceptionMsg_InteropBufferNotUnlocked); + + if (!buffer.Reserved) + throw new ArgumentException(); + + VerifyPoolConsistency(); + + lock (Buffers) + { + if (Array.IndexOf(Buffers, buffer) == -1) + { + if (buffer.Size > maximumAvailableBufferSize) + { + if (NextAvailableBufferIndex <= Buffers.Length - 1) + { + Buffers[NextAvailableBufferIndex].Dispose(true); + Buffers[NextAvailableBufferIndex] = buffer; + + maximumAvailableBufferSize = buffer.Size; + } + } + else + buffer.Dispose(true); + } + else + NextAvailableBufferIndex--; + + buffer.Reserved = false; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Native/MIRANDASYSTRAYNOTIFY.cs b/Hyphen/Plugins/Native/MIRANDASYSTRAYNOTIFY.cs new file mode 100644 index 0000000..65adeaf --- /dev/null +++ b/Hyphen/Plugins/Native/MIRANDASYSTRAYNOTIFY.cs @@ -0,0 +1,65 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi, Pack = 4)] + internal struct MIRANDASYSTRAYNOTIFY + { + #region Fields + + private readonly int Size; + + public string Protocol; + public string Title; + public string Text; + public uint Flags; + public uint Timeout; + + #endregion + + #region .ctors + + public MIRANDASYSTRAYNOTIFY(string title, string text, System.Windows.Forms.ToolTipIcon flags) + { + this.Protocol = String.Empty; + this.Title = title; + this.Text = text; + this.Flags = (uint)flags; + this.Timeout = 10 * 1000; + + this.Size = Marshal.SizeOf(typeof(MIRANDASYSTRAYNOTIFY)); + } + + #endregion + } + + /*typedef struct { + int cbSize; // sizeof(MIRANDASYSTRAY) + char *szProto; // protocol to show under (may have no effect) + char *szInfoTitle; // only 64chars of it will be used + char *szInfo; // only 256chars of it will be used + DWORD dwInfoFlags; // see NIIF_* stuff + UINT uTimeout; // how long to show the tip for +} MIRANDASYSTRAYNOTIFY;*/ +} diff --git a/Hyphen/Plugins/Native/MM_INTERFACE.cs b/Hyphen/Plugins/Native/MM_INTERFACE.cs new file mode 100644 index 0000000..51453c8 --- /dev/null +++ b/Hyphen/Plugins/Native/MM_INTERFACE.cs @@ -0,0 +1,52 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate IntPtr MMI_MallocPrototype(int size); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate IntPtr MMI_ReallocPrototype(IntPtr ptr, int size); + + [UnmanagedFunctionPointer(CallingConvention.Cdecl)] + internal delegate IntPtr MMI_FreePrototype(IntPtr ptr); + + [StructLayout(LayoutKind.Sequential, Pack = 4)] + internal struct MM_INTERFACE + { + public int Size; + public readonly MMI_MallocPrototype Malloc; + public readonly MMI_ReallocPrototype Realloc; + public readonly MMI_FreePrototype Free; + } + + /* m_system.h + * struct MM_INTERFACE + { + int cbSize; + void* (*mmi_malloc) (size_t); + void* (*mmi_realloc) (void*, size_t); + void (*mmi_free) (void*); + } + */ +} \ No newline at end of file diff --git a/Hyphen/Plugins/Native/MenuItemModifyFlags.cs b/Hyphen/Plugins/Native/MenuItemModifyFlags.cs new file mode 100644 index 0000000..961fe64 --- /dev/null +++ b/Hyphen/Plugins/Native/MenuItemModifyFlags.cs @@ -0,0 +1,34 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [Flags] + internal enum MenuItemModifyFlags : uint + { + None = 0x0, + CMIM_NAME = 0x80000000, + CMIM_FLAGS = 0x40000000, + CMIM_ICON = 0x20000000, + CMIM_HOTKEY = 0x10000000, + CMIM_ALL = 0xF0000000 + } +} diff --git a/Hyphen/Plugins/Native/MirandaException.cs b/Hyphen/Plugins/Native/MirandaException.cs new file mode 100644 index 0000000..dee87b4 --- /dev/null +++ b/Hyphen/Plugins/Native/MirandaException.cs @@ -0,0 +1,37 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.Serialization; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [Serializable] + public class MirandaException : Exception + { + #region .ctors + + internal MirandaException(string message) : base(message) { } + internal MirandaException(string message, Exception inner) : base(message, inner) { } + + protected MirandaException(SerializationInfo info, StreamingContext context) : base(info, context) { } + + #endregion + } +} diff --git a/Hyphen/Plugins/Native/NativeMethods.cs b/Hyphen/Plugins/Native/NativeMethods.cs new file mode 100644 index 0000000..33c43f9 --- /dev/null +++ b/Hyphen/Plugins/Native/NativeMethods.cs @@ -0,0 +1,32 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using System.Drawing; + +namespace Virtuoso.Miranda.Plugins.Native +{ + /*internal static class NativeMethods + { + [DllImport("user32.dll")] + [return: MarshalAs(UnmanagedType.Bool)] + public static extern bool GetCursorPos(ref Point lpPoint); + }*/ +} diff --git a/Hyphen/Plugins/Native/PROTOCOLDESCRIPTOR.cs b/Hyphen/Plugins/Native/PROTOCOLDESCRIPTOR.cs new file mode 100644 index 0000000..008e0fc --- /dev/null +++ b/Hyphen/Plugins/Native/PROTOCOLDESCRIPTOR.cs @@ -0,0 +1,50 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4)] + public struct PROTOCOLDESCRIPTOR + { + #region Fields + + private readonly int Size; + + public readonly IntPtr Name; + public readonly ProtocolType Type; + + #endregion + + #region .ctors + + public PROTOCOLDESCRIPTOR(string name, ProtocolType type) + { + this.Name = Translate.ToHandle(name, StringEncoding.Ansi); + this.Type = type; + + this.Size = Marshal.SizeOf(typeof(PROTOCOLDESCRIPTOR)); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Native/UUID.cs b/Hyphen/Plugins/Native/UUID.cs new file mode 100644 index 0000000..4fc52b6 --- /dev/null +++ b/Hyphen/Plugins/Native/UUID.cs @@ -0,0 +1,87 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Miranda.Plugins.Native +{ + internal static class UUID + { + #region Hyphen + + #region UUID + + private static readonly Guid hyphenUUID = new Guid("A9CB92EC-A8C9-493a-8763-77EB1DBA8228"); + public static Guid HyphenUUID + { + get { return UUID.hyphenUUID; } + } + + #endregion + + #region Interfaces + + private static readonly Guid HyphenInterfaceUUID = new Guid("9E54961E-D2A2-4939-A23E-FF07F0A27D79"); + + private static IntPtr hyphenInterfaceUUIDs; + public static IntPtr HyphenInterfaceUUIDs + { + get + { + if (hyphenInterfaceUUIDs == IntPtr.Zero) + { + int uuidSize = Marshal.SizeOf(typeof(Guid)); + hyphenInterfaceUUIDs = Marshal.AllocHGlobal(2 * uuidSize); + + byte[] uuidBytes = HyphenInterfaceUUID.ToByteArray(); + Marshal.Copy(uuidBytes, 0, hyphenInterfaceUUIDs, uuidBytes.Length); + + // MIID_LAST + uuidBytes = Last.ToByteArray(); + Marshal.Copy(uuidBytes, 0, new IntPtr(hyphenInterfaceUUIDs.ToInt64() + uuidSize), uuidBytes.Length); + } + + return hyphenInterfaceUUIDs; + } + } + + #endregion + + #endregion + + #region Miranda + + public static Guid Last + { + get + { + return Guid.Empty; + } + } + + private static Guid protocolUUID = new Guid(0x2a3c815e, 0xa7d9, 0x424b, 0xba, 0x30, 0x2, 0xd0, 0x83, 0x22, 0x90, 0x85); + public static Guid ProtocolUUID + { + get { return protocolUUID; } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Native/UnmanagedStringHandle.cs b/Hyphen/Plugins/Native/UnmanagedStringHandle.cs new file mode 100644 index 0000000..d834dd9 --- /dev/null +++ b/Hyphen/Plugins/Native/UnmanagedStringHandle.cs @@ -0,0 +1,152 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.Native +{ + public enum StringEncoding + { + Ansi, + Unicode, + MirandaDefault + } + + public struct UnmanagedStringHandle : IUnmanagedMemoryHandle + { + #region Fields + + private IntPtr intPtr; + public static readonly UnmanagedStringHandle Empty = new UnmanagedStringHandle(); + + private string originalString; + private StringEncoding encoding; + + #endregion + + #region .ctors + + public UnmanagedStringHandle(string str, StringEncoding encoding) + { + reEval: + switch (encoding) + { + case StringEncoding.Unicode: + this.intPtr = Marshal.StringToHGlobalUni(str); + break; + case StringEncoding.Ansi: + this.intPtr = Marshal.StringToHGlobalAnsi(str); + break; + default: + encoding = MirandaEnvironment.MirandaStringEncoding; + + if (encoding == StringEncoding.MirandaDefault) + throw new ArgumentException(TextResources.ExceptionMsg_CannotDetectMirandaDefaultStringEncoding); + + goto reEval; + } + + this.originalString = str; + this.encoding = encoding; + } + + #endregion + + #region Properties + + public string OriginalString + { + get { return originalString; } + } + + public StringEncoding Encoding + { + get + { + return encoding; + } + } + + public IntPtr IntPtr + { + get { return intPtr; } + } + + public static implicit operator IntPtr(UnmanagedStringHandle operand) + { + return operand.IntPtr; + } + + [CLSCompliant(false)] + public static implicit operator UIntPtr(UnmanagedStringHandle operand) + { + return Translate.ToHandle(operand.IntPtr); + } + + public int Size + { + get + { + if (!IsValid) + return 0; + + switch (encoding) + { + case StringEncoding.Ansi: + return System.Text.Encoding.Default.GetByteCount(originalString); + case StringEncoding.Unicode: + return System.Text.Encoding.Unicode.GetByteCount(originalString); + default: + return -1; + } + } + } + + public bool IsValid + { + get + { + return (intPtr != IntPtr.Zero); + } + } + + #endregion + + #region Methods + + public void Free() + { + if (IsValid) + { + Marshal.FreeHGlobal(intPtr); + intPtr = IntPtr.Zero; + } + } + + void IDisposable.Dispose() + { + Free(); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Native/UnmanagedStructHandle.cs b/Hyphen/Plugins/Native/UnmanagedStructHandle.cs new file mode 100644 index 0000000..ea65b76 --- /dev/null +++ b/Hyphen/Plugins/Native/UnmanagedStructHandle.cs @@ -0,0 +1,211 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.Native +{ + public enum MarshalKind + { + Copy, + PinBlittable + } + + public struct UnmanagedStructHandle : IUnmanagedMemoryHandle + { + #region Fields + + public readonly static UnmanagedStructHandle Empty = new UnmanagedStructHandle(); + + private Type ActualType; + private MarshalKind MarshalKind; + + private GCHandle GcHandle; + private IntPtr intPtr; + + private IntPtr SinglePressure; + private IntPtr[] Pressure; + + #endregion + + #region .ctors + + public UnmanagedStructHandle(ref T structure) + : this(ref structure, MarshalKind.Copy, null) + { } + + public UnmanagedStructHandle(ref T structure, IntPtr pressure) + : this(ref structure, MarshalKind.Copy, null) + { + this.SinglePressure = pressure; + } + + public UnmanagedStructHandle(ref T structure, params IntPtr[] pressure) + : this(ref structure, MarshalKind.Copy, pressure) + { } + + public UnmanagedStructHandle(ref T structure, MarshalKind marshalKind) + : this(ref structure, marshalKind, null) + { } + + public UnmanagedStructHandle(ref T structure, MarshalKind marshalKind, IntPtr pressure) + : this(ref structure, marshalKind, null) + { + this.SinglePressure = pressure; + } + + public UnmanagedStructHandle(ref T structure, MarshalKind marshalKind, params IntPtr[] pressure) + { + // The structure is of a reference type and is null... + if (!typeof(T).IsValueType && object.ReferenceEquals(structure, null)) + throw new ArgumentNullException("structure"); + + this.SinglePressure = IntPtr.Zero; + this.Pressure = pressure; + this.MarshalKind = marshalKind; + this.ActualType = structure.GetType(); + + switch (marshalKind) + { + case MarshalKind.Copy: + this.intPtr = Marshal.AllocHGlobal(Marshal.SizeOf(ActualType)); + Marshal.StructureToPtr((object)structure, this.intPtr, false); + this.GcHandle = new GCHandle(); + break; + case MarshalKind.PinBlittable: + this.GcHandle = GCHandle.Alloc((object)structure, GCHandleType.Pinned); + this.intPtr = this.GcHandle.AddrOfPinnedObject(); + break; + default: + throw new ArgumentOutOfRangeException("marshalKind"); + } + } + + #endregion + + #region Operator overloads + + public static implicit operator IntPtr(UnmanagedStructHandle operand) + { + return operand.IntPtr; + } + + [CLSCompliant(false)] + public static implicit operator UIntPtr(UnmanagedStructHandle operand) + { + return Translate.ToHandle(operand.IntPtr); + } + + #endregion + + #region Properties + + public IntPtr IntPtr + { + get + { + return intPtr; + } + } + + #endregion + + #region Methods + + public void MarshalBack(out T destination) + { + if (MarshalKind == MarshalKind.PinBlittable) + destination = (T)GcHandle.Target; + else + destination = (T)Marshal.PtrToStructure(IntPtr, ActualType); + } + + public override int GetHashCode() + { + return intPtr.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null || !(obj is UnmanagedStructHandle)) + return false; + + return Equals((UnmanagedStructHandle)obj); + } + + public bool Equals(UnmanagedStructHandle other) + { + return (other.intPtr == this.intPtr && other.Pressure == this.Pressure && other.SinglePressure == this.SinglePressure); + } + + #endregion + + void IDisposable.Dispose() + { + Free(); + } + + public void Free() + { + try + { + if (IntPtr != IntPtr.Zero) + { + FreePressure(); + + if (MarshalKind == MarshalKind.PinBlittable) + GcHandle.Free(); + else + Marshal.DestroyStructure(IntPtr, ActualType); + + intPtr = IntPtr.Zero; + ActualType = null; + } + } + catch (Exception e) + { + Log.DebuggerWrite(100, GetType().FullName, "Unable to free a struct handle: " + e.ToString()); + } + } + + private void FreePressure() + { + if (SinglePressure != IntPtr.Zero) + { + Marshal.FreeHGlobal(SinglePressure); + SinglePressure = IntPtr.Zero; + } + + if (Pressure != null) + { + for (int i = 0; i < Pressure.Length; i++) + { + IntPtr ptr = Pressure[i]; + + if (ptr != IntPtr.Zero) + Marshal.FreeHGlobal(ptr); + } + + Pressure = null; + } + } + } +} diff --git a/Hyphen/Plugins/PMConfiguration.cs b/Hyphen/Plugins/PMConfiguration.cs new file mode 100644 index 0000000..2650573 --- /dev/null +++ b/Hyphen/Plugins/PMConfiguration.cs @@ -0,0 +1,85 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins +{ + [ConfigurationOptions("0.1.0.0", ProfileBound = true), Serializable] + internal class PMConfiguration : PluginConfiguration + { + #region .ctors + + private PMConfiguration() { } + + protected override void InitializeDefaultConfiguration() + { + disabledPlugins = new List(1); + base.InitializeDefaultConfiguration(); + } + + public static void Initialize() + { + if (singleton != null) + throw new InvalidOperationException(); + + singleton = Load(); + } + + #endregion + + #region Properties + + private static PMConfiguration singleton; + public static PMConfiguration Singleton + { + get + { + if (singleton == null) + throw new InvalidOperationException(); + + return singleton; + } + } + + private List disabledPlugins; + public List DisabledPlugins + { + get { return disabledPlugins; } + set { disabledPlugins = value; } + } + + #endregion + + #region Methods + + public static void Reset() + { + singleton = PluginConfiguration.GetDefaultConfiguration(); + } + + public static void Reload() + { + Initialize(); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/PluginDescriptor.cs b/Hyphen/Plugins/PluginDescriptor.cs new file mode 100644 index 0000000..2cd5803 --- /dev/null +++ b/Hyphen/Plugins/PluginDescriptor.cs @@ -0,0 +1,320 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Collections; +using System.Reflection; +using System.Diagnostics; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Hyphen.Mini; + +namespace Virtuoso.Miranda.Plugins +{ + [DebuggerDisplay("{Plugin}")] + public sealed class PluginDescriptor : IDescriptor + { + #region Fields + + private static readonly Type HookDescriptorType = typeof(HookDescriptor), + EventHookAttribType = typeof(EventHookAttribute), + MenuItemAttribType = typeof(MenuItemDeclarationAttribute), + ServiceFncAttribType = typeof(ServiceFunctionAttribute), + CallbackDelegType = typeof(Callback); + + private readonly MirandaPlugin plugin; + private PluginState PluginStateInternal; + + private readonly HookDescriptorCollection eventHooks, serviceFunctions; + private readonly EventHandleCollection eventHandles; + + #endregion + + #region .ctors + + private PluginDescriptor(MirandaPlugin plugin) + { + if (plugin == null) + throw new ArgumentNullException("plugin"); + + this.plugin = plugin; + + this.eventHooks = new HookDescriptorCollection(); + this.serviceFunctions = new HookDescriptorCollection(); + this.eventHandles = new EventHandleCollection(); + + Initialize(); + } + + private void Initialize() + { + Plugin.Descriptor = this; + + Type pluginType = Plugin.GetType(); + Assembly pluginAssembly = pluginType.Assembly; + + MethodInfo[] methods = pluginType.GetMethods(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static | BindingFlags.FlattenHierarchy); + + foreach (MethodInfo method in methods) + { + PopulateMethodHooksByAttribute(method, EventHooks); + PopulateMethodHooksByAttribute(method, ServiceFunctions); + + PopulateMethodLevelDeclaredMenuItems(method); + } + + PopulateTopLevelDeclaredMenuItems(); + Plugin.AfterMenuItemsPopulationInternal(Plugin.MenuItemsCollection); + + Plugin.AfterPluginInitializationInternal(); + } + + internal static PluginDescriptor SetUp(MirandaPlugin plugin) + { + if (plugin == null) + throw new ArgumentNullException("plugin"); + + try + { + return new PluginDescriptor(plugin); + } + catch (FusionException) + { + throw; + } + catch (Exception e) + { + throw new FusionException(String.Format(TextResources.ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor, e.Message), plugin.GetType().Assembly, plugin.GetType(), plugin, e); + } + } + + #endregion + + #region Helpers + + private void PopulateMethodHooksByAttribute(MethodInfo method, HookDescriptorCollection hookBag) where TAttrib : HookAttribute + { + if (method == null) + throw new ArgumentNullException("method"); + + if (hookBag == null) + throw new ArgumentNullException("hookBag"); + + Type attribType = typeof(TAttrib); + + if (method.IsDefined(attribType, true)) + { + TAttrib[] attributes = (TAttrib[])Attribute.GetCustomAttributes(method, attribType, true); + + if (attributes.Length > 0) + PopulateMethodHooks(method, hookBag, attributes); + } + } + + private void PopulateMethodHooks(MethodInfo method, HookDescriptorCollection hookBag, params TAttrib[] attributes) where TAttrib : HookAttribute + { + if (method == null) + throw new ArgumentNullException("method"); + + if (hookBag == null) + throw new ArgumentNullException("hookBag"); + + if (attributes == null) + throw new ArgumentNullException("attributes"); + + if (attributes.Length == 0) + return; + + Callback hookCallback = Delegate.CreateDelegate(CallbackDelegType, Plugin, method, false) as Callback; + + if (hookCallback == null) + throw new FusionException(String.Format(TextResources.ExceptionMsg_Formatable1_InvalidMethodSignature, method.Name), Plugin.GetType().Assembly, Plugin.GetType(), Plugin, null); + + foreach (TAttrib attribute in attributes) + { + HookDescriptor.SetUpAndStore(hookBag, attribute.HookName, this, hookCallback, attribute.HookType); + } + } + + private void PopulateTopLevelDeclaredMenuItems() + { + Type pluginType = Plugin.GetType(); + + if (pluginType.IsDefined(MenuItemAttribType, true)) + { + MenuItemDeclarationAttribute[] menuItemAttribs = (MenuItemDeclarationAttribute[])pluginType.GetCustomAttributes(MenuItemAttribType, true); + Plugin.MenuItemsCollection.AddRange(menuItemAttribs); + } + } + + private void PopulateMethodLevelDeclaredMenuItems(MethodInfo method) + { + if (method == null) + throw new ArgumentNullException("method"); + + if (method.IsDefined(MenuItemAttribType, true)) + { + string methodService = String.Format("{0}.{1}", Plugin.GetType().FullName, method.Name); + MenuItemDeclarationAttribute[] menuItems = (MenuItemDeclarationAttribute[])method.GetCustomAttributes(MenuItemAttribType, true); + + bool serviceRegistered = false; + + foreach (MenuItemDeclarationAttribute menuItem in menuItems) + { + if (!String.IsNullOrEmpty(menuItem.Service)) + throw new InvalidOperationException(String.Format(TextResources.ExceptionMsg_Formatable3_MenuItemServiceAlreadySet, menuItem.Text, methodService, menuItem.Service)); + + if (!serviceRegistered) + { + PopulateMethodHooks(method, ServiceFunctions, new ServiceFunctionAttribute(methodService)); + serviceRegistered = true; + } + + menuItem.Service = methodService; + Plugin.MenuItemsCollection.Add(menuItem); + } + } + } + + #endregion + + #region Methods + + public override int GetHashCode() + { + return plugin.GetHashCode(); + } + + public override bool Equals(object obj) + { + if (obj == null || !(obj is PluginDescriptor)) + return false; + + return plugin.Equals(((PluginDescriptor)obj).plugin); + } + + public void SetPluginState(PluginState newState) + { + SetPluginState(newState, false); + } + + public void SetPluginState(PluginState newState, bool rememberState) + { + MirandaContext.Current.PluginManager.SetPluginState(this, newState, rememberState); + } + + internal void AssociateHook(HookDescriptor hook) + { + if (hook == null) + throw new ArgumentNullException("hook"); + + try + { + SynchronizationHelper.BeginDescriptorUpdate(this); + + switch (hook.HookType) + { + case HookType.EventHook: + eventHooks.Add(hook); + break; + case HookType.ServiceFunction: + serviceFunctions.Add(hook); + break; + default: + throw new ArgumentOutOfRangeException("hook"); + } + } + finally + { + SynchronizationHelper.EndUpdate(this); + } + } + + internal void UpdatePluginState(PluginState state) + { + if (!Enum.IsDefined(typeof(PluginState), state)) + throw new ArgumentOutOfRangeException("state"); + + PluginStateInternal = state; + } + + #endregion + + #region Properties + + public PluginState PluginState + { + get + { + return PluginStateInternal; + } + } + + public MirandaPlugin Plugin + { + get + { + return plugin; + } + } + + public bool IsStandalone + { + get + { + return plugin is StandalonePlugin; + } + } + + internal bool IsConfigurable + { + get + { + return plugin.HasOptions && plugin is IConfigurablePlugin; + } + } + + internal HookDescriptorCollection EventHooks + { + get + { + return eventHooks; + } + } + + internal HookDescriptorCollection ServiceFunctions + { + get + { + return serviceFunctions; + } + } + + internal EventHandleCollection EventHandles + { + get + { + return eventHandles; + } + } + + #endregion + } +} diff --git a/Hyphen/Plugins/PluginManagerBase.cs b/Hyphen/Plugins/PluginManagerBase.cs new file mode 100644 index 0000000..19dc9a5 --- /dev/null +++ b/Hyphen/Plugins/PluginManagerBase.cs @@ -0,0 +1,467 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Diagnostics; +using System.Reflection; +using System.Windows.Forms; +using Virtuoso.Hyphen; +using Virtuoso.Hyphen.Mini; +using Virtuoso.Miranda.Plugins.Collections; +using Virtuoso.Miranda.Plugins.Forms; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins +{ + [CLSCompliant(false)] + public abstract class PluginManagerBase : ContextWorker, IExceptionHandler + { + #region Constants + + internal const string LogCategory = Loader.LogCategory + "::PluginManagerBase"; + + #endregion + + #region Fields + + protected internal static readonly Type PluginType = typeof(MirandaPlugin); + protected internal static readonly Type ExposingPluginAttributeType = typeof(ExposingPluginAttribute); + + private bool initialized; + private readonly PluginDescriptorCollection pluginDescriptors; + private readonly AppDomain livingDomain; + private readonly PluginDescriptorReadOnlyCollection pluginDescriptorsAsReadOnly; + private readonly FusionContext fusionContext; + + #endregion + + #region .ctors + + protected PluginManagerBase(FusionContext fusionContext) : this(fusionContext, true, true) { } + + internal PluginManagerBase(FusionContext fusionContext, bool initializeMirandaContext, bool initializeConfiguration) + { + if (fusionContext == null) + throw new ArgumentNullException("fusionContext"); + + this.livingDomain = AppDomain.CurrentDomain; + this.fusionContext = fusionContext; + + this.pluginDescriptors = new PluginDescriptorCollection(); + this.pluginDescriptorsAsReadOnly = new PluginDescriptorReadOnlyCollection(this.pluginDescriptors); + + if (initializeMirandaContext) + { + if (!fusionContext.IsInvalid) + { + IntPtr pluginLink = fusionContext.NativePluginLink; + + // Invalidate IsolatedPluginsSandbox's AppDomain context available to managed plugins + MirandaContext.InvalidateCurrent(); + + /* Why am I marshaling the link again? 'Cause MirandaPluginLink resides in another AppDomain + * and se/de-serialization of it would be much slower */ + MirandaContext.InitializeCurrent(MirandaPluginLink.FromPointer(pluginLink), this); + } + else + throw new ArgumentException("fusionContext"); + } + + if (initializeConfiguration) + PMConfiguration.Initialize(); + } + + #endregion + + #region Events & delegates + + public delegate void PluginManagerContextCallback(PluginManagerBase sender, T state); + + public static event EventHandler PrimaryPluginManagerInitialized; + public event EventHandler FusionCompleted; + public event EventHandler PluginStateChange; + + protected static void FirePrimaryPluginManagerInitializedEvent(PluginManagerBase sender, EventArgs e) + { + if (PrimaryPluginManagerInitialized != null) + PrimaryPluginManagerInitialized(sender, e); + } + + protected void RaiseFusionCompletedEvent(EventArgs e) + { + if (FusionCompleted != null) + FusionCompleted(this, e); + } + + protected void FirePluginStateChangeEvent(PluginStateChangeEventArgs e) + { + if (PluginStateChange != null) + PluginStateChange(this, e); + } + + #endregion + + #region Properties + + protected bool Initialized + { + get + { + return initialized; + } + } + + protected PluginDescriptorCollection PluginDescriptors + { + get { return pluginDescriptors; } + } + + protected AppDomain LivingDomain + { + get + { + return livingDomain; + } + } + + public PluginDescriptorReadOnlyCollection Plugins + { + get + { + return pluginDescriptorsAsReadOnly; + } + } + + public FusionContext FusionContext + { + get + { + return fusionContext; + } + } + + #endregion + + #region Fusion + + protected internal abstract void FindAndLoadPlugins(); + + protected internal static Type[] GetExposedPlugins(Assembly assembly) + { + if (!assembly.IsDefined(ExposingPluginAttributeType, false)) + return new Type[0]; + + return Array.ConvertAll((ExposingPluginAttribute[])assembly.GetCustomAttributes(PluginManagerBase.ExposingPluginAttributeType, false), + delegate(ExposingPluginAttribute attrib) + { + return attrib.PluginType; + }); + } + + protected void DeclareInitialized() + { + initialized = true; + } + + protected virtual void AccountPluginDescriptor(PluginDescriptor pluginDescriptor) + { + if (pluginDescriptor == null) + throw new ArgumentNullException("pluginDescriptor"); + + try + { + SynchronizationHelper.BeginCollectionUpdate(pluginDescriptors); + + if (pluginDescriptors.ContainsDescriptorOf(pluginDescriptor.Plugin)) + throw new InvalidOperationException(TextResources.ExceptionMsg_PluginAlreadyInitialized); + + pluginDescriptors.Add(pluginDescriptor); + } + finally + { + SynchronizationHelper.EndUpdate(pluginDescriptors); + } + } + + protected internal static MirandaPlugin InstantiatePlugin(Type type) + { + return InstantiatePlugin(type, false); + } + + internal static MirandaPlugin InstantiatePlugin(Type type, bool acceptIndividualPlugins) + { + if (type == null) + throw new ArgumentNullException("type"); + + if (!type.IsSubclassOf(PluginType) || (!acceptIndividualPlugins && type.IsSubclassOf(StandalonePlugin.PluginType))) + return null; + + LoaderOptionsAttribute loaderOptions = LoaderOptionsAttribute.Get(type, LoaderOptionsOwner.Type); + + if (loaderOptions.RequiredVersion > Loader.HyphenVersion) + throw new RuntimeNotSupportedException(type, loaderOptions.RequiredVersion); + + if (!loaderOptions.SupportsMirandaVersion(MirandaEnvironment.MirandaVersion)) + throw new RuntimeNotSupportedException(type, loaderOptions.MinimalMirandaVersion, false); + + return (MirandaPlugin)Activator.CreateInstance(type, true); + } + + protected static void RegisterMenuItems(PluginDescriptor pluginDescriptor) + { + try + { + SynchronizationHelper.BeginDescriptorUpdate(pluginDescriptor); + MirandaPlugin owner = pluginDescriptor.Plugin; + + ContactList list = MirandaContext.Current.ContactList; + + foreach (MenuItemDeclarationAttribute menuItemAttrib in owner.MenuItemsCollection) + list.AddMenuItem(owner, menuItemAttrib); + } + finally + { + SynchronizationHelper.EndUpdate(pluginDescriptor); + } + } + + protected static void UnregisterMenuItems(PluginDescriptor pluginDescriptor) + { + try + { + SynchronizationHelper.BeginDescriptorUpdate(pluginDescriptor); + MirandaPlugin owner = pluginDescriptor.Plugin; + + ContactList list = MirandaContext.Current.ContactList; + + foreach (MenuItemDeclarationAttribute menuItemAttrib in owner.MenuItems) + { + bool result = list.ModifyMenuItem(owner, menuItemAttrib, null, MenuItemProperties.Hidden, null, 0, false); + Debug.Assert(result); + } + } + finally + { + SynchronizationHelper.EndUpdate(pluginDescriptor); + } + } + + protected void HookPlugin(PluginDescriptor pluginDescriptor) + { + try + { + SynchronizationHelper.BeginDescriptorUpdate(pluginDescriptor); + + MirandaContext context = MirandaContext.Current; + + HookManager.CreateHooks(pluginDescriptor.ServiceFunctions.ToArray()); + HookManager.CreateHooks(pluginDescriptor.EventHooks.ToArray()); + } + finally + { + SynchronizationHelper.EndUpdate(pluginDescriptor); + } + } + + #endregion + + #region Management + + public void DoContextCallback(PluginManagerContextCallback del, T state) + { + if (del == null) + throw new ArgumentNullException("del"); + + del(this, state); + } + + public virtual void SetPluginState(PluginDescriptor pluginDescriptor, PluginState newState) + { + SetPluginState(pluginDescriptor, newState, false); + } + + public virtual void SetPluginState(PluginDescriptor pluginDescriptor, PluginState newState, bool rememberState) + { + try + { + SynchronizationHelper.BeginDescriptorUpdate(pluginDescriptor); + PluginState previousState = pluginDescriptor.PluginState; + + if (previousState == newState || previousState == PluginState.CrashDisabled && newState != PluginState.Enabled) + return; + + pluginDescriptor.UpdatePluginState(newState); + FirePluginStateChangeEvent(new PluginStateChangeEventArgs(previousState, newState)); + + if (newState == PluginState.Enabled) + EnablePlugin(pluginDescriptor, rememberState); + else + DisablePlugin(pluginDescriptor, rememberState); + } + finally + { + SynchronizationHelper.EndUpdate(pluginDescriptor); + } + } + + public PluginDescriptor LoadPlugin(MirandaPlugin plugin) + { + return LoadPlugin(plugin, true); + } + + #region Internals + + private void EnablePlugin(PluginDescriptor pluginDescriptor, bool rememberState) + { + HookPlugin(pluginDescriptor); + RegisterMenuItems(pluginDescriptor); + + pluginDescriptor.Plugin.AfterPluginEnableInternal(); + + if (rememberState) + { + List disabledPlugins = PMConfiguration.Singleton.DisabledPlugins; + + lock (disabledPlugins) + disabledPlugins.Remove(pluginDescriptor.Plugin.UniqueName); + } + } + + private void DisablePlugin(PluginDescriptor pluginDescriptor, bool rememberState) + { + pluginDescriptor.Plugin.BeforePluginDisableInternal(); + + PluginDialog.CloseDialogs(pluginDescriptor, true); + UnregisterMenuItems(pluginDescriptor); + + lock (MirandaContext.Current.PluginLink) + { + UnhookEvents(pluginDescriptor); + DestroyServices(pluginDescriptor); + DestroyEvents(pluginDescriptor); + } + + if (rememberState) + { + string typeName = pluginDescriptor.Plugin.UniqueName; + List disabledPlugins = PMConfiguration.Singleton.DisabledPlugins; + + lock (disabledPlugins) + if (!disabledPlugins.Contains(typeName)) + disabledPlugins.Add(typeName); + } + } + + protected bool IsEnabled(MirandaPlugin plugin) + { + if (plugin == null) + throw new ArgumentNullException("plugin"); + + List disabledPlugins = PMConfiguration.Singleton.DisabledPlugins; + + lock (disabledPlugins) + return !disabledPlugins.Contains(plugin.UniqueName); + } + + private static void DestroyEvents(PluginDescriptor pluginDescriptor) + { + foreach (EventHandle handle in pluginDescriptor.EventHandles) + { + try + { + SynchronizationHelper.BeginHandleUpdate(handle); + EventManager.RemoveEvent(handle); + } + finally + { + SynchronizationHelper.EndUpdate(handle); + } + } + } + + private static void DestroyServices(PluginDescriptor pluginDescriptor) + { + int result = 0; + MirandaContext context = MirandaContext.Current; + + foreach (HookDescriptor hook in pluginDescriptor.ServiceFunctions) + HookManager.DestroyHook(hook); + } + + private static void UnhookEvents(PluginDescriptor pluginDescriptor) + { + int result = 0; + MirandaContext context = MirandaContext.Current; + + foreach (HookDescriptor hookDesc in pluginDescriptor.EventHooks) + HookManager.DestroyHook(hookDesc); + } + + protected internal virtual void Shutdown(bool lazy) + { + try + { + Log.DebuggerWrite(0, LogCategory, "Shutting down Plugin Manager..."); + SynchronizationHelper.BeginCollectionUpdate(this.pluginDescriptors); + + PMConfiguration.Singleton.Save(); + + if (!lazy) + { + MirandaContext.Current.RaiseIsolatedModePluginsUnloadingEvent(); + + foreach (PluginDescriptor pluginDescriptor in this.pluginDescriptors) + SetPluginState(pluginDescriptor, PluginState.Disabled); + } + } + finally + { + SynchronizationHelper.EndUpdate(this.pluginDescriptors); + Log.DebuggerWrite(0, LogCategory, "Plugin Manager was shut down; all managed plugins were disabled"); + } + } + + protected internal virtual PluginDescriptor LoadPlugin(MirandaPlugin plugin, bool accountDescriptor) + { + PluginDescriptor descriptor = PluginDescriptor.SetUp(plugin); + + if (accountDescriptor) + AccountPluginDescriptor(descriptor); + + return descriptor; + } + + public virtual void HandleException(Exception e, PluginDescriptor descriptor) + { + if (descriptor != null) + { + if (DialogResult.OK == ErrorDialog.PresentModal(e, DefaultExceptionHandler.Create(descriptor.Plugin), String.Format(TextResources.MsgBox_Formatable2_Text_PluginError, Environment.NewLine, descriptor.Plugin.Name, e.Message), true)) + descriptor.SetPluginState(PluginState.CrashDisabled); + } + else + { + DefaultExceptionHandler.Create().HandleException(e, descriptor); + } + } + + #endregion + + #endregion + } +} diff --git a/Hyphen/Plugins/PluginStateChangeEventArgs.cs b/Hyphen/Plugins/PluginStateChangeEventArgs.cs new file mode 100644 index 0000000..5eaadc9 --- /dev/null +++ b/Hyphen/Plugins/PluginStateChangeEventArgs.cs @@ -0,0 +1,52 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins +{ + public class PluginStateChangeEventArgs : EventArgs + { + #region Fields + + private readonly PluginState previousState, currentState; + + public PluginState CurrentState + { + get { return currentState; } + } + + public PluginState PreviousState + { + get { return previousState; } + } + + #endregion + + #region .ctors + + public PluginStateChangeEventArgs(PluginState previous, PluginState current) + { + this.previousState = previous; + this.currentState = current; + } + + #endregion + } +} diff --git a/Hyphen/Plugins/Plugins.csproj b/Hyphen/Plugins/Plugins.csproj new file mode 100644 index 0000000..45f4733 --- /dev/null +++ b/Hyphen/Plugins/Plugins.csproj @@ -0,0 +1,481 @@ + + + + Debug + AnyCPU + 9.0.30729 + 2.0 + {319EA506-200F-48DE-92D7-64D09D7CA477} + Library + Properties + Virtuoso.Miranda.Plugins + Hyphen + OnOutputUpdated + false + Virtuoso.Hyphen.snk + + + 3.5 + + + v3.5 + veröffentlichen\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + + true + full + false + bin\ + TRACE;DEBUG + prompt + 4 + true + bin\Hyphen.xml + false + + + 1591 + x86 + false + + + pdbonly + true + bin\ + TRACE + prompt + 4 + true + false + bin\Hyphen.XML + x86 + false + + + + + + + + + + + False + ..\Thirdparty\TabStripControlLibrary.dll + + + + + + Module.cs + + + + + + + + + + + + + + + + + + + + + + + Component + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Form + + + ErrorDialog.cs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + True + True + TextResources.resx + + + True + True + VisualResources.resx + + + + + + Designer + ErrorDialog.cs + + + Designer + ResXFileCodeGenerator + TextResources.Designer.cs + + + + + + Designer + ResXFileCodeGenerator + VisualResources.Designer.cs + + + + + + + + + + + + UserControl + + + PluginManagementContent.cs + + + Form + + + ConfigurationDialog.cs + + + + + UserControl + + + CategoryItemHeader.cs + + + UserControl + + + UserControl + + + + + UserControl + + + CategoryItemSection.cs + + + + + + + + + + + Component + + + Component + + + Component + + + Component + + + Component + + + Component + + + + Form + + + FusionProgressDialog.cs + + + Form + + + InformationDialog.cs + + + + Form + + + Form + + + Form + + + + + + UserControl + + + AboutContent.cs + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Form + + + + + + + + + + + + + + + + MirandaPlugin.cs + + + + + + + + True + True + Resources.resx + + + True + True + Settings.settings + + + + + + + + + + + + + + Designer + PluginManagementContent.cs + + + Designer + CategoryItemHeader.cs + + + Designer + CategoryItemSection.cs + + + Designer + ContactListView.cs + + + Designer + AboutContent.cs + + + + + + + + + + + + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + + + + + Designer + ConfigurationDialog.cs + + + CategoryItemControl.cs + Designer + + + Designer + CommandButton.cs + + + Designer + TrayContextMenu.cs + + + Designer + FusionProgressDialog.cs + + + InformationDialog.cs + Designer + + + Designer + ResXFileCodeGenerator + Resources.Designer.cs + + + + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + true + + + + + + + if not exist IL mkdir IL +"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64\ildasm.exe" /linenum "$(TargetFileName)" /out="IL\$(ProjectName).il" + + \ No newline at end of file diff --git a/Hyphen/Plugins/Plugins.csproj.user b/Hyphen/Plugins/Plugins.csproj.user new file mode 100644 index 0000000..521cb3c --- /dev/null +++ b/Hyphen/Plugins/Plugins.csproj.user @@ -0,0 +1,13 @@ + + + + + + + + + + de-DE + false + + \ No newline at end of file diff --git a/Hyphen/Plugins/Plugins.sln b/Hyphen/Plugins/Plugins.sln new file mode 100644 index 0000000..3a81226 --- /dev/null +++ b/Hyphen/Plugins/Plugins.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Plugins", "Plugins.csproj", "{319EA506-200F-48DE-92D7-64D09D7CA477}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {319EA506-200F-48DE-92D7-64D09D7CA477}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Debug|Any CPU.Build.0 = Debug|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Release|Any CPU.ActiveCfg = Release|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Hyphen/Plugins/Plugins.v11.suo b/Hyphen/Plugins/Plugins.v11.suo new file mode 100644 index 0000000..cb571b7 Binary files /dev/null and b/Hyphen/Plugins/Plugins.v11.suo differ diff --git a/Hyphen/Plugins/Properties/AssemblyInfo.cs b/Hyphen/Plugins/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..20469fd --- /dev/null +++ b/Hyphen/Plugins/Properties/AssemblyInfo.cs @@ -0,0 +1,67 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; +using System; +using System.Security.Permissions; +using System.Security; + +[assembly: SecurityPermission(SecurityAction.RequestMinimum, Flags = SecurityPermissionFlag.ControlAppDomain | SecurityPermissionFlag.ControlDomainPolicy | SecurityPermissionFlag.ControlThread | SecurityPermissionFlag.Execution | SecurityPermissionFlag.UnmanagedCode)] + +// HyphenVersion information for an assembly consists of the following four values: +// +// Major HyphenVersion +// Minor HyphenVersion +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: + +// ************************************************ // +// !! CHANGE THE CONFIG FILE + .MINI VERSION TOO !!! +// ************************************************ // +// x.x.YYYY.MMDD +[assembly: AssemblyVersion("0.8.3000." /* !!! CONFIG !!! */ + "00909" )] +[assembly: AssemblyFileVersion("0.8.3000.00909")] + +[assembly: InternalsVisibleTo("Virtuoso.Hyphen.Mini, PublicKey=00240000048000009400000006020000002400005253413100040000010001005d9bd3582d0c01dcd54854ac2f36c94f7bef235b2e2b5479248efddd65431bceef6c92d759d7f23f3692704cd18f0c5b7ee3436a0f7b9b2eaf8fbf205b85150d171a0fbb7658fb50c1531f6eee3ec70239ae38ac383dd742a754691c965cc23cd716618b8c89b25ca04402ea4a579a66bdf50335e4b6d2b0c72bd183328487b5")] +[assembly: InternalsVisibleTo("Virtuoso.Miranda.Plugins.UnitTests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100190e0cd0962bfe7835b22be43ce49acd109d5d0c0512534f74aaf01fcdb7712fca7b81b5048a51a43750fa8de5c168628c2e4f90acf43559bc328024265df53d5b21a61720c3be75e9a3b15046a4b0892f60a215e1cb8db467d84d2626100e7390a929f35b53c4f853d2523cfe87d484246ddf446c1849c6b5e430b12cc0b6aa")] + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Virtuoso.Hyphen")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("virtuoso")] +[assembly: AssemblyProduct("Virtuoso.Hyphen")] +[assembly: AssemblyCopyright("© 2006-2010, virtuoso")] +[assembly: AssemblyTrademark("virtuoso")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("00c91fc1-dc8e-473d-be9e-3c72289abdf2")] + +[assembly: CLSCompliant(true)] diff --git a/Hyphen/Plugins/Properties/Resources.Designer.cs b/Hyphen/Plugins/Properties/Resources.Designer.cs new file mode 100644 index 0000000..0755d13 --- /dev/null +++ b/Hyphen/Plugins/Properties/Resources.Designer.cs @@ -0,0 +1,103 @@ +//------------------------------------------------------------------------------ +// +// Dieser Code wurde von einem Tool generiert. +// Laufzeitversion:4.0.30319.18033 +// +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. +// +//------------------------------------------------------------------------------ + +namespace Virtuoso.Miranda.Plugins.Properties { + using System; + + + /// + /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + /// + // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Virtuoso.Miranda.Plugins.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Icon_232_32x32 { + get { + object obj = ResourceManager.GetObject("Icon 232_32x32", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Icon_256_32x32 { + get { + object obj = ResourceManager.GetObject("Icon 256_32x32", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap RibbonClick { + get { + object obj = ResourceManager.GetObject("RibbonClick", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap RibbonHover { + get { + object obj = ResourceManager.GetObject("RibbonHover", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + } +} diff --git a/Hyphen/Plugins/Properties/Resources.resx b/Hyphen/Plugins/Properties/Resources.resx new file mode 100644 index 0000000..1eac7ee --- /dev/null +++ b/Hyphen/Plugins/Properties/Resources.resx @@ -0,0 +1,133 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + ..\Resources\RibbonHover.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\RibbonClick.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\Icon 256_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\Icon 232_32x32.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + \ No newline at end of file diff --git a/Hyphen/Plugins/Properties/Settings.Designer.cs b/Hyphen/Plugins/Properties/Settings.Designer.cs new file mode 100644 index 0000000..162fc54 --- /dev/null +++ b/Hyphen/Plugins/Properties/Settings.Designer.cs @@ -0,0 +1,62 @@ +//------------------------------------------------------------------------------ +// +// Dieser Code wurde von einem Tool generiert. +// Laufzeitversion:4.0.30319.18033 +// +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. +// +//------------------------------------------------------------------------------ + +namespace Virtuoso.Miranda.Plugins.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("False")] + public bool ConfigurationDialog_HideExpertOptions_Checked { + get { + return ((bool)(this["ConfigurationDialog_HideExpertOptions_Checked"])); + } + set { + this["ConfigurationDialog_HideExpertOptions_Checked"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("Tile")] + public global::System.Windows.Forms.View ConfigurationPanel_CategoryItems_View { + get { + return ((global::System.Windows.Forms.View)(this["ConfigurationPanel_CategoryItems_View"])); + } + set { + this["ConfigurationPanel_CategoryItems_View"] = value; + } + } + + [global::System.Configuration.UserScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("792, 562")] + public global::System.Drawing.Size ConfigurationDialog_ClientSize { + get { + return ((global::System.Drawing.Size)(this["ConfigurationDialog_ClientSize"])); + } + set { + this["ConfigurationDialog_ClientSize"] = value; + } + } + } +} diff --git a/Hyphen/Plugins/Properties/Settings.settings b/Hyphen/Plugins/Properties/Settings.settings new file mode 100644 index 0000000..6e9b1b5 --- /dev/null +++ b/Hyphen/Plugins/Properties/Settings.settings @@ -0,0 +1,15 @@ + + + + + + False + + + Tile + + + 792, 562 + + + \ No newline at end of file diff --git a/Hyphen/Plugins/PublicKey.txt b/Hyphen/Plugins/PublicKey.txt new file mode 100644 index 0000000..a88fa9f --- /dev/null +++ b/Hyphen/Plugins/PublicKey.txt @@ -0,0 +1,3 @@ +0024000004800000940000000602000000240000525341310004000001000100190e0cd0962bfe7835b22be43ce49acd109d5d0c0512534f74aaf01fcdb7712fca7b81b5048a51a43750fa8de5c168628c2e4f90acf43559bc328024265df53d5b21a61720c3be75e9a3b15046a4b0892f60a215e1cb8db467d84d2626100e7390a929f35b53c4f853d2523cfe87d484246ddf446c1849c6b5e430b12cc0b6aa + +Public key token is 87bb0d20451dfb58 \ No newline at end of file diff --git a/Hyphen/Plugins/Resources/Configure.ico b/Hyphen/Plugins/Resources/Configure.ico new file mode 100644 index 0000000..0ed7851 Binary files /dev/null and b/Hyphen/Plugins/Resources/Configure.ico differ diff --git a/Hyphen/Plugins/Resources/Configure.png b/Hyphen/Plugins/Resources/Configure.png new file mode 100644 index 0000000..f29600a Binary files /dev/null and b/Hyphen/Plugins/Resources/Configure.png differ diff --git a/Hyphen/Plugins/Resources/Engine.ico b/Hyphen/Plugins/Resources/Engine.ico new file mode 100644 index 0000000..521e141 Binary files /dev/null and b/Hyphen/Plugins/Resources/Engine.ico differ diff --git a/Hyphen/Plugins/Resources/Icon 047_64x67.png b/Hyphen/Plugins/Resources/Icon 047_64x67.png new file mode 100644 index 0000000..1bade22 Binary files /dev/null and b/Hyphen/Plugins/Resources/Icon 047_64x67.png differ diff --git a/Hyphen/Plugins/Resources/Icon 232_32x32.png b/Hyphen/Plugins/Resources/Icon 232_32x32.png new file mode 100644 index 0000000..c959976 Binary files /dev/null and b/Hyphen/Plugins/Resources/Icon 232_32x32.png differ diff --git a/Hyphen/Plugins/Resources/Icon 232_64x67.png b/Hyphen/Plugins/Resources/Icon 232_64x67.png new file mode 100644 index 0000000..3805c63 Binary files /dev/null and b/Hyphen/Plugins/Resources/Icon 232_64x67.png differ diff --git a/Hyphen/Plugins/Resources/Icon 244_48x48.png b/Hyphen/Plugins/Resources/Icon 244_48x48.png new file mode 100644 index 0000000..36999ce Binary files /dev/null and b/Hyphen/Plugins/Resources/Icon 244_48x48.png differ diff --git a/Hyphen/Plugins/Resources/Icon 2466.ico b/Hyphen/Plugins/Resources/Icon 2466.ico new file mode 100644 index 0000000..12bec5e Binary files /dev/null and b/Hyphen/Plugins/Resources/Icon 2466.ico differ diff --git a/Hyphen/Plugins/Resources/Icon 256_32x32.png b/Hyphen/Plugins/Resources/Icon 256_32x32.png new file mode 100644 index 0000000..7e84c2d Binary files /dev/null and b/Hyphen/Plugins/Resources/Icon 256_32x32.png differ diff --git a/Hyphen/Plugins/Resources/Icon 256_64x67.png b/Hyphen/Plugins/Resources/Icon 256_64x67.png new file mode 100644 index 0000000..a3b4fc0 Binary files /dev/null and b/Hyphen/Plugins/Resources/Icon 256_64x67.png differ diff --git a/Hyphen/Plugins/Resources/Icon 3048.ico b/Hyphen/Plugins/Resources/Icon 3048.ico new file mode 100644 index 0000000..ac40911 Binary files /dev/null and b/Hyphen/Plugins/Resources/Icon 3048.ico differ diff --git a/Hyphen/Plugins/Resources/LoadUnloadPlugins.ico b/Hyphen/Plugins/Resources/LoadUnloadPlugins.ico new file mode 100644 index 0000000..6593b82 Binary files /dev/null and b/Hyphen/Plugins/Resources/LoadUnloadPlugins.ico differ diff --git a/Hyphen/Plugins/Resources/RibbonClick.png b/Hyphen/Plugins/Resources/RibbonClick.png new file mode 100644 index 0000000..3c8f85b Binary files /dev/null and b/Hyphen/Plugins/Resources/RibbonClick.png differ diff --git a/Hyphen/Plugins/Resources/RibbonHover.png b/Hyphen/Plugins/Resources/RibbonHover.png new file mode 100644 index 0000000..7f5b6bc Binary files /dev/null and b/Hyphen/Plugins/Resources/RibbonHover.png differ diff --git a/Hyphen/Plugins/Resources/ShowManagedMenuItems.ico b/Hyphen/Plugins/Resources/ShowManagedMenuItems.ico new file mode 100644 index 0000000..3dd0b50 Binary files /dev/null and b/Hyphen/Plugins/Resources/ShowManagedMenuItems.ico differ diff --git a/Hyphen/Plugins/Resources/TextResources.Designer.cs b/Hyphen/Plugins/Resources/TextResources.Designer.cs new file mode 100644 index 0000000..3aa1380 --- /dev/null +++ b/Hyphen/Plugins/Resources/TextResources.Designer.cs @@ -0,0 +1,900 @@ +//------------------------------------------------------------------------------ +// +// Dieser Code wurde von einem Tool generiert. +// Laufzeitversion:4.0.30319.18033 +// +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. +// +//------------------------------------------------------------------------------ + +namespace Virtuoso.Miranda.Plugins.Resources { + using System; + + + /// + /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + /// + // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class TextResources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal TextResources() { + } + + /// + /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Virtuoso.Miranda.Plugins.Resources.TextResources", typeof(TextResources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins are enabled and ready to use. ähnelt. + /// + internal static string Balloon_Text_FusionFinished { + get { + return ResourceManager.GetString("Balloon_Text_FusionFinished", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die General ähnelt. + /// + internal static string Config_General { + get { + return ResourceManager.GetString("Config_General", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die About ähnelt. + /// + internal static string Config_General_About { + get { + return ResourceManager.GetString("Config_General_About", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Show Hyphen copyright information. ähnelt. + /// + internal static string Config_General_About_Description { + get { + return ResourceManager.GetString("Config_General_About_Description", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Review Hyphen information. ähnelt. + /// + internal static string Config_General_Description { + get { + return ResourceManager.GetString("Config_General_Description", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Management ähnelt. + /// + internal static string Config_Management { + get { + return ResourceManager.GetString("Config_Management", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Manage Hyphen plugins. ähnelt. + /// + internal static string Config_Management_Description { + get { + return ResourceManager.GetString("Config_Management_Description", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Plugins ähnelt. + /// + internal static string Config_Management_Plugins { + get { + return ResourceManager.GetString("Config_Management_Plugins", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Enable or disable Hyphen plugins on individual basis. ähnelt. + /// + internal static string Config_Management_Plugins_Description { + get { + return ResourceManager.GetString("Config_Management_Plugins_Description", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die This operation is not supported for an unknown protocol. ähnelt. + /// + internal static string ExceptionMsg_CallInvalidForUnknownNetworkProtocol { + get { + return ResourceManager.GetString("ExceptionMsg_CallInvalidForUnknownNetworkProtocol", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot detect the default string encoding used in Miranda. ähnelt. + /// + internal static string ExceptionMsg_CannotDetectMirandaDefaultStringEncoding { + get { + return ResourceManager.GetString("ExceptionMsg_CannotDetectMirandaDefaultStringEncoding", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An internal error occurred in the PluginManager while working with unmanaged memory. Contact Hyphen vendor, please. ähnelt. + /// + internal static string ExceptionMsg_CannotFinishMarshaling { + get { + return ResourceManager.GetString("ExceptionMsg_CannotFinishMarshaling", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occurred while opening plugin home page. ähnelt. + /// + internal static string ExceptionMsg_CannotOpenHomePage { + get { + return ResourceManager.GetString("ExceptionMsg_CannotOpenHomePage", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot register/unregister builtin protocol. Only custom protocol can be registered/unregistered. ähnelt. + /// + internal static string ExceptionMsg_CannotRegisterBuiltinProtocol { + get { + return ResourceManager.GetString("ExceptionMsg_CannotRegisterBuiltinProtocol", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Unable to initialize Hyphen configuration. ähnelt. + /// + internal static string ExceptionMsg_ConfigurationFailed { + get { + return ResourceManager.GetString("ExceptionMsg_ConfigurationFailed", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Duplicit loader options detected. RequiredVersion or MinimalMirandaVersion were set by a base class previously. ähnelt. + /// + internal static string ExceptionMsg_DuplicitLoaderOptions { + get { + return ResourceManager.GetString("ExceptionMsg_DuplicitLoaderOptions", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot complete the service call. ähnelt. + /// + internal static string ExceptionMsg_ErrorWhileCallingMirandaService { + get { + return ResourceManager.GetString("ExceptionMsg_ErrorWhileCallingMirandaService", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occurred while loading plugins. ähnelt. + /// + internal static string ExceptionMsg_ErrorWhileLoadingPlugins { + get { + return ResourceManager.GetString("ExceptionMsg_ErrorWhileLoadingPlugins", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die The feature is not available from current domain. ähnelt. + /// + internal static string ExceptionMsg_FeatureNotAvailableInDomain { + get { + return ResourceManager.GetString("ExceptionMsg_FeatureNotAvailableInDomain", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - {1} ähnelt. + /// + internal static string ExceptionMsg_Formatable1_AssemblyLoadError { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_AssemblyLoadError", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot load string resolver of type '{0}'. Check if there is a public default .ctor. ähnelt. + /// + internal static string ExceptionMsg_Formatable1_CannotLoadStringResolver { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_CannotLoadStringResolver", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Failed hooking event '{0}'. Check event name. ähnelt. + /// + internal static string ExceptionMsg_Formatable1_EventHookingFailed { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_EventHookingFailed", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - this plugin cannot be loaded automatically. ähnelt. + /// + internal static string ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Unable to process method '{0}' - method signature does not match required delegate signature. ähnelt. + /// + internal static string ExceptionMsg_Formatable1_InvalidMethodSignature { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_InvalidMethodSignature", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot instantiate plugin type '{0}' - no valid constructor found. ähnelt. + /// + internal static string ExceptionMsg_Formatable1_NoValidPluginCtorFound { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_NoValidPluginCtorFound", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot create service function '{0}' - the service already exists. ähnelt. + /// + internal static string ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Failed creating service function '{0}'. ähnelt. + /// + internal static string ExceptionMsg_Formatable1_ServiceFunctionCreationFailed { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_ServiceFunctionCreationFailed", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Master type for the {0} standalone plugin proxy not found. ähnelt. + /// + internal static string ExceptionMsg_Formatable1_UnableToLoadMasterType { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_UnableToLoadMasterType", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Unable to initialize plugin descriptor - {0} ähnelt. + /// + internal static string ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occurred while instantiating plugin type '{0}' - Hyphen is not allowed to load the plugin. ähnelt. + /// + internal static string ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - the image is not a valid CLI assembly. ähnelt. + /// + internal static string ExceptionMsg_Formatable1_UnmanagedImageFound { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable1_UnmanagedImageFound", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occurred while instantiating plugin type '{0}' - constructor threw an exception ({1}). ähnelt. + /// + internal static string ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot complete requested operation - Miranda service '{0}' returned {1}. ähnelt. + /// + internal static string ExceptionMsg_Formatable2_MirandaServiceReturnedFailure { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable2_MirandaServiceReturnedFailure", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Plugin {0} requires {1} but this version is not available, the plugin cannot be loaded. Please download the latest version. ähnelt. + /// + internal static string ExceptionMsg_Formatable2_RuntimeVersionNotAvailable { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable2_RuntimeVersionNotAvailable", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot associate menu item '{0}' with method '{1}' - the item is already associated with service '{2}'. ähnelt. + /// + internal static string ExceptionMsg_Formatable3_MenuItemServiceAlreadySet { + get { + return ResourceManager.GetString("ExceptionMsg_Formatable3_MenuItemServiceAlreadySet", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Hook not found. ähnelt. + /// + internal static string ExceptionMsg_HookNotFound { + get { + return ResourceManager.GetString("ExceptionMsg_HookNotFound", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Multiple Hyphen plugins are not supported side-by-side. ähnelt. + /// + internal static string ExceptionMsg_HyphenSxSNotSupported { + get { + return ResourceManager.GetString("ExceptionMsg_HyphenSxSNotSupported", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An internal error occurred in Hyphen. Please contact Hyphen's author. ähnelt. + /// + internal static string ExceptionMsg_InternalErrorOccurred { + get { + return ResourceManager.GetString("ExceptionMsg_InternalErrorOccurred", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot access the InteropBuffer without locking it before. ähnelt. + /// + internal static string ExceptionMsg_InteropBufferNotLocked { + get { + return ResourceManager.GetString("ExceptionMsg_InteropBufferNotLocked", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot perform the requested operation on a locked buffer. ähnelt. + /// + internal static string ExceptionMsg_InteropBufferNotUnlocked { + get { + return ResourceManager.GetString("ExceptionMsg_InteropBufferNotUnlocked", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot unlock the buffer from a thread that does not locked it. ähnelt. + /// + internal static string ExceptionMsg_InvalidCrossThreadInteropBufferUnlock { + get { + return ResourceManager.GetString("ExceptionMsg_InvalidCrossThreadInteropBufferUnlock", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Invalid fusion context. ähnelt. + /// + internal static string ExceptionMsg_InvalidFusionContext { + get { + return ResourceManager.GetString("ExceptionMsg_InvalidFusionContext", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die The handle is invalid. ähnelt. + /// + internal static string ExceptionMsg_InvalidHandle { + get { + return ResourceManager.GetString("ExceptionMsg_InvalidHandle", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot translate this value - invalid value address or value format. ähnelt. + /// + internal static string ExceptionMsg_InvalidValueToTranslate { + get { + return ResourceManager.GetString("ExceptionMsg_InvalidValueToTranslate", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot load plugins - I/O error occurred. Check if you have permissions to access the 'Miranda\plugins\managed' directory. ähnelt. + /// + internal static string ExceptionMsg_IOErrorOccurred { + get { + return ResourceManager.GetString("ExceptionMsg_IOErrorOccurred", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Miranda context has not been initialized yet. The context will be initialialized in the Load export, until then, context calls are not supported. ähnelt. + /// + internal static string ExceptionMsg_MirandaContextNotAvailable { + get { + return ResourceManager.GetString("ExceptionMsg_MirandaContextNotAvailable", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Miranda must be restarted. ähnelt. + /// + internal static string ExceptionMsg_MirandaRestartRequired { + get { + return ResourceManager.GetString("ExceptionMsg_MirandaRestartRequired", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot read the setting on behalf of the owning module - the owning module cannot be determined. ähnelt. + /// + internal static string ExceptionMsg_OwnerUnknown { + get { + return ResourceManager.GetString("ExceptionMsg_OwnerUnknown", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Internal error - cannot reinitialize already initialized plugin. ähnelt. + /// + internal static string ExceptionMsg_PluginAlreadyInitialized { + get { + return ResourceManager.GetString("ExceptionMsg_PluginAlreadyInitialized", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Already initialized. ähnelt. + /// + internal static string ExceptionMsg_PluginManagerAlreadyInitialized { + get { + return ResourceManager.GetString("ExceptionMsg_PluginManagerAlreadyInitialized", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Cannot complete requested operation - this plugin has not been loaded yet. ähnelt. + /// + internal static string ExceptionMsg_PluginNotInitialized { + get { + return ResourceManager.GetString("ExceptionMsg_PluginNotInitialized", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Internal error occurred, cannot return requested information. The singleton has not been initialized yet. ähnelt. + /// + internal static string ExceptionMsg_SingletonNotInitializedYet { + get { + return ResourceManager.GetString("ExceptionMsg_SingletonNotInitializedYet", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occurred while working with the Configuration Storage to load configuration. ähnelt. + /// + internal static string ExceptionMsg_UnableToLoadConfiguration_StorageError { + get { + return ResourceManager.GetString("ExceptionMsg_UnableToLoadConfiguration_StorageError", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occurred while working with the Configuration Storage to save configuration. ähnelt. + /// + internal static string ExceptionMsg_UnableToSaveConfiguration_StorageError { + get { + return ResourceManager.GetString("ExceptionMsg_UnableToSaveConfiguration_StorageError", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Unable to unload plugin manager - cannot initiate shutdown from its own AppDomain. ähnelt. + /// + internal static string ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain { + get { + return ResourceManager.GetString("ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Hyphen crashed ähnelt. + /// + internal static string MsgBox_Caption_HyphenCrashed { + get { + return ResourceManager.GetString("MsgBox_Caption_HyphenCrashed", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Unable to load Hyphen ähnelt. + /// + internal static string MsgBox_Caption_HyphenLoadFailed { + get { + return ResourceManager.GetString("MsgBox_Caption_HyphenLoadFailed", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins ähnelt. + /// + internal static string MsgBox_Caption_LoadUnloadPlugins { + get { + return ResourceManager.GetString("MsgBox_Caption_LoadUnloadPlugins", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Unable to load/unload plugins ähnelt. + /// + internal static string MsgBox_Caption_LoadUnloadPluginsFailure { + get { + return ResourceManager.GetString("MsgBox_Caption_LoadUnloadPluginsFailure", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die No options available ähnelt. + /// + internal static string MsgBox_Caption_NoOptionsAvailable { + get { + return ResourceManager.GetString("MsgBox_Caption_NoOptionsAvailable", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die No plugins enabled ähnelt. + /// + internal static string MsgBox_Caption_NoPluginsLoaded { + get { + return ResourceManager.GetString("MsgBox_Caption_NoPluginsLoaded", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Plugins updated ähnelt. + /// + internal static string MsgBox_Caption_PluginReloadComplete { + get { + return ResourceManager.GetString("MsgBox_Caption_PluginReloadComplete", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Runtime version problem ähnelt. + /// + internal static string MsgBox_Caption_RuntimeVersionNotAvailable { + get { + return ResourceManager.GetString("MsgBox_Caption_RuntimeVersionNotAvailable", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Warning ähnelt. + /// + internal static string MsgBox_Caption_Warning { + get { + return ResourceManager.GetString("MsgBox_Caption_Warning", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die {0} error ähnelt. + /// + internal static string MsgBox_Formatable1_Caption_PluginError { + get { + return ResourceManager.GetString("MsgBox_Formatable1_Caption_PluginError", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Plugin {0} updated ähnelt. + /// + internal static string MsgBox_Formatable1_Caption_PluginUpdated { + get { + return ResourceManager.GetString("MsgBox_Formatable1_Caption_PluginUpdated", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Unable to load Hyphen - {0} ähnelt. + /// + internal static string MsgBox_Formatable1_Text_HyphenLoadFailed { + get { + return ResourceManager.GetString("MsgBox_Formatable1_Text_HyphenLoadFailed", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occurred while loading/unloading managed plugins - {0}. ähnelt. + /// + internal static string MsgBox_Formatable1_Text_LoadUnloadPluginsFailure { + get { + return ResourceManager.GetString("MsgBox_Formatable1_Text_LoadUnloadPluginsFailure", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occured in the {0} plugin, some information may be lost. However, the plugin will continue running. ähnelt. + /// + internal static string MsgBox_Formatable1_Text_ModuleError { + get { + return ResourceManager.GetString("MsgBox_Formatable1_Text_ModuleError", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occurred in the {1} plugin - {2}{0}{0}Press OK to disable the plugin, otherwise press Cancel. ähnelt. + /// + internal static string MsgBox_Formatable2_Text_PluginError { + get { + return ResourceManager.GetString("MsgBox_Formatable2_Text_PluginError", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Some information may be lost. However, the plugin will continue running. ähnelt. + /// + internal static string MsgBox_Text_GenericPluginError { + get { + return ResourceManager.GetString("MsgBox_Text_GenericPluginError", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occured in Hyphen. Please, contact its author to resolve the issue. ähnelt. + /// + internal static string MsgBox_Text_HyphenCrashed { + get { + return ResourceManager.GetString("MsgBox_Text_HyphenCrashed", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die You are about to disable all Hyphen plugins. Are you sure? ähnelt. + /// + internal static string MsgBox_Text_LoadUnloadPlugins_Unload { + get { + return ResourceManager.GetString("MsgBox_Text_LoadUnloadPlugins_Unload", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die There was an error with Microsoft.net configuration files. These files are critical for Hyphen execution. The problem was corrected but Miranda must be restarted to apply changes. ähnelt. + /// + internal static string MsgBox_Text_MirandaRestartRequired { + get { + return ResourceManager.GetString("MsgBox_Text_MirandaRestartRequired", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die This plugin has no options to configure. ähnelt. + /// + internal static string MsgBox_Text_NoOptionsAvailable { + get { + return ResourceManager.GetString("MsgBox_Text_NoOptionsAvailable", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die To perform the task, you have to enable the plugins first. ähnelt. + /// + internal static string MsgBox_Text_NoPluginsLoaded { + get { + return ResourceManager.GetString("MsgBox_Text_NoPluginsLoaded", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins were successfully reloaded. ähnelt. + /// + internal static string MsgBox_Text_PluginReloadComplete { + get { + return ResourceManager.GetString("MsgBox_Text_PluginReloadComplete", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins were updated. Do you wish to reload them? ähnelt. + /// + internal static string MsgBox_Text_PluginUpdated { + get { + return ResourceManager.GetString("MsgBox_Text_PluginUpdated", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die An error occured while preparing the report. Copy the details and visit http://forums.miranda-im.org for assistance. ähnelt. + /// + internal static string MsgBox_Text_UnableToReportError { + get { + return ResourceManager.GetString("MsgBox_Text_UnableToReportError", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Configure ähnelt. + /// + internal static string UI_Caption_Configure { + get { + return ResourceManager.GetString("UI_Caption_Configure", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Error ähnelt. + /// + internal static string UI_Caption_Error { + get { + return ResourceManager.GetString("UI_Caption_Error", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die {0} crashed ähnelt. + /// + internal static string UI_Formatable1_Text_PluginCrashed { + get { + return ResourceManager.GetString("UI_Formatable1_Text_PluginCrashed", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die (no items / plugins loaded) ähnelt. + /// + internal static string UI_Label_Empty { + get { + return ResourceManager.GetString("UI_Label_Empty", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die (select a plugin) ähnelt. + /// + internal static string UI_Label_SelectPluginToDisplayDescr { + get { + return ResourceManager.GetString("UI_Label_SelectPluginToDisplayDescr", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die <unknown> ähnelt. + /// + internal static string UI_Label_Unknown { + get { + return ResourceManager.GetString("UI_Label_Unknown", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Options... ähnelt. + /// + internal static string UI_Text_ConfigureStandaloneModules { + get { + return ResourceManager.GetString("UI_Text_ConfigureStandaloneModules", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Hyphen ähnelt. + /// + internal static string UI_Text_Hyphen { + get { + return ResourceManager.GetString("UI_Text_Hyphen", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Enable or disable plugins ähnelt. + /// + internal static string UI_Text_LoadUnloadPlugins { + get { + return ResourceManager.GetString("UI_Text_LoadUnloadPlugins", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Manage plugins... ähnelt. + /// + internal static string UI_Text_ManagePlugins { + get { + return ResourceManager.GetString("UI_Text_ManagePlugins", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die No ähnelt. + /// + internal static string UI_Text_No { + get { + return ResourceManager.GetString("UI_Text_No", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Extra items... ähnelt. + /// + internal static string UI_Text_ShowManagedMainMenu { + get { + return ResourceManager.GetString("UI_Text_ShowManagedMainMenu", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Yes ähnelt. + /// + internal static string UI_Text_Yes { + get { + return ResourceManager.GetString("UI_Text_Yes", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Hyphen ähnelt. + /// + internal static string UI_ToolTip_HyphenTrayIcon { + get { + return ResourceManager.GetString("UI_ToolTip_HyphenTrayIcon", resourceCulture); + } + } + } +} diff --git a/Hyphen/Plugins/Resources/TextResources.resx b/Hyphen/Plugins/Resources/TextResources.resx new file mode 100644 index 0000000..9e4f849 --- /dev/null +++ b/Hyphen/Plugins/Resources/TextResources.resx @@ -0,0 +1,399 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + Hyphen plugins are enabled and ready to use. + + + This operation is not supported for an unknown protocol. + + + Cannot detect the default string encoding used in Miranda. + + + An internal error occurred in the PluginManager while working with unmanaged memory. Contact Hyphen vendor, please. + + + An error occurred while opening plugin home page. + + + Cannot complete the service call. + + + An error occurred while loading plugins. + + + Cannot load plugin '{0}' - {1} + + + Cannot load string resolver of type '{0}'. Check if there is a public default .ctor. + + + Failed hooking event '{0}'. Check event name. + + + Cannot load plugin '{0}' - this plugin cannot be loaded automatically. + + + Cannot instantiate plugin type '{0}' - no valid constructor found. + + + Failed creating service function '{0}'. + + + An error occurred while instantiating plugin type '{0}' - Hyphen is not allowed to load the plugin. + + + Cannot load plugin '{0}' - the image is not a valid CLI assembly. + + + An error occurred while instantiating plugin type '{0}' - constructor threw an exception ({1}). + + + Cannot complete requested operation - Miranda service '{0}' returned {1}. + + + An internal error occurred in Hyphen. Please contact Hyphen's author. + + + Cannot access the InteropBuffer without locking it before. + + + Cannot perform the requested operation on a locked buffer. + + + Cannot unlock the buffer from a thread that does not locked it. + + + Cannot translate this value - invalid value address or value format. + + + Cannot load plugins - I/O error occurred. Check if you have permissions to access the 'Miranda\plugins\managed' directory. + + + Internal error - cannot reinitialize already initialized plugin. + + + Cannot complete requested operation - this plugin has not been loaded yet. + + + Internal error occurred, cannot return requested information. The singleton has not been initialized yet. + + + Hyphen plugins + + + Unable to load/unload plugins + + + Unable to load Hyphen + + + An error occurred while loading/unloading managed plugins - {0}. + + + Unable to load Hyphen - {0} + + + You are about to disable all Hyphen plugins. Are you sure? + + + Error + + + (no items / plugins loaded) + + + <unknown> + + + Enable or disable plugins + + + Extra items... + + + Unable to initialize plugin descriptor - {0} + + + Unable to unload plugin manager - cannot initiate shutdown from its own AppDomain. + + + Plugin {0} updated + + + Hyphen plugins were updated. Do you wish to reload them? + + + Hyphen plugins were successfully reloaded. + + + Plugins updated + + + Unable to initialize Hyphen configuration. + + + Miranda must be restarted. + + + There was an error with Microsoft.net configuration files. These files are critical for Hyphen execution. The problem was corrected but Miranda must be restarted to apply changes. + + + Invalid fusion context. + + + Already initialized. + + + An error occurred in the {1} plugin - {2}{0}{0}Press OK to disable the plugin, otherwise press Cancel. + + + Plugin {0} requires {1} but this version is not available, the plugin cannot be loaded. Please download the latest version. + + + Runtime version problem + + + An error occurred while working with the Configuration Storage to load configuration. + + + An error occurred while working with the Configuration Storage to save configuration. + + + Miranda context has not been initialized yet. The context will be initialialized in the Load export, until then, context calls are not supported. + + + Configure + + + No options available + + + This plugin has no options to configure. + + + (select a plugin) + + + Cannot register/unregister builtin protocol. Only custom protocol can be registered/unregistered. + + + Master type for the {0} standalone plugin proxy not found. + + + Hyphen + + + Cannot associate menu item '{0}' with method '{1}' - the item is already associated with service '{2}'. + + + Cannot create service function '{0}' - the service already exists. + + + Unable to process method '{0}' - method signature does not match required delegate signature. + + + Multiple Hyphen plugins are not supported side-by-side. + + + Hyphen crashed + + + An error occured in Hyphen. Please, contact its author to resolve the issue. + + + Cannot read the setting on behalf of the owning module - the owning module cannot be determined. + + + Options... + + + Hyphen + + + General + + + About + + + Show Hyphen copyright information. + + + Review Hyphen information. + + + Management + + + Plugins + + + Enable or disable Hyphen plugins on individual basis. + + + Manage Hyphen plugins. + + + No + + + Yes + + + An error occured in the {0} plugin, some information may be lost. However, the plugin will continue running. + + + Some information may be lost. However, the plugin will continue running. + + + {0} error + + + The feature is not available from current domain. + + + Hook not found. + + + The handle is invalid. + + + Duplicit loader options detected. RequiredVersion or MinimalMirandaVersion were set by a base class previously. + + + Manage plugins... + + + No plugins enabled + + + To perform the task, you have to enable the plugins first. + + + {0} crashed + + + Warning + + + An error occured while preparing the report. Copy the details and visit http://forums.miranda-im.org for assistance. + + \ No newline at end of file diff --git a/Hyphen/Plugins/Resources/Thumbs.db b/Hyphen/Plugins/Resources/Thumbs.db new file mode 100644 index 0000000..2ac0b47 Binary files /dev/null and b/Hyphen/Plugins/Resources/Thumbs.db differ diff --git a/Hyphen/Plugins/Resources/VisualResources.Designer.cs b/Hyphen/Plugins/Resources/VisualResources.Designer.cs new file mode 100644 index 0000000..3fed4f4 --- /dev/null +++ b/Hyphen/Plugins/Resources/VisualResources.Designer.cs @@ -0,0 +1,153 @@ +//------------------------------------------------------------------------------ +// +// Dieser Code wurde von einem Tool generiert. +// Laufzeitversion:4.0.30319.18033 +// +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. +// +//------------------------------------------------------------------------------ + +namespace Virtuoso.Miranda.Plugins.Resources { + using System; + + + /// + /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + /// + // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class VisualResources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal VisualResources() { + } + + /// + /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Virtuoso.Miranda.Plugins.Resources.VisualResources", typeof(VisualResources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + /// + internal static System.Drawing.Icon Engine { + get { + object obj = ResourceManager.GetObject("Engine", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + /// + internal static System.Drawing.Icon Icon_16x16_Configuration { + get { + object obj = ResourceManager.GetObject("Icon_16x16_Configuration", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + /// + internal static System.Drawing.Icon Icon_16x16_Hyphen { + get { + object obj = ResourceManager.GetObject("Icon_16x16_Hyphen", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + /// + internal static System.Drawing.Icon Icon_32x32_Configuration { + get { + object obj = ResourceManager.GetObject("Icon_32x32_Configuration", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + /// + internal static System.Drawing.Icon Icon_32x32_ConfigurationWarning { + get { + object obj = ResourceManager.GetObject("Icon_32x32_ConfigurationWarning", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Image_48x48_Warning { + get { + object obj = ResourceManager.GetObject("Image_48x48_Warning", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Image_64x67_Configuration { + get { + object obj = ResourceManager.GetObject("Image_64x67_Configuration", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Image_64x67_Information { + get { + object obj = ResourceManager.GetObject("Image_64x67_Information", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap Image_64x67_Management { + get { + object obj = ResourceManager.GetObject("Image_64x67_Management", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + } +} diff --git a/Hyphen/Plugins/Resources/VisualResources.resx b/Hyphen/Plugins/Resources/VisualResources.resx new file mode 100644 index 0000000..343f482 --- /dev/null +++ b/Hyphen/Plugins/Resources/VisualResources.resx @@ -0,0 +1,148 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + Engine.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + Configure.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + Icon 3048.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + icon 299_32x32.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + Icon 2466.ico;System.Drawing.Icon, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + Icon 244_48x48.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + Icon 256_64x67.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + Icon 232_64x67.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + Icon 047_64x67.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + \ No newline at end of file diff --git a/Hyphen/Plugins/Resources/icon 214_48x48.ico b/Hyphen/Plugins/Resources/icon 214_48x48.ico new file mode 100644 index 0000000..92a03bc Binary files /dev/null and b/Hyphen/Plugins/Resources/icon 214_48x48.ico differ diff --git a/Hyphen/Plugins/Resources/icon 299_32x32.ico b/Hyphen/Plugins/Resources/icon 299_32x32.ico new file mode 100644 index 0000000..c8f09ba Binary files /dev/null and b/Hyphen/Plugins/Resources/icon 299_32x32.ico differ diff --git a/Hyphen/Plugins/Resources/miranda32.exe.config b/Hyphen/Plugins/Resources/miranda32.exe.config new file mode 100644 index 0000000..c2c11f2 --- /dev/null +++ b/Hyphen/Plugins/Resources/miranda32.exe.config @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Hyphen/Plugins/RuntimeNotSupportedException.cs b/Hyphen/Plugins/RuntimeNotSupportedException.cs new file mode 100644 index 0000000..9faa2e2 --- /dev/null +++ b/Hyphen/Plugins/RuntimeNotSupportedException.cs @@ -0,0 +1,66 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.Serialization; +using Virtuoso.Miranda.Plugins.Resources; +using Virtuoso.Hyphen; + +namespace Virtuoso.Miranda.Plugins +{ + internal sealed class RuntimeNotSupportedException : NotSupportedException + { + #region Fields + + private Version requiredVersion, availableVersion; + + public Version AvailableVersion + { + get { return availableVersion; } + } + + public Version RequiredVersion + { + get { return requiredVersion; } + } + + #endregion + + #region .ctors + + public RuntimeNotSupportedException(Type pluginType, Version requiredVersion) + : this(pluginType, requiredVersion, true) { } + + public RuntimeNotSupportedException(Type pluginType, Version requiredVersion, bool isHyphenVersion) + : base(String.Format(TextResources.ExceptionMsg_Formatable2_RuntimeVersionNotAvailable, + (pluginType == null ? String.Empty : pluginType.FullName), + (requiredVersion == null ? String.Empty : String.Format("{0} {1}", (!isHyphenVersion ? "Miranda" : "Hyphen"), requiredVersion)))) + { + if (requiredVersion == null) + throw new ArgumentNullException("requiredVersion"); + + this.requiredVersion = requiredVersion; + this.availableVersion = Loader.HyphenVersion; + } + + private RuntimeNotSupportedException(SerializationInfo info, StreamingContext context) : base(info, context) { } + + #endregion + } +} diff --git a/Hyphen/Plugins/SynchronizationHelper.cs b/Hyphen/Plugins/SynchronizationHelper.cs new file mode 100644 index 0000000..a16ba84 --- /dev/null +++ b/Hyphen/Plugins/SynchronizationHelper.cs @@ -0,0 +1,87 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Threading; +using Virtuoso.Miranda.Plugins.Infrastructure; +using System.Collections; + +namespace Virtuoso.Miranda.Plugins +{ + /* Impl note: I've introduced this class to clearly define the locking semantics for particular objects, + * classes not covered don't have to be 'suspended'. */ + internal static class SynchronizationHelper + { + #region Helpers + + private static void VerifyNotNull(object obj) + { + if (obj == null) + throw new ArgumentNullException(); + } + + #endregion + + #region BeginXXXUpdate Methods + + public static void EndUpdate(object obj) + { + VerifyNotNull(obj); + Monitor.Exit(obj); + } + + public static void BeginPluginUpdate(MirandaPlugin plugin) + { + VerifyNotNull(plugin); + Monitor.Enter(plugin); + } + + public static void BeginDescriptorUpdate(IDescriptor descriptor) + { + VerifyNotNull(descriptor); + Monitor.Enter(descriptor); + } + + public static void BeginMenuItemUpdate(MenuItemDeclarationAttribute item) + { + VerifyNotNull(item); + Monitor.Enter(item); + } + + public static void BeginCollectionUpdate(IList collection) + { + VerifyNotNull(collection); + Monitor.Enter(collection); + } + + public static void BeginCollectionUpdate(IDictionary dictionary) + { + VerifyNotNull(dictionary); + Monitor.Enter(dictionary); + } + + public static void BeginHandleUpdate(IMirandaObject handle) + { + VerifyNotNull(handle); + Monitor.Enter(handle); + } + + #endregion + } +} diff --git a/Hyphen/Plugins/ThirdParty/Updater/Native/UPDATE.cs b/Hyphen/Plugins/ThirdParty/Updater/Native/UPDATE.cs new file mode 100644 index 0000000..3bf4a58 --- /dev/null +++ b/Hyphen/Plugins/ThirdParty/Updater/Native/UPDATE.cs @@ -0,0 +1,70 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using System.Runtime.InteropServices; + +namespace Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native +{ + [StructLayout(LayoutKind.Sequential, Pack = 4, CharSet = CharSet.Ansi)] + internal struct UPDATE + { + public int Size; + + public string ComponentName, VersionUrl; + + public string VersionPrefix; + public int VersionPrefixLength; + + public string UpdateUrl, BetaVersionUrl; + + public string BetaVersionPrefix; + public int BetaVersionPrefixLength; + public string BetaUpdateUrl; + + public string Version; + public int VersionLength; + + public string BetaChangelogUrl; + } +} + +/* + typedef struct Update_tag { + int cbSize; + char *szComponentName; // component name as it will appear in the UI (will be translated before displaying) + + char *szVersionURL; // URL where the current version can be found (NULL to disable) + BYTE *pbVersionPrefix; // bytes occuring in VersionURL before the version, used to locate the version information within the URL data + // (note that this URL could point at a binary file - dunno why, but it could :) + int cpbVersionPrefix; // number of bytes pointed to by pbVersionPrefix + char *szUpdateURL; // URL where dll/zip is located + // set to UPDATER_AUTOREGISTER if you want Updater to find the file listing URLs (ensure plugin shortName matches file listing!) + + char *szBetaVersionURL; // URL where the beta version can be found (NULL to disable betas) + BYTE *pbBetaVersionPrefix; // bytes occuring in VersionURL before the version, used to locate the version information within the URL data + int cpbBetaVersionPrefix; // number of bytes pointed to by pbVersionPrefix + char *szBetaUpdateURL; // URL where dll/zip is located + + BYTE *pbVersion; // bytes of current version, used for comparison with those in VersionURL + int cpbVersion; // number of bytes pointed to by pbVersion + + char *szBetaChangelogURL; // url for displaying changelog for beta versions + } Update; +*/ diff --git a/Hyphen/Plugins/ThirdParty/Updater/Native/m_updater.h b/Hyphen/Plugins/ThirdParty/Updater/Native/m_updater.h new file mode 100644 index 0000000..371b743 --- /dev/null +++ b/Hyphen/Plugins/ThirdParty/Updater/Native/m_updater.h @@ -0,0 +1,146 @@ +#ifndef _M_UPDATER_H +#define _M_UPDATER_H + +// NOTES: +// - For langpack updates, include a string of the following format in the langpack text file: +// ";FLID: " +// version must be four numbers seperated by '.', in the range 0-255 inclusive +// - Updater will disable plugins that are downloaded but were not active prior to the update (this is so that, if an archive contains e.g. ansi and +// unicode versions, the correct plugin will be the only one active after the new version is installed)...so if you add a support plugin, you may need +// to install an ini file to make the plugin activate when miranda restarts after the update +// - Updater will replace all dlls that have the same internal shortName as a downloaded update dll (this is so that msn1.dll and msn2.dll, for example, +// will both be updated) - so if you have a unicode and a non-unicode version of a plugin in your archive, you should make the internal names different (which will break automatic +// updates from the file listing if there is only one file listing entry for both versions, unless you use the 'MS_UPDATE_REGISTER' service below) +// - Updater will install all files in the root of the archive into the plugins folder, except for langpack files that contain the FLID string which go into the root folder (same +// folder as miranda32.exe)...all folders in the archive will also be copied to miranda's root folder, and their contents transferred into the new folders. The only exception is a +// special folder called 'root_files' - if there is a folder by that name in the archive, it's contents will also be copied into miranda's root folder - this is intended to be used +// to install additional dlls etc that a plugin may require) + +// if you set Update.szUpdateURL to the following value when registering, as well as setting your beta site and version data, +// Updater will ignore szVersionURL and pbVersionPrefix, and attempt to find the file listing URL's from the backend XML data. +// for this to work, the plugin name in pluginInfo.shortName must match the file listing exactly (except for case) +#define UPDATER_AUTOREGISTER "UpdaterAUTOREGISTER" +// Updater will also use the backend xml data if you provide URL's that reference the miranda file listing for updates (so you can use that method +// if e.g. your plugin shortName does not match the file listing) - it will grab the file listing id from the end of these URLs + +typedef struct Update_tag { + int cbSize; + char *szComponentName; // component name as it will appear in the UI (will be translated before displaying) + + char *szVersionURL; // URL where the current version can be found (NULL to disable) + BYTE *pbVersionPrefix; // bytes occuring in VersionURL before the version, used to locate the version information within the URL data + // (note that this URL could point at a binary file - dunno why, but it could :) + int cpbVersionPrefix; // number of bytes pointed to by pbVersionPrefix + char *szUpdateURL; // URL where dll/zip is located + // set to UPDATER_AUTOREGISTER if you want Updater to find the file listing URLs (ensure plugin shortName matches file listing!) + + char *szBetaVersionURL; // URL where the beta version can be found (NULL to disable betas) + BYTE *pbBetaVersionPrefix; // bytes occuring in VersionURL before the version, used to locate the version information within the URL data + int cpbBetaVersionPrefix; // number of bytes pointed to by pbVersionPrefix + char *szBetaUpdateURL; // URL where dll/zip is located + + BYTE *pbVersion; // bytes of current version, used for comparison with those in VersionURL + int cpbVersion; // number of bytes pointed to by pbVersion + + char *szBetaChangelogURL; // url for displaying changelog for beta versions +} Update; + +// register a comonent with Updater +// +// wparam = 0 +// lparam = (LPARAM)&Update +#define MS_UPDATE_REGISTER "Update/Register" + +// utility functions to create a version string from a DWORD or from pluginInfo +// point buf at a buffer at least 16 chars wide - but note the version string returned may be shorter +// +__inline static char *CreateVersionString(DWORD version, char *buf) { + mir_snprintf(buf, 16, "%d.%d.%d.%d", (version >> 24) & 0xFF, (version >> 16) & 0xFF, (version >> 8) & 0xFF, version & 0xFF); + return buf; +} + +__inline static char *CreateVersionStringPlugin(PLUGININFO *pluginInfo, char *buf) { + return CreateVersionString(pluginInfo->version, buf); +} + + +// register the 'easy' way - use this method if you have no beta URL and the plugin is on the miranda file listing +// NOTE: the plugin version string on the file listing must be the string version of the version in pluginInfo (i.e. 0.0.0.1, +// four numbers between 0 and 255 inclusivem, so no letters, brackets, etc.) +// +// wParam = (int)fileID - this is the file ID from the file listing (i.e. the number at the end of the download link) +// lParam = (PLUGININFO*)&pluginInfo +#define MS_UPDATE_REGISTERFL "Update/RegisterFL" + +// this function can be used to 'unregister' components - useful for plugins that register non-plugin/langpack components and +// may need to change those components on the fly +// lParam = (char *)szComponentName +#define MS_UPDATE_UNREGISTER "Update/Unregister" + +// this event is fired when the startup process is complete, but NOT if a restart is imminent +// it is designed for status managment plugins to use as a trigger for beggining their own startup process +// wParam = lParam = 0 (unused) +// (added in version 0.1.6.0) +#define ME_UPDATE_STARTUPDONE "Update/StartupDone" + +// this service can be used to enable/disable Updater's global status control +// it can be called from the StartupDone event handler +// wParam = (BOOL)enable +// lParam = 0 +// (added in version 0.1.6.0) +#define MS_UPDATE_ENABLESTATUSCONTROL "Update/EnableStatusControl" + +// An description of usage of the above service and event: +// Say you are a status control plugin that normally sets protocol or global statuses in your ModulesLoaded event handler. +// In order to make yourself 'Updater compatible', you would move the status control code from ModulesLoaded to another function, +// say DoStartup. Then, in ModulesLoaded you would check for the existence of the MS_UPDATE_ENABLESTATUSCONTROL service. +// If it does not exist, call DoStartup. If it does exist, hook the ME_UPDATE_STARTUPDONE event and call DoStartup from there. You may +// also wish to call MS_UPDATE_ENABLESTATUSCONTROL with wParam == FALSE at this time, to disable Updater's own status control feature. + +// this service can be used to determine whether updates are possible for a component with the given name +// wParam = 0 +// lParam = (char *)szComponentName +// returns TRUE if updates are supported, FALSE otherwise +#define MS_UPDATE_ISUPDATESUPPORTED "Update/IsUpdateSupported" + +#endif + + +/////////////// Usage Example /////////////// + +#ifdef EXAMPLE_CODE + +// you need to #include "m_updater.h" and HookEvent(ME_SYSTEM_MODULESLOADED, OnModulesLoaded) in your Load function... + +int OnModulesLoaded(WPARAM wParam, LPARAM lParam) { + + Update update = {0}; // for c you'd use memset or ZeroMemory... + char szVersion[16]; + + update.cbSize = sizeof(Update); + + update.szComponentName = pluginInfo.shortName; + update.pbVersion = (BYTE *)CreateVersionString(&pluginInfo, szVersion); + update.cpbVersion = strlen((char *)update.pbVersion); + + // these are the three lines that matter - the archive, the page containing the version string, and the text (or data) + // before the version that we use to locate it on the page + // (note that if the update URL and the version URL point to standard file listing entries, the backend xml + // data will be used to check for updates rather than the actual web page - this is not true for beta urls) + update.szUpdateURL = "http://scottellis.com.au:81/test/updater.zip"; + update.szVersionURL = "http://scottellis.com.au:81/test/updater_test.html"; + update.pbVersionPrefix = (BYTE *)"Updater version "; + + update.cpbVersionPrefix = strlen((char *)update.pbVersionPrefix); + + // do the same for the beta versions of the above struct members if you wish to allow beta updates from another URL + + CallService(MS_UPDATE_REGISTER, 0, (WPARAM)&update); + + // Alternatively, to register a plugin with e.g. file ID 2254 on the file listing... + // CallService(MS_UPDATE_REGISTERFL, (WPARAM)2254, (LPARAM)&pluginInfo); + + return 0; +} + +#endif diff --git a/Hyphen/Plugins/ThirdParty/Updater/Update.cs b/Hyphen/Plugins/ThirdParty/Updater/Update.cs new file mode 100644 index 0000000..bb11c36 --- /dev/null +++ b/Hyphen/Plugins/ThirdParty/Updater/Update.cs @@ -0,0 +1,146 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native; +using System.Runtime.InteropServices; + +namespace Virtuoso.Miranda.Plugins.ThirdParty.Updater +{ + public class Update + { + #region Fields + + private readonly string pluginName; + + public string PluginName + { + get { return pluginName; } + } + + private readonly Version currentVersion; + + public Version CurrentVersion + { + get { return currentVersion; } + } + + private readonly Uri updateUrl, versionUrl; + private Uri betaVersionUrl, betaUpdateUrl, betaChangelogUrl; + + public Uri BetaChangelogUrl + { + get { return betaChangelogUrl; } + set { betaChangelogUrl = value; } + } + + public Uri BetaUpdateUrl + { + get { return betaUpdateUrl; } + set { betaUpdateUrl = value; } + } + + public Uri BetaVersionUrl + { + get { return betaVersionUrl; } + set { betaVersionUrl = value; } + } + + public Uri VersionUrl + { + get { return versionUrl; } + } + + public Uri UpdateUrl + { + get { return updateUrl; } + } + + private readonly string versionTextPrefix; + private string betaVersionTextPrefix; + + public string BetaVersionTextPrefix + { + get { return betaVersionTextPrefix; } + set { betaVersionTextPrefix = value; } + } + + public string VersionTextPrefix + { + get { return versionTextPrefix; } + } + + #endregion + + #region .ctors + + public Update(MirandaPlugin plugin, Uri updateUrl, Uri versionUrl, string versionTextPrefix) + { + if (plugin == null) throw new ArgumentNullException("plugin"); + if (updateUrl == null) throw new ArgumentNullException("updateUrl"); + if (versionUrl == null) throw new ArgumentNullException("versionUrl"); + if (versionTextPrefix == null) throw new ArgumentNullException("versionTextPrefix"); + + this.pluginName = plugin.Name; + this.currentVersion = plugin.Version; + this.updateUrl = updateUrl; + this.versionUrl = versionUrl; + this.versionTextPrefix = versionTextPrefix; + } + + internal void MarshalToNative(out UPDATE update) + { + update = new UPDATE(); + update.Size = Marshal.SizeOf(typeof(UPDATE)); + + update.ComponentName = pluginName; + update.UpdateUrl = updateUrl.ToString(); + + update.VersionUrl = versionUrl.ToString(); + update.VersionPrefix = versionTextPrefix; + update.VersionPrefixLength = versionTextPrefix.Length; + + update.Version = currentVersion.ToString(4); + update.VersionLength = update.Version.Length; + + update.BetaChangelogUrl = betaChangelogUrl != null ? betaChangelogUrl.ToString() : null; + update.BetaUpdateUrl = betaUpdateUrl != null ? betaUpdateUrl.ToString() : null; + update.BetaVersionUrl = betaVersionUrl != null ? betaVersionUrl.ToString() : null; + update.BetaVersionPrefix = betaVersionTextPrefix; + update.BetaVersionPrefixLength = betaVersionTextPrefix != null ? betaVersionTextPrefix.Length : 0; + } + + #endregion + } +} + +/* + Update update = {0}; + char szVersion[16]; + update.cbSize = sizeof(Update); + + update.szComponentName = pluginInfo.shortName; + update.pbVersion = (BYTE *)CreateVersionString(&pluginInfo, szVersion); + update.cpbVersion = strlen((char *)update.pbVersion); + + update.szUpdateURL = BETA_HOST_URL_PREFIX "/ver_updater_unicode.zip"; + update.szVersionURL = BETA_HOST_URL_PREFIX "/updater_unicode.html"; + update.pbVersionPrefix = (BYTE *)"Updater (Unicode) version "; + update.cpbVersionPrefix = strlen((char *)update.pbVersionPrefix); +*/ diff --git a/Hyphen/Plugins/ThirdParty/Updater/UpdaterPlugin.cs b/Hyphen/Plugins/ThirdParty/Updater/UpdaterPlugin.cs new file mode 100644 index 0000000..8d2a218 --- /dev/null +++ b/Hyphen/Plugins/ThirdParty/Updater/UpdaterPlugin.cs @@ -0,0 +1,69 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +using System; +using System.Collections.Generic; +using System.Text; +using Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native; +using Virtuoso.Miranda.Plugins.Native; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Resources; + +namespace Virtuoso.Miranda.Plugins.ThirdParty.Updater +{ + public static class UpdaterPlugin + { + private const string MS_UPDATE_REGISTER = "Update/Register"; + + public static bool IsUpdateSupported() + { + return ServiceManager.ServiceExists(MS_UPDATE_REGISTER); + } + + public static void RegisterForUpdate(Update update) + { + if (update == null) throw new ArgumentNullException("update"); + if (!IsUpdateSupported()) throw new NotSupportedException(); + + UnmanagedStructHandle updateHandle = UnmanagedStructHandle.Empty; + + try + { + UPDATE updateNative; + update.MarshalToNative(out updateNative); + + updateHandle = new UnmanagedStructHandle(ref updateNative); + int result = MirandaContext.Current.CallService(MS_UPDATE_REGISTER, UIntPtr.Zero, updateHandle.IntPtr); + + if (result != 0) + throw new MirandaException(String.Format(TextResources.ExceptionMsg_Formatable2_MirandaServiceReturnedFailure, MS_UPDATE_REGISTER, result.ToString())); + } + catch (MirandaException) + { + throw; + } + catch (Exception e) + { + throw new MirandaException(TextResources.ExceptionMsg_ErrorWhileCallingMirandaService, e); + } + finally + { + updateHandle.Free(); + } + } + } +} \ No newline at end of file diff --git a/Hyphen/Plugins/UnitTests/CLISTMENUITEMTest.cs b/Hyphen/Plugins/UnitTests/CLISTMENUITEMTest.cs new file mode 100644 index 0000000..640a761 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/CLISTMENUITEMTest.cs @@ -0,0 +1,106 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Infrastructure; + +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM and is intended + ///to contain all Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM Unit Tests + /// + [TestClass(), + MenuItemDeclaration("l", null, Tag = "A", HasIcon = true, UseEmbeddedIcon = true), + MenuItemDeclaration("l", null, Tag = "B", HasIcon = true, UseEmbeddedIcon = true, IconID = "NotHere.ico"), + MenuItemDeclaration("l", null, Tag = "C", HasIcon = true, UseEmbeddedIcon = true, IconID = "Virtuoso.Miranda.Plugins.UnitTests.Here.ico")] + public class CLISTMENUITEMTest + { + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + /// + ///A test for CLISTMENUITEM (MenuItemDeclarationAttribute) + /// + [TestMethod(), ExpectedException(typeof(ArgumentNullException))] + public void ConstructorTest() + { + new MenuItemDeclarationAttribute(null, null); + } + + /// + ///A test for CLISTMENUITEM (MenuItemDeclarationAttribute) + /// + [TestMethod()] + public void ConstructorTest2() + { + MenuItemDeclarationAttribute[] attribs = (MenuItemDeclarationAttribute[])this.GetType().GetCustomAttributes(typeof(MenuItemDeclarationAttribute), false); + + foreach (MenuItemDeclarationAttribute attrib in attribs) + { + ValueType native = Virtuoso_Miranda_Plugins_Native_CLISTMENUITEMAccessor.CreatePrivate(new FooPlugin(), attrib); + + switch (attrib.Tag) + { + case "A": + case "B": + Assert.AreEqual(IntPtr.Zero, native.GetType().GetField("Icon").GetValue(native)); + break; + case "C": + Assert.AreNotEqual(IntPtr.Zero, native.GetType().GetField("Icon").GetValue(native)); + break; + } + } + } + } +} diff --git a/Hyphen/Plugins/UnitTests/ContactInfoTest.cs b/Hyphen/Plugins/UnitTests/ContactInfoTest.cs new file mode 100644 index 0000000..3724c19 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/ContactInfoTest.cs @@ -0,0 +1,94 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Infrastructure; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo and is intended + ///to contain all Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Unit Tests + /// + [TestClass()] + public class ContactInfoTest + { + private ContactInfo TestInstance; + + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + [TestInitialize] + public void TestInitialize() + { + this.TestInstance = Virtuoso_Miranda_Plugins_Infrastructure_ContactInfoAccessor.CreatePrivate(); + } + + /// + ///A test for CallContactService (string, UIntPtr, IntPtr) + /// + [TestMethod(), ExpectedException(typeof(ArgumentNullException))] + public void CallContactServiceTest() + { + this.TestInstance.CallContactService(null, UIntPtr.Zero, IntPtr.Zero); + } + + /// + ///A test for SendMessage (string) + /// + [TestMethod(), ExpectedException(typeof(ArgumentNullException))] + public void SendMessageTest() + { + this.TestInstance.SendMessage(null); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/DatabaseEventInfoTest.cs b/Hyphen/Plugins/UnitTests/DatabaseEventInfoTest.cs new file mode 100644 index 0000000..862a713 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/DatabaseEventInfoTest.cs @@ -0,0 +1,80 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Infrastructure; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo and is intended + ///to contain all Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Unit Tests + /// + [TestClass()] + public class DatabaseEventInfoTest + { + + + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + + /// + ///A test for DatabaseEventInfo (IntPtr) + /// + [TestMethod(), ExpectedException(typeof(ArgumentNullException))] + public void ConstructorTest() + { + DatabaseEventInfo.Create(IntPtr.Zero); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/EventHookAttributeTest.cs b/Hyphen/Plugins/UnitTests/EventHookAttributeTest.cs new file mode 100644 index 0000000..5fbf5cb --- /dev/null +++ b/Hyphen/Plugins/UnitTests/EventHookAttributeTest.cs @@ -0,0 +1,80 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Infrastructure; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute and is intended + ///to contain all Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute Unit Tests + /// + [TestClass()] + public class EventHookAttributeTest + { + + + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + + /// + ///A test for EventHookAttribute (string) + /// + [TestMethod(), ExpectedException(typeof(ArgumentNullException))] + public void ConstructorTest() + { + new EventHookAttribute(null); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/FooPlugin.cs b/Hyphen/Plugins/UnitTests/FooPlugin.cs new file mode 100644 index 0000000..aeb9514 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/FooPlugin.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + class FooPlugin : MirandaPlugin + { + public override string Author + { + get { throw new Exception("The method or operation is not implemented."); } + } + + public override string Description + { + get { throw new Exception("The method or operation is not implemented."); } + } + + public override bool HasOptions + { + get { throw new Exception("The method or operation is not implemented."); } + } + + public override Uri HomePage + { + get { throw new Exception("The method or operation is not implemented."); } + } + + public override string Name + { + get { throw new Exception("The method or operation is not implemented."); } + } + + public override Version Version + { + get { throw new Exception("The method or operation is not implemented."); } + } + } +} diff --git a/Hyphen/Plugins/UnitTests/Here.ico b/Hyphen/Plugins/UnitTests/Here.ico new file mode 100644 index 0000000..521e141 Binary files /dev/null and b/Hyphen/Plugins/UnitTests/Here.ico differ diff --git a/Hyphen/Plugins/UnitTests/HookDescriptorTest.cs b/Hyphen/Plugins/UnitTests/HookDescriptorTest.cs new file mode 100644 index 0000000..83b2d55 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/HookDescriptorTest.cs @@ -0,0 +1,116 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins; +using Virtuoso.Miranda.Plugins.Infrastructure; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor and is intended + ///to contain all Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Unit Tests + /// + [TestClass()] + public class HookDescriptorTest + { + + + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + + /// + ///A test for HookDescriptor (string, Callback, HookType) + /// + [TestMethod(), ExpectedException(typeof(ArgumentNullException))] + public void ConstructorTest() + { + Virtuoso_Miranda_Plugins_Infrastructure_HookDescriptorAccessor.CreatePrivate(null, null, Virtuoso_Miranda_Plugins_Infrastructure_HookTypeAccessor.Undefined); + } + + /// + ///A test for HookDescriptor (string, Callback, HookType) + /// + [TestMethod(), ExpectedException(typeof(ArgumentNullException))] + public void ConstructorTest2() + { + Virtuoso_Miranda_Plugins_Infrastructure_HookDescriptorAccessor.CreatePrivate("foo", null, Virtuoso_Miranda_Plugins_Infrastructure_HookTypeAccessor.Undefined); + } + + /// + ///A test for Equals (object) + /// + [TestMethod()] + public void EqualsTest() + { + Callback callback1 = delegate { return 0; }; + Callback callback2 = delegate { return 1; }; + + object desc1 = Virtuoso_Miranda_Plugins_Infrastructure_HookDescriptorAccessor.CreatePrivate("a", callback1, Virtuoso_Miranda_Plugins_Infrastructure_HookTypeAccessor.EventHook); + object desc2 = Virtuoso_Miranda_Plugins_Infrastructure_HookDescriptorAccessor.CreatePrivate("a", callback1, Virtuoso_Miranda_Plugins_Infrastructure_HookTypeAccessor.EventHook); + object desc3 = Virtuoso_Miranda_Plugins_Infrastructure_HookDescriptorAccessor.CreatePrivate("a", callback2, Virtuoso_Miranda_Plugins_Infrastructure_HookTypeAccessor.EventHook); + object desc4 = Virtuoso_Miranda_Plugins_Infrastructure_HookDescriptorAccessor.CreatePrivate("b", callback1, Virtuoso_Miranda_Plugins_Infrastructure_HookTypeAccessor.EventHook); + object desc5 = Virtuoso_Miranda_Plugins_Infrastructure_HookDescriptorAccessor.CreatePrivate("a", callback1, Virtuoso_Miranda_Plugins_Infrastructure_HookTypeAccessor.ServiceFunction); + object desc6 = Virtuoso_Miranda_Plugins_Infrastructure_HookDescriptorAccessor.CreatePrivate("b", callback2, Virtuoso_Miranda_Plugins_Infrastructure_HookTypeAccessor.ServiceFunction); + + Assert.AreEqual(true, desc1.Equals(desc2), "HookDescriptor.Equals returned wrong result."); + Assert.AreEqual(false, desc1.Equals(desc3), "HookDescriptor.Equals returned wrong result."); + Assert.AreEqual(false, desc1.Equals(desc4), "HookDescriptor.Equals returned wrong result."); + Assert.AreEqual(false, desc1.Equals(desc5), "HookDescriptor.Equals returned wrong result."); + Assert.AreEqual(false, desc1.Equals(desc6), "HookDescriptor.Equals returned wrong result."); + + Assert.AreEqual(false, desc1.Equals(null), "HookDescriptor.Equals returned wrong result."); + Assert.AreEqual(false, desc1.Equals(new object()), "HookDescriptor.Equals returned wrong result."); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/InteropBufferPoolTest.cs b/Hyphen/Plugins/UnitTests/InteropBufferPoolTest.cs new file mode 100644 index 0000000..41176b2 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/InteropBufferPoolTest.cs @@ -0,0 +1,181 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Native; +using System.Diagnostics; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Native.InteropBufferPool and is intended + ///to contain all Virtuoso.Miranda.Plugins.Native.InteropBufferPool Unit Tests + /// + [TestClass()] + public class InteropBufferPoolTest + { + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + [TestInitialize] + public void TestInitializer() + { + InteropBufferPool_Accessor.Refresh(); + } + + /// + ///A test for AcquireBuffer (int) + /// + [TestMethod()] + public void AcquireBufferTest() + { + InteropBuffer buffer = null, buffer1 = null; + + try + { + int prev = InteropBufferPool_Accessor.NextAvailableBufferIndex; + buffer = InteropBufferPool.AcquireBuffer(); + + Assert.AreEqual(prev + 1, InteropBufferPool_Accessor.NextAvailableBufferIndex); + + buffer1 = InteropBufferPool.AcquireBuffer(InteropBufferPool_Accessor.maximumAvailableBufferSize + 1); + Assert.IsTrue(Array.IndexOf(InteropBufferPool_Accessor.Buffers, buffer1) == -1, "Acquired buffer is probably undersized."); + + try + { + InteropBufferPool.AcquireBuffer(0); + Assert.Fail("Negative buffer size accepted."); + } + catch { } + } + finally + { + InteropBufferPool.ReleaseBuffer(buffer); + InteropBufferPool.ReleaseBuffer(buffer1); + } + } + + [TestMethod()] + public void AcquireReleaseExpandedBufferTest() + { + InteropBuffer buffer = null, buffer1 = null, buffer2 = null; + int expandedSize = InteropBufferPool_Accessor.maximumAvailableBufferSize + 1; + + try + { + buffer = buffer1 = InteropBufferPool.AcquireBuffer(expandedSize); + Assert.IsTrue(Array.IndexOf(InteropBufferPool_Accessor.Buffers, buffer) == -1, "Acquired buffer is probably undersized."); + + InteropBufferPool.ReleaseBuffer(buffer); + Assert.IsTrue(Array.IndexOf(InteropBufferPool_Accessor.Buffers, buffer1) != -1, "Expanded buffer not assimilated."); + + buffer = InteropBufferPool.AcquireBuffer(expandedSize); + Assert.IsTrue(buffer == buffer1, "Assimilated expanded buffer not used."); + Assert.IsTrue(buffer.Size >= expandedSize, "Undersized buffer acquired."); + InteropBufferPool.ReleaseBuffer(buffer); + + buffer = InteropBufferPool.AcquireBuffer(expandedSize); + buffer1 = InteropBufferPool.AcquireBuffer(expandedSize); + Assert.IsTrue(buffer != buffer1, "Reserved buffer acquired."); + + buffer2 = InteropBufferPool.AcquireBuffer(expandedSize); + Assert.IsTrue(buffer2 != buffer && buffer2 != buffer1, "Reserved buffer acquired."); + } + finally + { + InteropBufferPool.ReleaseBuffer(buffer); + InteropBufferPool.ReleaseBuffer(buffer1); + InteropBufferPool.ReleaseBuffer(buffer2); + } + } + + /// + ///A test for ReleaseBuffer (InteropBuffer) + /// + [TestMethod()] + public void ReleaseBufferTest() + { + int prev = InteropBufferPool_Accessor.NextAvailableBufferIndex; + InteropBuffer buffer = InteropBufferPool.AcquireBuffer(); + InteropBuffer buffer1 = buffer; + + try + { + buffer.Lock(); + InteropBufferPool.ReleaseBuffer(buffer); + Assert.Fail("InteropBufferPool::ReleaseBuffer accepts locked buffers."); + } + catch { } + finally + { + buffer.Unlock(); + InteropBufferPool.ReleaseBuffer(buffer); + } + + try + { + InteropBufferPool.ReleaseBuffer(buffer1); + Assert.Fail("InteropBufferPool::ReleaseBuffer accepts already released buffers."); + } + catch { } + + Assert.AreEqual(prev, InteropBufferPool_Accessor.NextAvailableBufferIndex); + + try + { + IntPtr ptr = buffer.IntPtr; + Assert.Fail("InteropBufferPool::ReleaseBuffer does not dispose released buffers."); + } + catch { } + } + } +} diff --git a/Hyphen/Plugins/UnitTests/InteropBufferTest.cs b/Hyphen/Plugins/UnitTests/InteropBufferTest.cs new file mode 100644 index 0000000..b1e40a9 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/InteropBufferTest.cs @@ -0,0 +1,257 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Native; +using System.Threading; +using System.Runtime.InteropServices; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Native.InteropBuffer and is intended + ///to contain all Virtuoso.Miranda.Plugins.Native.InteropBuffer Unit Tests + /// + [TestClass()] + public class InteropBufferTest + { + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + /// + ///A test for Equals (object) + /// + [TestMethod()] + public void EqualsTest() + { + InteropBuffer_Accessor target; + InteropBuffer_Accessor obj; + bool expected; + bool actual; + + target = new InteropBuffer_Accessor(1); + + obj = null; + expected = false; + actual = target.Equals(obj); + Assert.AreEqual(expected, actual, "Virtuoso.Miranda.Plugins.Native.InteropBuffer.Equals did not return the expected value."); + + obj = new InteropBuffer_Accessor(1); + expected = false; + actual = target.Equals(obj); + obj.Lock(); + ((IDisposable)obj).Dispose(); + obj.Unlock(); + Assert.AreEqual(expected, actual, "Virtuoso.Miranda.Plugins.Native.InteropBuffer.Equals did not return the expected value."); + + obj = target; + expected = true; + actual = target.Equals(obj); + + target.Lock(); + ((IDisposable)target).Dispose(); + target.Unlock(); + + Assert.AreEqual(expected, actual, "Virtuoso.Miranda.Plugins.Native.InteropBuffer.Equals did not return the expected value."); + } + + /// + ///A test for IntPtr + /// + [TestMethod()] + public void IntPtrTest() + { + InteropBuffer_Accessor target = new InteropBuffer_Accessor(1); + + target.Lock(); + IntPtr ptr = target.IntPtr; + target.Unlock(); + + try + { + ptr = target.IntPtr; + Assert.Fail("InteropBuffer::IntPtr succeded without locking."); + } + catch { } + + try + { + target.Lock(); + ((IDisposable)target).Dispose(); + + ptr = target.IntPtr; + target.Unlock(); + + Assert.Fail("InteropBuffer::IntPtr succeded after disposal."); + } + catch { } + } + + /// + ///A test for Lock () + /// + [TestMethod()] + public void LockTest() + { + InteropBuffer_Accessor target = new InteropBuffer_Accessor(1); + + try + { + target.Lock(); + Thread t = new Thread(new ThreadStart(delegate { target.Lock(); })); + t.Start(); + Thread.Sleep(250); + + Assert.IsFalse(t.Join(1000), "InteropBuffer::Lock does not block other threads."); + Assert.IsTrue(target.Locked, "InteropBuffer::Lock did not set the lock owner."); + } + finally + { + ((IDisposable)target).Dispose(); + target.Unlock(); + } + } + + /// + ///A test for Locked + /// + [TestMethod()] + public void LockedTest() + { + InteropBuffer_Accessor target = new InteropBuffer_Accessor(1); + Assert.IsFalse(target.Locked, "InteropBuffer::Locked returned wrong result."); + + target.Lock(); + Assert.IsTrue(target.Locked, "InteropBuffer::Locked returned wrong result."); + target.Unlock(); + } + + /// + ///A test for Unlock () + /// + [TestMethod()] + public void UnlockTest() + { + InteropBuffer_Accessor target = new InteropBuffer_Accessor(1); + + try + { + target.Unlock(); + Assert.Fail("InteropBuffer::Unlock allows to unlock non-locked buffers."); + } + catch { } + + target.Lock(); + target.Unlock(); + Assert.IsFalse(target.Locked, "InteropBuffer::Unlock does not update the Locked property."); + + Thread t = new Thread(new ParameterizedThreadStart(delegate(object obj) + { + target.Lock(); + })); + t.Start(); + t.Join(); + + try + { + target.Unlock(); + Assert.Fail("InteropBuffer::Unlock allows an unlock from a different thread."); + } + catch { } + finally + { + target.Dispose(true); + } + } + + /// + ///A test for Zero () + /// + [TestMethod()] + public void ZeroTest() + { + InteropBuffer_Accessor target = new InteropBuffer_Accessor(1); + + try + { + target.Zero(); + Assert.Fail("InteropBuffer::Zero allows unlocked use."); + } + catch { } + + target.Lock(); + + Marshal.WriteByte(target.IntPtr, 0xaf); + target.Zero(); + + try + { + Assert.AreEqual(0, Marshal.ReadByte(target.IntPtr)); + } + finally + { + ((IDisposable)target).Dispose(); + target.Unlock(); + } + } + + /// + ///A test for InteropBuffer (int) + /// + [TestMethod(), ExpectedException(typeof(ArgumentOutOfRangeException))] + public void ConstructorTest() + { + int capacity = 0; + InteropBuffer_Accessor target = new InteropBuffer_Accessor(capacity); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/MenuItemDeclarationAttributeTest.cs b/Hyphen/Plugins/UnitTests/MenuItemDeclarationAttributeTest.cs new file mode 100644 index 0000000..a06d266 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/MenuItemDeclarationAttributeTest.cs @@ -0,0 +1,79 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Infrastructure; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute and is intended + ///to contain all Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Unit Tests + /// + [TestClass()] + public class MenuItemDeclarationAttributeTest + { + + + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + /// + ///A test for MenuItemDeclarationAttribute (string, string, Type) + /// + [TestMethod(), ExpectedException(typeof(ArgumentNullException))] + public void ConstructorTest1() + { + new MenuItemDeclarationAttribute(null, "abc"); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/MenuItemDeclarationReadOnlyCollectionTest.cs b/Hyphen/Plugins/UnitTests/MenuItemDeclarationReadOnlyCollectionTest.cs new file mode 100644 index 0000000..8507a7e --- /dev/null +++ b/Hyphen/Plugins/UnitTests/MenuItemDeclarationReadOnlyCollectionTest.cs @@ -0,0 +1,93 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins.Collections; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.MenuItemDeclarationCollection and is intended + ///to contain all Virtuoso.Miranda.Plugins.MenuItemDeclarationCollection Unit Tests + /// + [TestClass()] + public class MenuItemDeclarationReadOnlyCollectionTest + { + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + + /// + ///A test for FindByTag (string) + /// + [TestMethod()] + public void FindTest() + { + string tag = "tag"; + + MenuItemDeclarationCollection list = new MenuItemDeclarationCollection(); + MenuItemDeclarationAttribute attrib = new MenuItemDeclarationAttribute("a", "b"); + attrib.Tag = tag; + list.Add(attrib); + + MenuItemDeclarationReadOnlyCollection target = new MenuItemDeclarationReadOnlyCollection(list); + + MenuItemDeclarationAttribute expected = attrib; + MenuItemDeclarationAttribute actual = target.Find(tag); + + Assert.AreEqual(expected, actual, "FindByTag did not return the expected value."); + Assert.AreEqual(null, target.Find("foo"), "FindByTag return wrong result."); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/MirandaContextTest.cs b/Hyphen/Plugins/UnitTests/MirandaContextTest.cs new file mode 100644 index 0000000..a9817e9 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/MirandaContextTest.cs @@ -0,0 +1,86 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Infrastructure; +using Virtuoso.Miranda.Plugins; +using Virtuoso.Miranda.Plugins.Native; + +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Infrastructure.PluginContext and is intended + ///to contain all Virtuoso.Miranda.Plugins.Infrastructure.PluginContext Unit Tests + /// + [TestClass()] + public class MirandaContextTest + { + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + /// + ///A test for Current + /// + [TestMethod(), ExpectedException(typeof(InvalidOperationException))] + public void CurrentTest() + { + MirandaContext.Current.ToString(); + } + + [TestMethod, ExpectedException(typeof(ArgumentNullException))] + public void ConstructorTest() + { + Virtuoso_Miranda_Plugins_Infrastructure_MirandaContextAccessor.InitializeCurrent(null, null); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/NetworkProtocolTest.cs b/Hyphen/Plugins/UnitTests/NetworkProtocolTest.cs new file mode 100644 index 0000000..a949058 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/NetworkProtocolTest.cs @@ -0,0 +1,81 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Infrastructure; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Infrastructure.NetworkProtocol and is intended + ///to contain all Virtuoso.Miranda.Plugins.Infrastructure.NetworkProtocol Unit Tests + /// + [TestClass()] + public class NetworkProtocolTest + { + + + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + + /// + ///A test for NetworkProtocol (PROTOCOLDESCRIPTOR) + /// + [TestMethod(), ExpectedException(typeof(ArgumentException))] + public void ConstructorTest() + { + Virtuoso_Miranda_Plugins_Native_PROTOCOLDESCRIPTORAccessor d = new Virtuoso_Miranda_Plugins_Native_PROTOCOLDESCRIPTORAccessor(null); + Virtuoso_Miranda_Plugins_Infrastructure_NetworkProtocolAccessor.CreatePrivate(ref d); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/PluginDescriptorReadOnlyCollectionTest.cs b/Hyphen/Plugins/UnitTests/PluginDescriptorReadOnlyCollectionTest.cs new file mode 100644 index 0000000..b8ca874 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/PluginDescriptorReadOnlyCollectionTest.cs @@ -0,0 +1,122 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins; +using Virtuoso.Miranda.Plugins.Collections; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.PluginDescriptorReadOnlyCollection and is intended + ///to contain all Virtuoso.Miranda.Plugins.PluginDescriptorReadOnlyCollection Unit Tests + /// + [TestClass()] + public class PluginDescriptorReadOnlyCollectionTest + { + + + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + + /// + ///A test for ContainsDescriptorOf (MirandaPlugin) + /// + [TestMethod()] + public void ContainsDescriptorOfTest() + { + PluginDescriptorCollection list = new PluginDescriptorCollection(); + MirandaPlugin plugin = Virtuoso_Miranda_Plugins_MirandaPlugin_EmptyPluginAccessor.CreatePrivate(); + PluginDescriptor descriptor = Virtuoso_Miranda_Plugins_PluginDescriptorAccessor.CreatePrivate(plugin); + list.Add(descriptor); + + PluginDescriptorReadOnlyCollection target = new PluginDescriptorReadOnlyCollection(list); + + bool expected = true; + bool actual = target.ContainsDescriptorOf(plugin); + Assert.AreEqual(expected, actual, "Virtuoso.Miranda.Plugins.PluginDescriptorReadOnlyCollection.ContainsDescriptorOf did not return the expected value."); + + expected = true; + actual = target.ContainsDescriptorOf(plugin.GetType()); + Assert.AreEqual(expected, actual, "Virtuoso.Miranda.Plugins.PluginDescriptorReadOnlyCollection.ContainsDescriptorOf did not return the expected value."); + + Assert.AreEqual(false, target.ContainsDescriptorOf(Virtuoso_Miranda_Plugins_MirandaPlugin_EmptyPluginAccessor.CreatePrivate()), "False result returned from the ContainsDescriptorOf method."); + Assert.AreEqual(false, target.ContainsDescriptorOf(typeof(string)), "False result returned from the ContainsDescriptorOf method."); + } + + /// + ///A test for FindDescriptorOf (MirandaPlugin) + /// + [TestMethod()] + public void FindDescriptorTest() + { + PluginDescriptorCollection list = new PluginDescriptorCollection(); + MirandaPlugin plugin = Virtuoso_Miranda_Plugins_MirandaPlugin_EmptyPluginAccessor.CreatePrivate(); + PluginDescriptor descriptor = Virtuoso_Miranda_Plugins_PluginDescriptorAccessor.CreatePrivate(plugin); + list.Add(descriptor); + + PluginDescriptorReadOnlyCollection target = new PluginDescriptorReadOnlyCollection(list); + + PluginDescriptor expected = descriptor; + PluginDescriptor actual = target.FindDescriptorOf(plugin); + Assert.AreEqual(expected, actual, "Virtuoso.Miranda.Plugins.PluginDescriptorReadOnlyCollection.FindDescriptorOf did not return the expected value."); + + expected = descriptor; + actual = target.FindDescriptorOf(plugin.GetType()); + Assert.AreEqual(expected, actual, "Virtuoso.Miranda.Plugins.PluginDescriptorReadOnlyCollection.FindDescriptorOf did not return the expected value."); + + Assert.AreEqual(null, target.FindDescriptorOf(Virtuoso_Miranda_Plugins_MirandaPlugin_EmptyPluginAccessor.CreatePrivate()), "False result returned from the FindDescriptorOf method."); + Assert.AreEqual(null, target.FindDescriptorOf(typeof(string)), "False result returned from the FindDescriptorOf method."); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/PluginDescriptorTest.cs b/Hyphen/Plugins/UnitTests/PluginDescriptorTest.cs new file mode 100644 index 0000000..2f923a6 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/PluginDescriptorTest.cs @@ -0,0 +1,100 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins; +using System.Reflection; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.PluginDescriptor and is intended + ///to contain all Virtuoso.Miranda.Plugins.PluginDescriptor Unit Tests + /// + [TestClass()] + public class PluginDescriptorTest + { + + + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + + /// + ///A test for Equals (object) + /// + [TestMethod(), ExpectedException(typeof(InvalidOperationException))] + public void EqualsTest() + { + MirandaPlugin plugin1 = Virtuoso_Miranda_Plugins_MirandaPlugin_EmptyPluginAccessor.CreatePrivate(); + MirandaPlugin plugin2 = Virtuoso_Miranda_Plugins_MirandaPlugin_EmptyPluginAccessor.CreatePrivate(); + + PluginDescriptor descriptor1 = Virtuoso_Miranda_Plugins_PluginDescriptorAccessor.CreatePrivate(plugin1); + PluginDescriptor descriptor2 = Virtuoso_Miranda_Plugins_PluginDescriptorAccessor.CreatePrivate(plugin2); + + Assert.AreEqual(true, descriptor1.Equals(descriptor2), "PluginDescriptor.Equals returned wrong result."); + Assert.AreEqual(false, descriptor1.Equals(null), "PluginDescriptor.Equals returned wrong result."); + Assert.AreEqual(false, descriptor1.Equals(new object()), "PluginDescriptor.Equals returned wrong result."); + + Virtuoso_Miranda_Plugins_PluginDescriptorAccessor.CreatePrivate(plugin1); + } + + /// + ///A test for PluginDescriptor (MirandaPlugin, bool) + /// + [TestMethod(), ExpectedException(typeof(ArgumentNullException))] + public void ConstructorTest() + { + Virtuoso_Miranda_Plugins_PluginDescriptorAccessor.CreatePrivate(null); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/Properties/AssemblyInfo.cs b/Hyphen/Plugins/UnitTests/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..61cbae3 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/Properties/AssemblyInfo.cs @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Virtuoso.Miranda.Plugins.UnitTests")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Home")] +[assembly: AssemblyProduct("Virtuoso.Miranda.Plugins.UnitTests")] +[assembly: AssemblyCopyright("Copyright © Home 2006")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM componenets. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("83dde3d5-467d-4a60-a1b3-174efc22bdea")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Hyphen/Plugins/UnitTests/ServiceFunctionAttributeTest.cs b/Hyphen/Plugins/UnitTests/ServiceFunctionAttributeTest.cs new file mode 100644 index 0000000..ab54ced --- /dev/null +++ b/Hyphen/Plugins/UnitTests/ServiceFunctionAttributeTest.cs @@ -0,0 +1,80 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Infrastructure; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute and is intended + ///to contain all Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute Unit Tests + /// + [TestClass()] + public class ServiceFunctionAttributeTest + { + + + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + + /// + ///A test for ServiceFunctionAttribute (string) + /// + [TestMethod(), ExpectedException(typeof(ArgumentNullException))] + public void ConstructorTest() + { + new ServiceFunctionAttribute(null); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/Test References/Hyphen.accessor b/Hyphen/Plugins/UnitTests/Test References/Hyphen.accessor new file mode 100644 index 0000000..758f84a --- /dev/null +++ b/Hyphen/Plugins/UnitTests/Test References/Hyphen.accessor @@ -0,0 +1,2 @@ +Hyphen.dll +Desktop diff --git a/Hyphen/Plugins/UnitTests/UnitTests.csproj b/Hyphen/Plugins/UnitTests/UnitTests.csproj new file mode 100644 index 0000000..ddce46e --- /dev/null +++ b/Hyphen/Plugins/UnitTests/UnitTests.csproj @@ -0,0 +1,88 @@ + + + + Debug + AnyCPU + 9.0.21022 + 2.0 + {88ECE450-D3F9-40BF-A702-272BF1D9000B} + Library + Virtuoso.Miranda.Plugins.UnitTests + Virtuoso.Miranda.Plugins.UnitTests + 4 + {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + true + Virtuoso.Hyphen.snk + 0 + 3.5 + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + true + full + false + .\bin\Debug\ + DEBUG;TRACE + + + false + true + .\bin\Release\ + TRACE + + + + + + + + + + + + + + + + + + + + + False + .NET Framework 2.0 %28x86%29 + true + + + False + .NET Framework 3.0 %28x86%29 + false + + + False + .NET Framework 3.5 + false + + + + + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C} + Hyphen + + + + \ No newline at end of file diff --git a/Hyphen/Plugins/UnitTests/UnitTests.csproj.user b/Hyphen/Plugins/UnitTests/UnitTests.csproj.user new file mode 100644 index 0000000..32f6213 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/UnitTests.csproj.user @@ -0,0 +1,17 @@ + + + ProjectFiles + + + + + + + + + + + en-US + false + + \ No newline at end of file diff --git a/Hyphen/Plugins/UnitTests/UnmanagedStringHandleTest.cs b/Hyphen/Plugins/UnitTests/UnmanagedStringHandleTest.cs new file mode 100644 index 0000000..c0aa982 --- /dev/null +++ b/Hyphen/Plugins/UnitTests/UnmanagedStringHandleTest.cs @@ -0,0 +1,115 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Native; +using System.Runtime.InteropServices; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle and is intended + ///to contain all Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Unit Tests + /// + [TestClass()] + public class UnmanagedStringHandleTest + { + + + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + + /// + ///A test for Free () + /// + [TestMethod()] + public void FreeTest() + { + UnmanagedStringHandle handle = new UnmanagedStringHandle("foo"); + handle.Free(); + + handle = UnmanagedStringHandle.Empty; + handle.Free(); + } + + /// + ///A test for UnmanagedStringHandle (string, StringMarshalKind) + /// + [TestMethod()] + public void ConstructorTest() + { + const string str = "foo"; + UnmanagedStringHandle handle = UnmanagedStringHandle.Empty; + + try + { + handle = new UnmanagedStringHandle(str); + Assert.AreEqual(str, Marshal.PtrToStringAnsi(handle.IntPtr)); + } + finally + { + handle.Free(); + } + + try + { + handle = new UnmanagedStringHandle(str, StringEncoding.Unicode); + Assert.AreEqual(str, Marshal.PtrToStringUni(handle.IntPtr)); + } + finally + { + handle.Free(); + } + } + } +} diff --git a/Hyphen/Plugins/UnitTests/UnmanagedStructHandleTest.cs b/Hyphen/Plugins/UnitTests/UnmanagedStructHandleTest.cs new file mode 100644 index 0000000..0ee899b --- /dev/null +++ b/Hyphen/Plugins/UnitTests/UnmanagedStructHandleTest.cs @@ -0,0 +1,178 @@ +// The following code was generated by Microsoft Visual Studio 2005. +// The test owner should check each test for validity. +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System; +using System.Text; +using System.Collections.Generic; +using Virtuoso.Miranda.Plugins.Native; +using System.Runtime.InteropServices; +namespace Virtuoso.Miranda.Plugins.UnitTests +{ + /// + ///This is a test class for Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle<T> and is intended + ///to contain all Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle<T> Unit Tests + /// + [TestClass()] + public class UnmanagedStructHandleTest + { + private TestContext testContextInstance; + + /// + ///Gets or sets the test context which provides + ///information about and functionality for the current test run. + /// + public TestContext TestContext + { + get + { + return testContextInstance; + } + set + { + testContextInstance = value; + } + } + #region Additional test attributes + // + //You can use the following additional attributes as you write your tests: + // + //Use ClassInitialize to run code before running the first test in the class + // + //[ClassInitialize()] + //public static void MyClassInitialize(TestContext testContext) + //{ + //} + // + //Use ClassCleanup to run code after all tests in a class have run + // + //[ClassCleanup()] + //public static void MyClassCleanup() + //{ + //} + // + //Use TestInitialize to run code before running each test + // + //[TestInitialize()] + //public void MyTestInitialize() + //{ + //} + // + //Use TestCleanup to run code after each test has run + // + //[TestCleanup()] + //public void MyTestCleanup() + //{ + //} + // + #endregion + + private const int TestDataValue = 100; + private int TestData; + private UnmanagedStructHandle TestHandle; + + [TestInitialize] + public void TestInitialize() + { + this.TestData = TestDataValue; + this.TestHandle = new UnmanagedStructHandle(ref this.TestData); + } + + [TestCleanup] + public void TestCleanup() + { + this.TestHandle.Free(); + } + + /// + ///A test for Free () + /// + [TestMethod()] + public void FreeTest() + { + this.TestHandle.Free(); + Assert.AreEqual(IntPtr.Zero, this.TestHandle.IntPtr, "Free method did not zeroed the memory handle."); + + this.TestHandle = UnmanagedStructHandle.Empty; + this.TestHandle.Free(); + + IntPtr ptr = Marshal.AllocHGlobal(1); + Marshal.StructureToPtr(0xac, ptr, false); + + this.TestHandle = new UnmanagedStructHandle(ref this.TestData, ptr); + this.TestHandle.Free(); + Assert.AreNotEqual(0xac, Marshal.ReadByte(ptr), "Free did not released the single-pressure."); + + ptr = Marshal.AllocHGlobal(1); + Marshal.StructureToPtr(0xac, ptr, false); + + this.TestHandle = new UnmanagedStructHandle(ref this.TestData, new IntPtr[] { ptr }); + this.TestHandle.Free(); + Assert.AreNotEqual(0xac, Marshal.ReadByte(ptr), "Free did not released the pressure."); + } + + /// + ///A test for implicit operator (UnmanagedStructHandle<T>) + /// + [TestMethod()] + public void ConversionTest() + { + IntPtr intPtr = this.TestHandle; + Assert.AreEqual(this.TestHandle.IntPtr, intPtr, "Implicit conversion to IntPtr failed."); + } + + /// + ///A test for implicit operator (UnmanagedStructHandle<T>) + /// + [TestMethod()] + public void ConversionTest1() + { + UIntPtr uintPtr = this.TestHandle; + Assert.AreEqual(new UIntPtr((ulong)this.TestHandle.IntPtr.ToInt64()), uintPtr, "Implicit conversion to UIntPtr failed."); + } + + [TestMethod] + public void IntPtrTest() + { + this.TestHandle.Free(); + Assert.AreEqual(IntPtr.Zero, this.TestHandle.IntPtr); + } + + /// + ///A test for MarshalBack (out T) + /// + [TestMethod()] + public void MarshalBackTest() + { + // Value type test + int newInt = -100; + Marshal.StructureToPtr(newInt, this.TestHandle.IntPtr, false); + + int currentInt; + this.TestHandle.MarshalBack(out currentInt); + + Assert.AreEqual(newInt, currentInt, "MarshalBack method did not marshalled data back correctly."); + } + + [TestMethod] + public void CtorTest() + { + int i = 100; + this.TestHandle = new UnmanagedStructHandle(ref i, MarshalKind.Copy); + + Marshal.WriteInt32(this.TestHandle, -100); + this.TestHandle.MarshalBack(out i); + + Assert.AreEqual(-100, i, "Copy method does not work properly."); + this.TestHandle.Free(); + + i = 100; + this.TestHandle = new UnmanagedStructHandle(ref i, MarshalKind.PinBlittable); + + Marshal.WriteInt32(this.TestHandle, -100); + this.TestHandle.MarshalBack(out i); + + Assert.AreEqual(-100, i, "PinBlittable method does not work properly."); + this.TestHandle.Free(); + } + } +} diff --git a/Hyphen/Plugins/UnitTests/Virtuoso.Hyphen.snk b/Hyphen/Plugins/UnitTests/Virtuoso.Hyphen.snk new file mode 100644 index 0000000..a568e3f Binary files /dev/null and b/Hyphen/Plugins/UnitTests/Virtuoso.Hyphen.snk differ diff --git a/Hyphen/Plugins/UpgradeLog.XML b/Hyphen/Plugins/UpgradeLog.XML new file mode 100644 index 0000000..40913eb Binary files /dev/null and b/Hyphen/Plugins/UpgradeLog.XML differ diff --git a/Hyphen/Plugins/Virtuoso.Hyphen.snk b/Hyphen/Plugins/Virtuoso.Hyphen.snk new file mode 100644 index 0000000..a568e3f Binary files /dev/null and b/Hyphen/Plugins/Virtuoso.Hyphen.snk differ diff --git a/Hyphen/Plugins/bin/Hyphen.dll b/Hyphen/Plugins/bin/Hyphen.dll new file mode 100644 index 0000000..52b6e34 Binary files /dev/null and b/Hyphen/Plugins/bin/Hyphen.dll differ diff --git a/Hyphen/Plugins/bin/Hyphen.pdb b/Hyphen/Plugins/bin/Hyphen.pdb new file mode 100644 index 0000000..22df7a0 Binary files /dev/null and b/Hyphen/Plugins/bin/Hyphen.pdb differ diff --git a/Hyphen/Plugins/bin/Hyphen.xml b/Hyphen/Plugins/bin/Hyphen.xml new file mode 100644 index 0000000..42bddb0 --- /dev/null +++ b/Hyphen/Plugins/bin/Hyphen.xml @@ -0,0 +1,2016 @@ + + + + Hyphen + + + + + Represents a standalone module loaded into the default AppDomain. + + + + + Initializes a new instance of the class. + + TRUE if the modules runs under a post-0.7#20 API; FALSE otherwise. + + + + Finalizes the module. + + + + + Represents the MirandaPluginInfo export of Miranda's API. + + Miranda version (in Miranda's format) + Ptr to an instance of the PLUGININFO(EX) structure. + + + + Represents the MirandaPluginInterfaces export of Miranda's API. + + Ptr to an array of interface GUIDs. + + + + Represents the Load export of Miranda API. Loads Hyphen and initializes the module. + + Ptr to an instance of the PLUGINLINK structure. + Load result. + + + + Enables the plugin when Miranda completes initialization. + + + + + Represents the Unload export of Miranda API. Unloads Hyphen and shuts down the runtime. + + Unload result. + + + + Gets a indication whether a plugin can be unloaded. + + + + + + Gathers and publishes plugin information. + + Plugin to evaluate. + Miranda version to pass to the plugin. + TRUE if the information were obtained; FALSE if not. + + + + Probes custom API exports of a standalone plugin. + + Plugin. + + + + Loads the actual plugin behind a proxy assembly. + + An instance of a plugin. + + + + Executes a custom API export. + + Type of the return value. + Export name. + Additional data. + Return value. + + + + Gets a standalone plugin behind this module. + + + + + Gets a value indicating whether the runtime runs under the post-0.7#20 Miranda API. + + + + + Gets a value indicating whether the standalone plugin was loaded. + + + + + Gets a value indicating whether the standalone plugins was initialized (i.e. has a descriptor). + + + + + Auxiliary Plugin Manager used to load a standalone plugin into the default AppDomain. + + + + + Represents a base class for cross-domain callable object that operate with Miranda Context. + + + + + Populates context information to be available for standalone plugins residing in the default AppDomain. + + The information are not published when there are no standalone modules to conserve resources. + + + + Represents an unknown plugin. Hyphen will impersonate itself with this plugin when binding to Miranda's events. + + + + + MirandaContext is not available at the time of the invocation. + + + + + + + + Controls managed plugin fusion and orchestrates the runtime. + + + + + Initializes the runtime. + + + Called from the exported IL stubs as a first method to initialize the Loader singleton. + + + + + Initializes the Loader and prepares its PLUGININFO. + + + + + Publishes the plugin info and marshals it into a ptr. + + + + + Populates the plugin info with Hyphen's identity. + + Plugin info. + + + + Gets a specified version of the Loader. + + A version of the Loader to be returned. + An instance of the Loader or NULL when the version cannot be satisfied. + + Cannot be inlined because of the HyphenVersion property which relies on the Assembly.GetExecutingAssembly() method. + + + + + Gets an instance of the Loader. + + An instance of the Loader. + method not called. + + + + Represents the MirandaPluginInfo export of Miranda's API. + + Miranda version (in Miranda's format) + Ptr to an instance of the PLUGININFO structure. + + + + Represents the MirandaPluginInfoEx export of Miranda's API. + + Miranda version (in Miranda's format) + Ptr to an instance of the PLUGININFOEX structure. + + Specific to post-0.7#20 Miranda API. + + + + + Gets the pointer to a dummy plugin info structure. + + Pointer. + + + + Performs initialization steps common to all MirandaPluginInfo exports. + + Miranda version. + + + + Represents the MirandaPluginInterfaces export of Miranda's API. + + Ptr to an array of interface GUIDs. + + + + Called by a standalone module to ensure the Loader is ready (the module could be loaded before Hyphen). + + Ptr to an instance of the PLUGINLINK structure. + + Calls the to ensure that the Loader is ready. This method is needed + to handle a situation when a standalone module is loaded before Hyphen. + Does nothing when Hyphen is already loaded. + + + + + Represents the Load export of Miranda API. Loads Hyphen and initializes the runtime. + + Ptr to an instance of the PLUGINLINK structure. + Result. + + + + Initializes the runtime context (including configuration). + + Ptr to PLUGINLINK to initialize from. + + + + Hooks to the ModulesLoaded event to complete context initialization. + + + + + Completes the runtime initialization and fires the ModulesLoaded event. + + + + + Registers Hyphen for updates via Updater. + + + + + Initializes the FileSystemWatcher to watch for plugin changes. + + + + + Populates Miranda's menu with Hyphen's items and initializes managed menu for plugins. + + + + + Initializes the managed menu for managed plugins. This menu, unlike Miranda's, supports item removal. + + + + + Represents the Unload export of Miranda API. Unloads Hyphen and shuts down the runtime. + + Unload result. + + Called by the UnloadOnShutdownService to unload managed plugins before Miranda does. + Managed plugins SHOULD NOT be unloaded when Miranda's unloading, because I do not consider it safe + (i.e. heap corruption is likely to occur). + + + + + Unloads Hyphen completelly. + + + + + Disposes the plugin's folder watcher (if needed). + + + + + Disposes the Tray manager (if needed). + + + + + Broadcasts the BeforeShutdown event to the managed plugins and unloads Hyphen on Miranda's shutdown. + + + + + Broadcasts the BeforeShutdown event to the managed plugins. + + + + + Loads / unloads managed plugins. + + + + + Reloads managed plugins. + + + + + Loads managed plugins. + + + + + Called by the FusionProgressDialog on another thread to perform the fusion itself. + + + + + Initializes a sandbox for plugins. + + + + + Initializes a fusion context. + + + + + Loads the Plugin Manager. + + + + + Initializes the Tray Manager. + + + + + Initializes the UI sync context for event dispathing on the current thread. + + + + + Registers managed main menu for Miranda's AddMenuItem services in an AppDomain. + + Plugin manager. + + + + Clears the StringResolver cache (plugins are loaded and resolvers are junk now). + + + + + Shows managed menu. + + + + + Shows a configuration dialog to configure standalone modules. + + + + + Shows Isolated-plugins management dialog. + + + + + Shows the plugin management dialog. + + + + + Handles a plugin file change. + + + + + Unloads managed plugins. + + + + + Unloads managed plugins. + + TRUE to perform fast unload only; FALSE to perfrom full unload. + + + + Handles Hyphen (default AppDomain) unhandled exceptions. + + + + + Handles Windows Forms (default AppDomain) unhandled exceptions. + + + + + Verifies the .config file is present and when it is not, the default one is created. + + + + + Ensures only a single instance of Hyphen is loaded into the process. + + + + + Formats singleton's mutex name. + + Mutext name. + + + + Invokes a delegate on behalf of Loader's AppDomain (i.e. the default one). + + Delegate. + Optional arguments. + + + + + Verifies whether the code is executing in the default AppDomain. + + The code is not executing in the default AppDomain. + + + + Gets a current version of the runtime. + + + + + Gets a value whether the plugins are loaded. Not synchronized, always use in a lock. + + THIS MUST NOT BE SYNCHRONIZED, ALWAYS CALLED IN LOCK! (possible deadlock in FusionProgressDialog). + + + + Gets Hyphen plugin info. + + + + + + + + + This method is static to not let the execution run in default AppDomain but in a domain of the menu itself. + + + + + Will return char*, as usual. + + + + + Will never return the user's custom name. + + + + + Will return TCHAR* instead of char*. + + + + + Will not use the cache. + + + + + Enumerates contact handles, excluding the Me contact. + + Contact handles. + + + + Return TRUE to filter out the event, FALSE to pass the message along. + + + + + Represents database event information. + + + + + DB/Event/Get + Retrieves all the information stored in hDbEvent + wParam=(WPARAM)(HANDLE)hDbEvent + lParam=(LPARAM)(DBEVENTINFO*)&dbe + hDbEvent should have been returned by db/event/add or db/event/find*event + Returns 0 on success or nonzero if hDbEvent is invalid + Don't forget to set dbe.cbSize, dbe.pBlob and dbe.cbBlob before calling this + service + The correct value dbe.cbBlob can be got using db/event/getblobsize + If successful, all the fields of dbe are filled. dbe.cbBlob is set to the + actual number of bytes retrieved and put in dbe.pBlob + If dbe.cbBlob is too small, dbe.pBlob is filled up to the size of dbe.cbBlob + and then dbe.cbBlob is set to the required size of data to go in dbe.pBlob + On return, dbe.szModule is a pointer to the database module's own internal list + of modules. Look but don't touch. + + + + + DB/Event/GetContact + Retrieves a handle to the contact that owns hDbEvent. + wParam=(WPARAM)(HANDLE)hDbEvent + lParam=0 + hDbEvent should have been returned by db/event/add or db/event/find*event + NULL is a valid return value, meaning, as usual, the user. + Returns (HANDLE)(-1) if hDbEvent is invalid, or the handle to the contact on + success + This service is exceptionally slow. Use only when you have no other choice at + all. + + + + + DB/Event/GetText (0.7.0+) + Retrieves the event's text + wParam=(WPARAM)0 (unused) + lParam=(LPARAM)(DBEVENTGETTEXT*)egt - pointer to structure with parameters + egt->dbei should be the valid database event read via MS_DB_EVENT_GET + egt->datatype = DBVT_WCHAR or DBVT_ASCIIZ or DBVT_TCHAR. If a caller wants to + suppress Unicode part of event in answer, add DBVTF_DENYUNICODE to this field. + egt->codepage is any valid codepage, CP_ACP by default. + Function returns a pointer to a string in the required format. + This string should be freed by a call of mir_free + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Event handle. + + + + Creates a new instance of the from an event handle. + + Event handle. + Database event info. + + + + Gets the event information based on its handle. + + Event handle. + [OUT] Event type. + [OUT] Event flags. + [OUT] Event data. + [OUT] Event related module. + [OUT] Event timestamp. + + + + Prepares the for information extraction and the blob buffer. + + Event handle. + [OUT] DB event info to marshal data into. + [OUT] Locked Blob buffer. + + + + Initializes the instance by marshaling data from a pointer. + + pointer. + + + + Get the event information from a struct. + + [REF] struct. + Event handle (the blob buffer will be populated if not null). + Buffer to use for blob marshaling. + [OUT] Event type. + [OUT] Event flags. + [OUT] Event data. + [OUT] Event related module. + [OUT] Event timestamp. + + + + Populates the blob buffer set by the parameter. + + [REF] struct identifiing the buffer. + Event handle. + Buffer could bet populated. + + + + Gets the event timestamp. + + [REF] struct. + Buffer to reuse. + [OUT] Timestamp. + + + + Gets the event module. + + [REF] struct. + Event module. + + + + Gets the event data. + + [REF] struct. + Event data. + + + + Marshals the from a struct pointer. + + struct pointer. + Event info. + + + + Gets the handle of the contact owning this event. This method is very slow, use wisely. + + Associated contact handle. + + + + Gets the handle of the contact owning this event. This method is very slow, use wisely. + + Event handle to get the contact handle for. + Associated contact handle. + + + + The network capabilities that the protocol supports. + + + + + The status modes that the protocol supports. + + + + + The status modes that the protocol supports away-style messages for. Uses the flags. + + + + + None. + + + + + Supports IM sending. + + + + + Supports IM receiving. + + + + + Aupports separate URL sending. + + + + + Supports separate URL receiving. + + + + + Supports file sending. + + + + + Supports file receiving. + + + + + Supports broadcasting away messages. + + + + + Supports reading others' away messages. + + + + + Contact lists are stored on the server, not locally. See notes below. + + + + + Will get authorisation requests for some or all contacts. + + + + + Will get 'you were added' notifications. + + + + + Has an invisible list. + + + + + Has a visible list for when in invisible mode. + + + + + Supports setting different status modes to each contact. + + + + + the protocol is extensible and Supports plugin-defined messages. + + + + + Supports direct (not server mediated) communication between clients. + + + + + Supports creation of new user IDs. + + + + + Has a realtime chat capability. + + + + + Supports replying to a mode message request with different text depending on the contact requesting. + + + + + Supports a basic user searching facility. + + + + + Supports one or more protocol-specific extended search schemes. + + + + + Supports renaming of incoming files as they are transferred. + + + + + Can resume broken file transfers. + + + + + Can add search results to the contact list. + + + + + Can send contacts to other users. + + + + + Can receive contacts from other users. + + + + + Can change our user information stored on server. + + + + + Supports a search by e-mail feature. + + + + + Set if the uniquely identifying field of the network is the e-mail address. + + + + + Supports searching by nick/first/last names. + + + + + Has a dialog box to allow searching all the possible fields. + + + + + The unique user IDs for this protocol are numeric. + + + + + Flashes the icon even if the user is occupied, and puts the event at the top of the queue. + + + + + The icon will not flash for ever, only a few times. This is for eg online alert. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + + Initializes a context from a plugin link. + + + + + + + Represents a late-binded master subscriber of Miranda events. + + + + + Formats the ANSI-\0-UNICODE-\0\0 layout in the memory. + + String to layout. + [OUT] Blob pointer to the resulting memory layout. + Blob size in bytes. + Message blob format: ansi\0unicode\0\0 + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins are enabled and ready to use. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die General ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die About ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Show Hyphen copyright information. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Review Hyphen information. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Management ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Manage Hyphen plugins. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Enable or disable Hyphen plugins on individual basis. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die This operation is not supported for an unknown protocol. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot detect the default string encoding used in Miranda. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An internal error occurred in the PluginManager while working with unmanaged memory. Contact Hyphen vendor, please. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while opening plugin home page. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot register/unregister builtin protocol. Only custom protocol can be registered/unregistered. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to initialize Hyphen configuration. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Duplicit loader options detected. RequiredVersion or MinimalMirandaVersion were set by a base class previously. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot complete the service call. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while loading plugins. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The feature is not available from current domain. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - {1} ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load string resolver of type '{0}'. Check if there is a public default .ctor. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Failed hooking event '{0}'. Check event name. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - this plugin cannot be loaded automatically. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to process method '{0}' - method signature does not match required delegate signature. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot instantiate plugin type '{0}' - no valid constructor found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot create service function '{0}' - the service already exists. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Failed creating service function '{0}'. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Master type for the {0} standalone plugin proxy not found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to initialize plugin descriptor - {0} ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while instantiating plugin type '{0}' - Hyphen is not allowed to load the plugin. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - the image is not a valid CLI assembly. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while instantiating plugin type '{0}' - constructor threw an exception ({1}). ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot complete requested operation - Miranda service '{0}' returned {1}. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugin {0} requires {1} but this version is not available, the plugin cannot be loaded. Please download the latest version. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot associate menu item '{0}' with method '{1}' - the item is already associated with service '{2}'. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hook not found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Multiple Hyphen plugins are not supported side-by-side. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An internal error occurred in Hyphen. Please contact Hyphen's author. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot access the InteropBuffer without locking it before. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot perform the requested operation on a locked buffer. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot unlock the buffer from a thread that does not locked it. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Invalid fusion context. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The handle is invalid. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot translate this value - invalid value address or value format. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugins - I/O error occurred. Check if you have permissions to access the 'Miranda\plugins\managed' directory. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Miranda context has not been initialized yet. The context will be initialialized in the Load export, until then, context calls are not supported. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Miranda must be restarted. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot read the setting on behalf of the owning module - the owning module cannot be determined. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Internal error - cannot reinitialize already initialized plugin. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Already initialized. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot complete requested operation - this plugin has not been loaded yet. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Internal error occurred, cannot return requested information. The singleton has not been initialized yet. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while working with the Configuration Storage to load configuration. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while working with the Configuration Storage to save configuration. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to unload plugin manager - cannot initiate shutdown from its own AppDomain. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen crashed ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to load Hyphen ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to load/unload plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No options available ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No plugins enabled ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugins updated ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Runtime version problem ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Warning ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die {0} error ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugin {0} updated ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to load Hyphen - {0} ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while loading/unloading managed plugins - {0}. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occured in the {0} plugin, some information may be lost. However, the plugin will continue running. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred in the {1} plugin - {2}{0}{0}Press OK to disable the plugin, otherwise press Cancel. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Some information may be lost. However, the plugin will continue running. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occured in Hyphen. Please, contact its author to resolve the issue. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die You are about to disable all Hyphen plugins. Are you sure? ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die There was an error with Microsoft.net configuration files. These files are critical for Hyphen execution. The problem was corrected but Miranda must be restarted to apply changes. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die This plugin has no options to configure. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die To perform the task, you have to enable the plugins first. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins were successfully reloaded. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins were updated. Do you wish to reload them? ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occured while preparing the report. Copy the details and visit http://forums.miranda-im.org for assistance. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Configure ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Error ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die {0} crashed ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die (no items / plugins loaded) ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die (select a plugin) ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die <unknown> ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Options... ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Enable or disable plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Manage plugins... ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Extra items... ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Yes ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen ähnelt. + + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Occurs when a control is selected and before it is prepared to be shown. + + + + + Occurs when a control is about to be shown. The control is shown when the user clicks on its item. + + TRUE if the control is being requested for the first time; FALSE if it is requested repeatedly. + TRUE to cancel the display; FALSE to continue. + + + + Occurs when a control is about to be hidden. The control is hidden when the user clicks on another item. + + TRUE to cancel the dismissal; FALSE to continue. + + + + Occurs when the user dismisses the configuration dialog via OK button and the control is dirty. The control should save its settings now. + + + + + Occurs when the user dismisses the configuration dialog via OK or CANCEL button. + + + + + Marks the control dirty. + + + + + Gets a value indicating whether the control has an UI to show. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + Casablanca + + + + Remove the dialog from the active dialog tracking list. + + + + + Gathers active dialogs of the plugin and unregisters them. + + Plugin. + Unregistered dialogs to dispose. + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Draws a textbox with a prompt inside of it, similar to the "Quick Search" box + in Outlook 2007, IE7 or the Firefox 2.0 search box. The prompt will disappear when + the focus is placed in the textbox, and will not display again if the Text property + contains any value. If the Text property is empty, then the prompt will display + again when the textbox loses the focus. + + + + + Public constructor + + Uncomment the SetStyle line to activate the OnPaint logic in place of the WndProc logic + + + + When the textbox receives an OnEnter event, select all the text if any text is present + + + + + + Redraw the control when the text alignment changes + + + + + + Redraw the control with the prompt + + + This event will only fire if ControlStyles.UserPaint is set to true in the constructor + + + + Overrides the default WndProc for the control + + The Windows message structure + + This technique is necessary because the OnPaint event seems to be doing some + extra processing that I haven't been able to figure out. + + + + + Overload to automatically create the Graphics region before drawing the text prompt + + The Graphics region is disposed after drawing the prompt. + + + + Draws the PromptText in the TextBox.ClientRectangle using the PromptFont and PromptForeColor + + The Graphics region to draw the prompt on + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Represents a marker interface for classes wrapping Hyphen runtime configuration. + + + + + Represents a base class for managed Miranda protocols. + + + + + Initializes a new instance of the class. + + + + + Initializes the instance and creates essential protocol services. + + + + + + Unloads the protocol. + + + + + Gets a human-readable name for the protocol. + + The number of characters in the buffer. + Buffer pointer. + Returns 0 on success, nonzero on failure. + + + + Gets the status mode that a protocol is currently in. + + Not used. + Not used. + Returns the status mode. + + + + Changes the protocol's status mode. + + New status values. + Not used. + Returns 0 on success, nonzero on failure. + + Will send an ack with: + type=ACKTYPE_STATUS, result=ACKRESULT_SUCCESS, hProcess=(HANDLE)previousMode, lParam=newMode. + + + + + Loads one of the protocol-specific icons + + Which icon (currently ignored). + Not used. + Icon handle (HICON). + + + + Gets the capability flags of the module. + + Flags category. + Not used. + + + + + Sends an instant message. + + Flags. + Contact-Chain-Send data pointer. + Returns a hProcess corresponding to the one in the ack event. + + Will send an ack when the message actually gets sent type=ACKTYPE_MESSAGE, result=success/failure, lParam=0. + + + + + Gets the plugin interfaces. + + + + + Gets the managed protocol descriptor for this module. + + + + + Gets the protocol type. + + + + + Gets the protocol icon. + + + + + Gets the protocol supported capabilities. + + + + + Gets the status modes the protocol supports an away message for. + + + + + Gets the protocol supported status modes. + + + + + Gets or sets the protocol status. + + + + + Handles Ini categories, keys and their associated values, static methods implemented for file + handling (saving and reading) + + + + + Initialies a new IniStructure + + + + + Adds a category to the IniStructure + + Name of the new category + + + + Deletes a category and its contents + + category to delete + + + + Renames a category + + Category to rename + New name + + + + Returns the names of all categories + + + + + + Returns the name of a category by specifying the index. + Useful to enumerate through all categories. + + The category index + + + + + Adds a key-value pair to a specified category + + Name of the category + New name of the key + Associated value + + + + Returns the value of a key-value pair in a specified category by specifying the key + + Name of the category + Name of the Key + + + + + Returns the key-value pair in a specified category by specifying the index + + Index of the category + Index of the Key + + + + + Returns the name of the key in a key-value pair in a specified category by specifying the index + + Index of the category + Index of the key + + + + + Deletes a key-value pair + + Name of the category + Name of the Key + + + + Renames the keyname in a key-value pair + + Name of the category + Name of the Key + New name of the Key + + + + Modifies the value in a key-value pair + + Name of the category + Name of the Key + New name of the Key + + + + Returns all keys in a category + + Name of the category + + + + + Writes an IniStructure to a file with a comment. + + The contents to write + The complete path and name of the file + Comment to add + + + + + Writes an IniStructure to a file without a comment. + + The contents to write + The complete path and name of the file + + + + + Reads an ini file and returns the content as an IniStructure. Returns null if an error occurred. + + The filename to read + + + + + Call the next service in the chain for this send operation. + wParam=wParam + lParam=lParam + The return value should be returned immediately + wParam and lParam should be passed as the parameters that your service was + called with. wParam must remain untouched but lParam is a CCSDATA structure + that can be copied and modified if needed. + Typically, the last line of any chaining protocol function is + return CallService(MS_PROTO_CHAINSEND,wParam,lParam); + + + + + Call the next service in the chain for this receive operation + wParam=wParam + lParam=lParam + The return value should be returned immediately + wParam and lParam should be passed as the parameters that your service was + called with. wParam must remain untouched but lParam is a CCSDATA structure + that can be copied and modified if needed. + When being initiated by the network-access protocol module, wParam should be + zero. + Thread safety: ms_proto_chainrecv is completely thread safe since 0.1.2.0 + Calls to it are translated to the main thread and passed on from there. The + function will not return until all callees have returned, irrepective of + differences between threads the functions are in. + + + + + Represents a generic handler for Miranda-raised events. + + Type of EventArgs. + Sender of the event. + Event arguments. + TRUE to block the event from bubbling to another subscribers, FALSE to pass it along. + + + + Provides information about current state of Hyphen runtime. + This class can be used only from the context of standalone modules (i.e. from the default AppDomain only). + + + + + Marks the class initialized. + + + + + Verifies whether the class was initialized (from the default AppDomain). + + Class not initialized (i.e. called from other than default AppDomain). + + + + Gets an indication whether the Hyphen runtime is currently loading. + + Class not initialized (i.e. called from other than default AppDomain). + + + + Gets an indication whether the Isolated plugins are loaded. + + Class not initialized (i.e. called from other than default AppDomain). + + + + Manages Miranda skin entities, for example icons and sounds. + + m_skin.h + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + diff --git a/Hyphen/Plugins/bin/IL/Plugins.il b/Hyphen/Plugins/bin/IL/Plugins.il new file mode 100644 index 0000000..1149468 --- /dev/null +++ b/Hyphen/Plugins/bin/IL/Plugins.il @@ -0,0 +1,66894 @@ + +// Microsoft (R) .NET Framework IL Disassembler. Version 3.5.30729.1 +// Copyright (c) Microsoft Corporation. Alle Rechte vorbehalten. + + + +// Metadata version: v2.0.50727 +.assembly extern mscorlib +{ + .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. + .ver 2:0:0:0 +} +.assembly extern System.Windows.Forms +{ + .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. + .ver 2:0:0:0 +} +.assembly extern System +{ + .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. + .ver 2:0:0:0 +} +.assembly extern System.Drawing +{ + .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: + .ver 2:0:0:0 +} +.assembly extern TabStripControlLibrary +{ + .publickeytoken = (FA E8 F1 19 9E 71 06 DC ) // .....q.. + .ver 1:0:0:0 +} +.assembly extern System.Security +{ + .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: + .ver 2:0:0:0 +} +.assembly Hyphen +{ + .custom instance void [mscorlib]System.Reflection.AssemblyCopyrightAttribute::.ctor(string) = ( 01 00 16 C2 A9 20 32 30 30 36 2D 32 30 31 30 2C // ..... 2006-2010, + 20 76 69 72 74 75 6F 73 6F 00 00 ) // virtuoso.. + .custom instance void [mscorlib]System.Runtime.InteropServices.ComVisibleAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Reflection.AssemblyCompanyAttribute::.ctor(string) = ( 01 00 08 76 69 72 74 75 6F 73 6F 00 00 ) // ...virtuoso.. + .custom instance void [mscorlib]System.Reflection.AssemblyProductAttribute::.ctor(string) = ( 01 00 0F 56 69 72 74 75 6F 73 6F 2E 48 79 70 68 // ...Virtuoso.Hyph + 65 6E 00 00 ) // en.. + .custom instance void [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::.ctor() = ( 01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78 // ....T..WrapNonEx + 63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01 ) // ceptionThrows. + .custom instance void [mscorlib]System.Reflection.AssemblyConfigurationAttribute::.ctor(string) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.GuidAttribute::.ctor(string) = ( 01 00 24 30 30 63 39 31 66 63 31 2D 64 63 38 65 // ..$00c91fc1-dc8e + 2D 34 37 33 64 2D 62 65 39 65 2D 33 63 37 32 32 // -473d-be9e-3c722 + 38 39 61 62 64 66 32 00 00 ) // 89abdf2.. + .custom instance void [mscorlib]System.Reflection.AssemblyDescriptionAttribute::.ctor(string) = ( 01 00 00 00 00 ) + + // --- The following custom attribute is added automatically, do not uncomment ------- + // .custom instance void [mscorlib]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 07 01 00 00 00 00 ) + + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilationRelaxationsAttribute::.ctor(int32) = ( 01 00 08 00 00 00 00 00 ) + .custom instance void [mscorlib]System.Reflection.AssemblyTrademarkAttribute::.ctor(string) = ( 01 00 08 76 69 72 74 75 6F 73 6F 00 00 ) // ...virtuoso.. + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [mscorlib]System.Reflection.AssemblyFileVersionAttribute::.ctor(string) = ( 01 00 0E 30 2E 38 2E 33 30 30 30 2E 30 30 39 30 // ...0.8.3000.0090 + 39 00 00 ) // 9.. + .custom instance void [mscorlib]System.Runtime.CompilerServices.InternalsVisibleToAttribute::.ctor(string) = ( 01 00 81 60 56 69 72 74 75 6F 73 6F 2E 48 79 70 // ...`Virtuoso.Hyp + 68 65 6E 2E 4D 69 6E 69 2C 20 50 75 62 6C 69 63 // hen.Mini, Public + 4B 65 79 3D 30 30 32 34 30 30 30 30 30 34 38 30 // Key=002400000480 + 30 30 30 30 39 34 30 30 30 30 30 30 30 36 30 32 // 0000940000000602 + 30 30 30 30 30 30 32 34 30 30 30 30 35 32 35 33 // 0000002400005253 + 34 31 33 31 30 30 30 34 30 30 30 30 30 31 30 30 // 4131000400000100 + 30 31 30 30 35 64 39 62 64 33 35 38 32 64 30 63 // 01005d9bd3582d0c + 30 31 64 63 64 35 34 38 35 34 61 63 32 66 33 36 // 01dcd54854ac2f36 + 63 39 34 66 37 62 65 66 32 33 35 62 32 65 32 62 // c94f7bef235b2e2b + 35 34 37 39 32 34 38 65 66 64 64 64 36 35 34 33 // 5479248efddd6543 + 31 62 63 65 65 66 36 63 39 32 64 37 35 39 64 37 // 1bceef6c92d759d7 + 66 32 33 66 33 36 39 32 37 30 34 63 64 31 38 66 // f23f3692704cd18f + 30 63 35 62 37 65 65 33 34 33 36 61 30 66 37 62 // 0c5b7ee3436a0f7b + 39 62 32 65 61 66 38 66 62 66 32 30 35 62 38 35 // 9b2eaf8fbf205b85 + 31 35 30 64 31 37 31 61 30 66 62 62 37 36 35 38 // 150d171a0fbb7658 + 66 62 35 30 63 31 35 33 31 66 36 65 65 65 33 65 // fb50c1531f6eee3e + 63 37 30 32 33 39 61 65 33 38 61 63 33 38 33 64 // c70239ae38ac383d + 64 37 34 32 61 37 35 34 36 39 31 63 39 36 35 63 // d742a754691c965c + 63 32 33 63 64 37 31 36 36 31 38 62 38 63 38 39 // c23cd716618b8c89 + 62 32 35 63 61 30 34 34 30 32 65 61 34 61 35 37 // b25ca04402ea4a57 + 39 61 36 36 62 64 66 35 30 33 33 35 65 34 62 36 // 9a66bdf50335e4b6 + 64 32 62 30 63 37 32 62 64 31 38 33 33 32 38 34 // d2b0c72bd1833284 + 38 37 62 35 00 00 ) // 87b5.. + .custom instance void [mscorlib]System.Runtime.CompilerServices.InternalsVisibleToAttribute::.ctor(string) = ( 01 00 81 6E 56 69 72 74 75 6F 73 6F 2E 4D 69 72 // ...nVirtuoso.Mir + 61 6E 64 61 2E 50 6C 75 67 69 6E 73 2E 55 6E 69 // anda.Plugins.Uni + 74 54 65 73 74 73 2C 20 50 75 62 6C 69 63 4B 65 // tTests, PublicKe + 79 3D 30 30 32 34 30 30 30 30 30 34 38 30 30 30 // y=00240000048000 + 30 30 39 34 30 30 30 30 30 30 30 36 30 32 30 30 // 0094000000060200 + 30 30 30 30 32 34 30 30 30 30 35 32 35 33 34 31 // 0000240000525341 + 33 31 30 30 30 34 30 30 30 30 30 31 30 30 30 31 // 3100040000010001 + 30 30 31 39 30 65 30 63 64 30 39 36 32 62 66 65 // 00190e0cd0962bfe + 37 38 33 35 62 32 32 62 65 34 33 63 65 34 39 61 // 7835b22be43ce49a + 63 64 31 30 39 64 35 64 30 63 30 35 31 32 35 33 // cd109d5d0c051253 + 34 66 37 34 61 61 66 30 31 66 63 64 62 37 37 31 // 4f74aaf01fcdb771 + 32 66 63 61 37 62 38 31 62 35 30 34 38 61 35 31 // 2fca7b81b5048a51 + 61 34 33 37 35 30 66 61 38 64 65 35 63 31 36 38 // a43750fa8de5c168 + 36 32 38 63 32 65 34 66 39 30 61 63 66 34 33 35 // 628c2e4f90acf435 + 35 39 62 63 33 32 38 30 32 34 32 36 35 64 66 35 // 59bc328024265df5 + 33 64 35 62 32 31 61 36 31 37 32 30 63 33 62 65 // 3d5b21a61720c3be + 37 35 65 39 61 33 62 31 35 30 34 36 61 34 62 30 // 75e9a3b15046a4b0 + 38 39 32 66 36 30 61 32 31 35 65 31 63 62 38 64 // 892f60a215e1cb8d + 62 34 36 37 64 38 34 64 32 36 32 36 31 30 30 65 // b467d84d2626100e + 37 33 39 30 61 39 32 39 66 33 35 62 35 33 63 34 // 7390a929f35b53c4 + 66 38 35 33 64 32 35 32 33 63 66 65 38 37 64 34 // f853d2523cfe87d4 + 38 34 32 34 36 64 64 66 34 34 36 63 31 38 34 39 // 84246ddf446c1849 + 63 36 62 35 65 34 33 30 62 31 32 63 63 30 62 36 // c6b5e430b12cc0b6 + 61 61 00 00 ) // aa.. + .custom instance void [mscorlib]System.Reflection.AssemblyTitleAttribute::.ctor(string) = ( 01 00 0F 56 69 72 74 75 6F 73 6F 2E 48 79 70 68 // ...Virtuoso.Hyph + 65 6E 00 00 ) // en.. + .permissionset reqmin + = {[mscorlib]System.Security.Permissions.SecurityPermissionAttribute = {property enum class 'System.Security.Permissions.SecurityPermissionFlag, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 'Flags' = int32(1306)}, + [mscorlib]System.Security.Permissions.SecurityPermissionAttribute = {property bool 'SkipVerification' = bool(true)}} + .hash algorithm 0x00008004 + .ver 0:8:3000:909 +} +.mresource public Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources +{ + // Offset: 0x00000000 Length: 0x000046E0 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.TextResources.resources +{ + // Offset: 0x000046E8 Length: 0x0000320D + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.TextResources.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.VisualResources.resources +{ + // Offset: 0x00007900 Length: 0x000082F0 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.VisualResources.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources +{ + // Offset: 0x0000FBF8 Length: 0x00004835 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources +{ + // Offset: 0x00014438 Length: 0x000000B4 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources +{ + // Offset: 0x000144F0 Length: 0x000000B4 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources +{ + // Offset: 0x000145A8 Length: 0x00000957 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources" wurde erstellt. +} +.mresource public Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources +{ + // Offset: 0x00014F08 Length: 0x00000CC8 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources +{ + // Offset: 0x00015BD8 Length: 0x00001847 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources +{ + // Offset: 0x00017428 Length: 0x000000B4 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources +{ + // Offset: 0x000174E0 Length: 0x000000B4 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources +{ + // Offset: 0x00017598 Length: 0x00000561 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources +{ + // Offset: 0x00017B00 Length: 0x00006AF1 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources +{ + // Offset: 0x0001E5F8 Length: 0x0000599E + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Properties.Resources.resources +{ + // Offset: 0x00023FA0 Length: 0x000024CF + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Properties.Resources.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.ShowManagedMenuItems.ico +{ + // Offset: 0x00026478 Length: 0x0000057E + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.ShowManagedMenuItems.ico" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.Configure.ico +{ + // Offset: 0x00026A00 Length: 0x0000047E + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.Configure.ico" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.LoadUnloadPlugins.ico +{ + // Offset: 0x00026E88 Length: 0x0000047E + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.LoadUnloadPlugins.ico" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.miranda32.exe.config +{ + // Offset: 0x00027310 Length: 0x00000298 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.miranda32.exe.config" wurde erstellt. +} +.module Hyphen.dll +// MVID: {3FFF4D13-FF0A-429D-9B95-394048CE8C68} +.custom instance void [mscorlib]System.Security.UnverifiableCodeAttribute::.ctor() = ( 01 00 00 00 ) +.imagebase 0x10000000 +.file alignment 0x00000200 +.stackreserve 0x00100000 +.subsystem 0x0003 // WINDOWS_CUI +.corflags 0x00000003 // ILONLY 32BITREQUIRED +// Image base: 0x0000000002150000 + + +// =============== CLASS MEMBERS DECLARATION =================== + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.ExposingPluginAttribute + extends [mscorlib]System.Attribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 01 00 00 00 01 00 54 02 0D 41 6C 6C 6F 77 // ........T..Allow + 4D 75 6C 74 69 70 6C 65 01 ) // Multiple. + .field private class [mscorlib]System.Type pluginType + .method public hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Type pluginType) cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .language '{3F5162F8-07C6-11D3-9053-00C04FA302A1}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' + .line 35,35 : 9,56 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\ExposingPluginAttribute.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + IL_0006: nop + .line 36,36 : 9,10 '' + IL_0007: nop + .line 37,37 : 13,36 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 38,38 : 17,63 '' + IL_0013: ldstr "pluginType" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 40,40 : 13,42 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.ExposingPluginAttribute::pluginType + .line 41,41 : 9,10 '' + IL_0025: nop + IL_0026: ret + } // end of method ExposingPluginAttribute::.ctor + + .method public hidebysig specialname instance class [mscorlib]System.Type + get_PluginType() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Type CS$1$0000) + .line 50,50 : 13,14 '' + IL_0000: nop + .line 51,51 : 17,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.ExposingPluginAttribute::pluginType + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 52,52 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ExposingPluginAttribute::get_PluginType + + .property instance class [mscorlib]System.Type + PluginType() + { + .get instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.ExposingPluginAttribute::get_PluginType() + } // end of property ExposingPluginAttribute::PluginType +} // end of class Virtuoso.Miranda.Plugins.ExposingPluginAttribute + +.class public auto ansi sealed beforefieldinit Virtuoso.Hyphen.Mini.Module + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested private beforefieldinit AuxiliaryPluginManager + extends Virtuoso.Miranda.Plugins.PluginManagerBase + { + .field private static class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Singleton + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 42,43 : 13,58 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Module.AuxiliaryPluginManager.cs' + IL_0000: ldarg.0 + IL_0001: call class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.FusionContext::get_Empty() + IL_0006: ldc.i4.0 + IL_0007: ldc.i4.0 + IL_0008: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::.ctor(class Virtuoso.Hyphen.FusionContext, + bool, + bool) + IL_000d: nop + .line 43,43 : 59,60 '' + IL_000e: nop + .line 43,43 : 61,62 '' + IL_000f: nop + IL_0010: ret + } // end of method AuxiliaryPluginManager::.ctor + + .method famorassem hidebysig virtual + instance void FindAndLoadPlugins() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 50,50 : 13,14 '' + IL_0000: nop + .line 51,51 : 17,51 '' + IL_0001: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_0006: throw + } // end of method AuxiliaryPluginManager::FindAndLoadPlugins + + .method public hidebysig static class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager + GetInstance() cil managed synchronized + { + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager CS$1$0000) + .line 56,56 : 13,14 '' + IL_0000: nop + .line 57,57 : 17,80 '' + IL_0001: ldsfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager::Singleton + IL_0006: dup + IL_0007: brtrue.s IL_0015 + + IL_0009: pop + IL_000a: newobj instance void Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager::.ctor() + IL_000f: dup + IL_0010: stsfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager::Singleton + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 58,58 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method AuxiliaryPluginManager::GetInstance + + .method public hidebysig instance void + FinishInitialization() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 65,65 : 13,14 '' + IL_0000: nop + .line 66,66 : 17,69 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateContextInformation() + IL_000b: nop + .line 67,67 : 13,14 '' + IL_000c: ret + } // end of method AuxiliaryPluginManager::FinishInitialization + + } // end of class AuxiliaryPluginManager + + .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass3`1' + extends [mscorlib]System.Object + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field public string exportName + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method '<>c__DisplayClass3`1'::.ctor + + .method public hidebysig instance bool + 'b__2'(class Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor _handler) cil managed + { + // Code size 23 (0x17) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 517,517 : 13,14 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Module.cs' + IL_0000: nop + .line 518,518 : 17,58 '' + IL_0001: ldarg.1 + IL_0002: callvirt instance string Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::get_ExportName() + IL_0007: ldarg.0 + IL_0008: ldfld string class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::exportName + IL_000d: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0012: stloc.0 + IL_0013: br.s IL_0015 + + IL_0015: ldloc.0 + IL_0016: ret + } // end of method '<>c__DisplayClass3`1'::'b__2' + + } // end of class '<>c__DisplayClass3`1' + + .field private static literal string LogCategory = "HyphenMini" + .field private static literal string MasterSuffx = ".master.dll" + .field private class [mscorlib]System.Reflection.Assembly MasterAssembly + .field private class Virtuoso.Hyphen.Mini.StandalonePlugin standalonePlugin + .field private class Virtuoso.Miranda.Plugins.PluginDescriptor PluginDescriptor + .field private bool isPostV07Build20Api + .field private native int PluginInfoPtr + .field private native int MirandaPluginInterfacesPtr + .field private initonly class [mscorlib]System.Reflection.Assembly MiniAssembly + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Loaded + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Unloaded + .field private valuetype Virtuoso.Miranda.Plugins.LoaderOptions LoaderOptions + .field private class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager PluginManager + .field private class Virtuoso.Hyphen.Loader HyphenLoader + .field private initonly string MasterDirectory + .field private initonly string MasterAssemblyPath + .field private static class [mscorlib]System.Predicate`1 'CS$<>9__CachedAnonymousMethodDelegate1' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method assembly hidebysig specialname rtspecialname + instance void .ctor(bool exApi) cil managed noinlining + { + // Code size 201 (0xc9) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Version supportedVersion, + [1] string message, + [2] bool CS$4$0000) + .line 73,74 : 9,36 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 75,75 : 9,10 '' + IL_0007: nop + .line 77,77 : 13,33 '' + IL_0008: call void Virtuoso.Hyphen.Loader::Initialize() + IL_000d: nop + .line 80,80 : 13,58 '' + IL_000e: ldarg.0 + IL_000f: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetCallingAssembly() + IL_0014: stfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MiniAssembly + .line 83,83 : 13,71 '' + IL_0019: ldarg.0 + IL_001a: ldfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MiniAssembly + IL_001f: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_0024: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_0029: stloc.0 + .line 84,84 : 13,90 '' + IL_002a: ldarg.0 + IL_002b: ldloc.0 + IL_002c: ldc.i4.3 + IL_002d: callvirt instance string [mscorlib]System.Version::ToString(int32) + IL_0032: newobj instance void [mscorlib]System.Version::.ctor(string) + IL_0037: call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance(class [mscorlib]System.Version) + IL_003c: stfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Mini.Module::HyphenLoader + .line 86,86 : 13,38 '' + IL_0041: ldarg.0 + IL_0042: ldfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Mini.Module::HyphenLoader + IL_0047: ldnull + IL_0048: ceq + IL_004a: ldc.i4.0 + IL_004b: ceq + IL_004d: stloc.2 + IL_004e: ldloc.2 + IL_004f: brtrue.s IL_0073 + + .line 87,87 : 13,14 '' + IL_0051: nop + .line 88,88 : 17,170 '' + IL_0052: ldstr "Hyphen.Mini module requested a Loader of version {" + + "0}, but that one is not available. Upgrade Hyphen." + IL_0057: ldloc.0 + IL_0058: call string [mscorlib]System.String::Format(string, + object) + IL_005d: stloc.1 + .line 89,89 : 17,60 '' + IL_005e: ldc.i4.5 + IL_005f: ldstr "HyphenMini" + IL_0064: ldloc.1 + IL_0065: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_006a: nop + .line 91,91 : 17,80 '' + IL_006b: ldnull + IL_006c: ldloc.0 + IL_006d: newobj instance void Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor(class [mscorlib]System.Type, + class [mscorlib]System.Version) + IL_0072: throw + + .line 94,94 : 13,41 '' + IL_0073: ldarg.0 + IL_0074: ldarg.1 + IL_0075: stfld bool Virtuoso.Hyphen.Mini.Module::isPostV07Build20Api + .line 95,95 : 13,76 '' + IL_007a: ldarg.0 + IL_007b: ldarg.0 + IL_007c: ldfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MiniAssembly + IL_0081: callvirt instance string [mscorlib]System.Reflection.Assembly::get_Location() + IL_0086: call string [mscorlib]System.IO.Path::GetDirectoryName(string) + IL_008b: stfld string Virtuoso.Hyphen.Mini.Module::MasterDirectory + .line 96,96 : 13,74 '' + IL_0090: ldarg.0 + IL_0091: ldarg.0 + IL_0092: ldfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MiniAssembly + IL_0097: callvirt instance string [mscorlib]System.Reflection.Assembly::get_Location() + IL_009c: call string [mscorlib]System.IO.Path::GetFileName(string) + IL_00a1: stfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + .line 98,98 : 13,123 '' + IL_00a6: ldc.i4.0 + IL_00a7: ldstr "HyphenMini" + IL_00ac: ldstr "Connection between Miranda and '" + IL_00b1: ldarg.0 + IL_00b2: ldfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + IL_00b7: ldstr "' established." + IL_00bc: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00c1: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00c6: nop + .line 99,99 : 9,10 '' + IL_00c7: nop + IL_00c8: ret + } // end of method Module::.ctor + + .method family hidebysig virtual instance void + Finalize() cil managed + { + // Code size 23 (0x17) + .maxstack 2 + .line 105,105 : 9,10 '' + .try + { + IL_0000: nop + .line 106,106 : 13,29 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: volatile. + IL_0005: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Module::Unloaded + .line 107,107 : 9,10 '' + IL_000a: nop + IL_000b: leave.s IL_0015 + + .line 107,107 : 9,10 '' + } // end .try + finally + { + IL_000d: ldarg.0 + IL_000e: call instance void [mscorlib]System.Object::Finalize() + IL_0013: nop + IL_0014: endfinally + } // end handler + IL_0015: nop + .line 107,107 : 9,10 '' + IL_0016: ret + } // end of method Module::Finalize + + .method assembly hidebysig instance native int + MirandaPluginInfo(uint32 version) cil managed + { + // Code size 277 (0x115) + .maxstack 5 + .locals init ([0] class Virtuoso.Hyphen.Mini.StandalonePlugin plugin, + [1] class [mscorlib]System.Exception e, + [2] native int CS$1$0000, + [3] bool CS$4$0001, + [4] native int CS$0$0002) + .line 119,119 : 9,10 '' + IL_0000: nop + .line 121,121 : 13,46 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: stloc.3 + IL_0015: ldloc.3 + IL_0016: brtrue.s IL_0024 + + .line 122,122 : 17,38 '' + IL_0018: ldarg.0 + IL_0019: ldfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + IL_001e: stloc.2 + IL_001f: br IL_0112 + + .line 124,124 : 13,109 '' + IL_0024: ldc.i4.0 + IL_0025: ldstr "HyphenMini" + IL_002a: ldstr "MirandaPluginInfo export invoked for " + IL_002f: ldarg.0 + IL_0030: ldfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + IL_0035: call string [mscorlib]System.String::Concat(string, + string) + IL_003a: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_003f: nop + .line 125,125 : 13,44 '' + IL_0040: ldnull + IL_0041: stloc.0 + .line 128,128 : 13,14 '' + .try + { + IL_0042: nop + .line 130,130 : 17,63 '' + IL_0043: ldarg.0 + IL_0044: ldfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Mini.Module::HyphenLoader + IL_0049: ldarg.1 + IL_004a: callvirt instance void Virtuoso.Hyphen.Loader::MirandaPluginInfoShared(uint32) + IL_004f: nop + .line 133,133 : 17,45 '' + IL_0050: ldarg.0 + IL_0051: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::LoadActualPlugin() + IL_0056: stloc.0 + .line 136,136 : 17,36 '' + IL_0057: ldloc.0 + IL_0058: ldnull + IL_0059: ceq + IL_005b: stloc.3 + IL_005c: ldloc.3 + IL_005d: brtrue.s IL_00ab + + .line 137,137 : 17,18 '' + IL_005f: nop + .line 138,138 : 21,42 '' + IL_0060: ldloc.0 + IL_0061: ldarg.0 + IL_0062: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::set_Module(class Virtuoso.Hyphen.Mini.Module) + IL_0067: nop + .line 139,139 : 21,64 '' + IL_0068: ldloc.0 + IL_0069: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::AfterModuleInitializationInternal() + IL_006e: nop + .line 142,142 : 21,67 '' + IL_006f: ldarg.0 + IL_0070: ldloc.0 + IL_0071: ldarg.1 + IL_0072: call instance bool Virtuoso.Hyphen.Mini.Module::PublishPluginInformation(class Virtuoso.Hyphen.Mini.StandalonePlugin, + uint32) + IL_0077: ldc.i4.0 + IL_0078: ceq + IL_007a: stloc.3 + IL_007b: ldloc.3 + IL_007c: brtrue.s IL_00a8 + + .line 143,143 : 21,22 '' + IL_007e: nop + .line 144,144 : 25,51 '' + IL_007f: ldarg.0 + IL_0080: ldloc.0 + IL_0081: stfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + .line 145,145 : 25,68 '' + IL_0086: ldarg.0 + IL_0087: ldloc.0 + IL_0088: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_008d: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0092: stfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MasterAssembly + .line 147,147 : 25,55 '' + IL_0097: ldarg.0 + IL_0098: ldloc.0 + IL_0099: call instance void Virtuoso.Hyphen.Mini.Module::ProbeCustomApiExports(class Virtuoso.Hyphen.Mini.StandalonePlugin) + IL_009e: nop + .line 148,148 : 25,46 '' + IL_009f: ldarg.0 + IL_00a0: ldfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + IL_00a5: stloc.2 + IL_00a6: leave.s IL_0112 + + .line 150,150 : 17,18 '' + IL_00a8: nop + IL_00a9: br.s IL_00cc + + .line 152,152 : 21,142 '' + IL_00ab: ldc.i4.0 + IL_00ac: ldstr "HyphenMini" + IL_00b1: ldstr "No master assembly found for '" + IL_00b6: ldarg.0 + IL_00b7: ldfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + IL_00bc: ldstr "' - aborting initialization" + IL_00c1: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00c6: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00cb: nop + .line 153,153 : 13,14 '' + IL_00cc: nop + IL_00cd: leave.s IL_00fe + + .line 154,154 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_00cf: stloc.1 + .line 155,155 : 13,14 '' + IL_00d0: nop + .line 156,156 : 17,81 '' + IL_00d1: ldloc.0 + IL_00d2: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_00d7: ldloc.1 + IL_00d8: ldnull + IL_00d9: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_00de: nop + .line 157,157 : 17,134 '' + IL_00df: ldc.i4.5 + IL_00e0: ldstr "HyphenMini" + IL_00e5: ldstr "An error occurred while executing the MirandaPlugi" + + "nInfo export\n" + IL_00ea: ldloc.1 + IL_00eb: callvirt instance string [mscorlib]System.Object::ToString() + IL_00f0: call string [mscorlib]System.String::Concat(string, + string) + IL_00f5: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00fa: nop + .line 158,158 : 13,14 '' + IL_00fb: nop + IL_00fc: leave.s IL_00fe + + } // end handler + IL_00fe: nop + .line 161,161 : 13,64 '' + IL_00ff: ldarg.0 + IL_0100: call native int Virtuoso.Hyphen.Loader::GetDummyPluginInfo() + IL_0105: dup + IL_0106: stloc.s CS$0$0002 + IL_0108: stfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + IL_010d: ldloc.s CS$0$0002 + IL_010f: stloc.2 + IL_0110: br.s IL_0112 + + IL_0112: nop + .line 162,162 : 9,10 '' + IL_0113: ldloc.2 + IL_0114: ret + } // end of method Module::MirandaPluginInfo + + .method assembly hidebysig instance native int + MirandaPluginInterfaces() cil managed + { + // Code size 131 (0x83) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Exception e, + [1] native int CS$1$0000, + [2] bool CS$4$0001, + [3] native int CS$0$0002) + .line 169,169 : 9,10 '' + IL_0000: nop + .line 170,170 : 13,59 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Hyphen.Mini.Module::MirandaPluginInterfacesPtr + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: stloc.2 + IL_0015: ldloc.2 + IL_0016: brtrue.s IL_0021 + + .line 171,171 : 17,51 '' + IL_0018: ldarg.0 + IL_0019: ldfld native int Virtuoso.Hyphen.Mini.Module::MirandaPluginInterfacesPtr + IL_001e: stloc.1 + IL_001f: br.s IL_0080 + + .line 174,174 : 13,14 '' + .try + { + IL_0021: nop + .line 175,175 : 17,98 '' + IL_0022: ldarg.0 + IL_0023: ldarg.0 + IL_0024: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0029: callvirt instance native int Virtuoso.Hyphen.Mini.StandalonePlugin::MirandaPluginInterfaces() + IL_002e: dup + IL_002f: stloc.3 + IL_0030: stfld native int Virtuoso.Hyphen.Mini.Module::MirandaPluginInterfacesPtr + IL_0035: ldloc.3 + IL_0036: stloc.1 + IL_0037: leave.s IL_0080 + + .line 177,177 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0039: stloc.0 + .line 178,178 : 13,14 '' + IL_003a: nop + .line 179,179 : 17,114 '' + IL_003b: ldarg.0 + IL_003c: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_0041: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0046: ldloc.0 + IL_0047: ldarg.0 + IL_0048: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_004d: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0052: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0057: nop + .line 180,180 : 17,139 '' + IL_0058: ldc.i4.5 + IL_0059: ldstr "HyphenMini" + IL_005e: ldstr "An error occured while executing the MirandaPlugin" + + "Interfaces export\n" + IL_0063: ldloc.0 + IL_0064: callvirt instance string [mscorlib]System.Object::ToString() + IL_0069: call string [mscorlib]System.String::Concat(string, + string) + IL_006e: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0073: nop + .line 181,181 : 13,14 '' + IL_0074: nop + IL_0075: leave.s IL_0077 + + } // end handler + IL_0077: nop + .line 183,183 : 13,32 '' + IL_0078: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_007d: stloc.1 + IL_007e: br.s IL_0080 + + IL_0080: nop + .line 184,184 : 9,10 '' + IL_0081: ldloc.1 + IL_0082: ret + } // end of method Module::MirandaPluginInterfaces + + .method assembly hidebysig instance int32 + Load(native int pPluginLink) cil managed + { + // Code size 267 (0x10b) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Exception e, + [1] int32 CS$1$0000, + [2] bool CS$4$0001) + .line 192,192 : 9,10 '' + IL_0000: nop + .line 194,194 : 13,14 '' + .try + { + .try + { + IL_0001: nop + .line 195,195 : 17,28 '' + IL_0002: ldarg.0 + IL_0003: volatile. + IL_0005: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Module::Loaded + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.2 + IL_000e: ldloc.2 + IL_000f: brtrue.s IL_001c + + .line 196,196 : 21,110 '' + IL_0011: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginAlreadyInitialized() + IL_0016: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001b: throw + + .line 198,198 : 17,100 '' + IL_001c: ldc.i4.0 + IL_001d: ldstr "HyphenMini" + IL_0022: ldstr "Load export invoked for " + IL_0027: ldarg.0 + IL_0028: ldfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + IL_002d: call string [mscorlib]System.String::Concat(string, + string) + IL_0032: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0037: nop + .line 201,201 : 17,61 '' + IL_0038: ldarg.0 + IL_0039: ldfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Mini.Module::HyphenLoader + IL_003e: ldarg.1 + IL_003f: callvirt instance void Virtuoso.Hyphen.Loader::ModuleInducedLoad(native int) + IL_0044: nop + .line 202,202 : 17,62 '' + IL_0045: call class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + IL_004a: ldarg.0 + IL_004b: callvirt instance void Virtuoso.Hyphen.Mini.ModuleManager::RegisterModule(class Virtuoso.Hyphen.Mini.Module) + IL_0050: nop + .line 205,205 : 17,70 '' + IL_0051: ldarg.0 + IL_0052: call class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager::GetInstance() + IL_0057: stfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + .line 206,206 : 17,86 '' + IL_005c: ldarg.0 + IL_005d: ldarg.0 + IL_005e: ldfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + IL_0063: ldarg.0 + IL_0064: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0069: ldc.i4.0 + IL_006a: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.PluginManagerBase::LoadPlugin(class Virtuoso.Miranda.Plugins.MirandaPlugin, + bool) + IL_006f: stfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + .line 209,209 : 17,60 '' + IL_0074: ldarg.0 + IL_0075: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_007a: ldarg.1 + IL_007b: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::LoadInternal(native int) + IL_0080: nop + .line 212,212 : 17,78 '' + IL_0081: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0086: ldarg.0 + IL_0087: ldftn instance void Virtuoso.Hyphen.Mini.Module::ModulesLoadedHandler(object, + class [mscorlib]System.EventArgs) + IL_008d: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0092: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::add_ModulesLoaded(class [mscorlib]System.EventHandler) + IL_0097: nop + .line 214,214 : 17,106 '' + IL_0098: ldc.i4.0 + IL_0099: ldstr "HyphenMini" + IL_009e: ldstr "Finishing " + IL_00a3: ldarg.0 + IL_00a4: ldfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + IL_00a9: ldstr " initialization" + IL_00ae: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_00b3: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00b8: nop + .line 215,215 : 17,52 '' + IL_00b9: ldc.i4.0 + IL_00ba: stloc.1 + IL_00bb: leave.s IL_0108 + + .line 217,217 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_00bd: stloc.0 + .line 218,218 : 13,14 '' + IL_00be: nop + .line 219,219 : 17,114 '' + IL_00bf: ldarg.0 + IL_00c0: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_00c5: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_00ca: ldloc.0 + IL_00cb: ldarg.0 + IL_00cc: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_00d1: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_00d6: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_00db: nop + .line 220,220 : 17,121 '' + IL_00dc: ldc.i4.5 + IL_00dd: ldstr "HyphenMini" + IL_00e2: ldstr "An error occurred while executing the Load export\n" + IL_00e7: ldloc.0 + IL_00e8: callvirt instance string [mscorlib]System.Object::ToString() + IL_00ed: call string [mscorlib]System.String::Concat(string, + string) + IL_00f2: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00f7: nop + .line 222,222 : 17,52 '' + IL_00f8: ldc.i4.m1 + IL_00f9: stloc.1 + IL_00fa: leave.s IL_0108 + + .line 225,225 : 13,14 '' + } // end handler + } // end .try + finally + { + IL_00fc: nop + .line 226,226 : 17,31 '' + IL_00fd: ldarg.0 + IL_00fe: ldc.i4.1 + IL_00ff: volatile. + IL_0101: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Module::Loaded + .line 227,227 : 13,14 '' + IL_0106: nop + IL_0107: endfinally + } // end handler + IL_0108: nop + .line 228,228 : 9,10 '' + IL_0109: ldloc.1 + IL_010a: ret + } // end of method Module::Load + + .method private hidebysig instance void + ModulesLoadedHandler(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 127 (0x7f) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Exception ex, + [1] bool CS$4$0000) + .line 234,234 : 9,10 '' + IL_0000: nop + .line 236,236 : 13,14 '' + .try + { + .try + { + IL_0001: nop + .line 238,238 : 17,54 '' + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + IL_0008: callvirt instance void Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager::FinishInitialization() + IL_000d: nop + .line 242,242 : 17,77 '' + IL_000e: ldarg.0 + IL_000f: ldfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Mini.Module::HyphenLoader + IL_0014: ldarg.0 + IL_0015: ldfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + IL_001a: callvirt instance void Virtuoso.Hyphen.Loader::PromoteManagedMenuIntoAppDomain(class Virtuoso.Miranda.Plugins.PluginManagerBase) + IL_001f: nop + .line 245,245 : 17,55 '' + IL_0020: ldarg.0 + IL_0021: call instance bool Virtuoso.Hyphen.Mini.Module::get_PluginLoaded() + IL_0026: brfalse.s IL_0033 + + IL_0028: ldarg.0 + IL_0029: call instance bool Virtuoso.Hyphen.Mini.Module::get_PluginInitialized() + IL_002e: ldc.i4.0 + IL_002f: ceq + IL_0031: br.s IL_0034 + + IL_0033: ldc.i4.1 + IL_0034: nop + IL_0035: stloc.1 + IL_0036: ldloc.1 + IL_0037: brtrue.s IL_004c + + .line 246,246 : 21,89 '' + IL_0039: ldarg.0 + IL_003a: ldfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + IL_003f: ldarg.0 + IL_0040: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + IL_0045: ldc.i4.1 + IL_0046: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_004b: nop + .line 247,247 : 13,14 '' + IL_004c: nop + IL_004d: leave.s IL_0071 + + .line 248,248 : 13,33 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_004f: stloc.0 + .line 249,249 : 13,14 '' + IL_0050: nop + .line 250,250 : 17,111 '' + IL_0051: ldarg.0 + IL_0052: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + IL_0057: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_005c: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0061: ldloc.0 + IL_0062: ldarg.0 + IL_0063: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + IL_0068: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_006d: nop + .line 251,251 : 13,14 '' + IL_006e: nop + IL_006f: leave.s IL_0071 + + } // end handler + IL_0071: nop + IL_0072: leave.s IL_007d + + .line 253,253 : 13,14 '' + } // end .try + finally + { + IL_0074: nop + .line 254,254 : 17,51 '' + IL_0075: call void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::FlushCaches() + IL_007a: nop + .line 255,255 : 13,14 '' + IL_007b: nop + IL_007c: endfinally + } // end handler + IL_007d: nop + .line 256,256 : 9,10 '' + IL_007e: ret + } // end of method Module::ModulesLoadedHandler + + .method assembly hidebysig instance int32 + Unload() cil managed + { + // Code size 252 (0xfc) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Exception e, + [1] int32 CS$1$0000, + [2] bool CS$4$0001) + .line 263,263 : 9,10 '' + IL_0000: nop + .line 265,265 : 13,14 '' + .try + { + .try + { + IL_0001: nop + .line 266,266 : 17,34 '' + IL_0002: ldarg.0 + IL_0003: call instance bool Virtuoso.Hyphen.Mini.Module::CanUnload() + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0013 + + .line 267,267 : 21,56 '' + IL_000c: ldc.i4.0 + IL_000d: stloc.1 + IL_000e: leave IL_00f9 + + .line 270,270 : 17,51 '' + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0019: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::UnloadInternal() + IL_001e: nop + .line 272,272 : 17,86 '' + IL_001f: ldarg.0 + IL_0020: ldfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + IL_0025: ldarg.0 + IL_0026: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + IL_002b: ldc.i4.0 + IL_002c: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_0031: nop + .line 273,273 : 17,64 '' + IL_0032: call class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + IL_0037: ldarg.0 + IL_0038: callvirt instance void Virtuoso.Hyphen.Mini.ModuleManager::UnregisterModule(class Virtuoso.Hyphen.Mini.Module) + IL_003d: nop + .line 275,275 : 17,59 '' + IL_003e: ldarg.0 + IL_003f: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0044: callvirt instance bool Virtuoso.Hyphen.Mini.StandalonePlugin::get_HasCustomPluginInfo() + IL_0049: stloc.2 + IL_004a: ldloc.2 + IL_004b: brtrue.s IL_0059 + + .line 276,276 : 21,56 '' + IL_004d: ldarg.0 + IL_004e: ldfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + IL_0053: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_0058: nop + .line 278,278 : 17,65 '' + IL_0059: ldarg.0 + IL_005a: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_005f: callvirt instance bool Virtuoso.Hyphen.Mini.StandalonePlugin::get_HasCustomPluginInterfaces() + IL_0064: stloc.2 + IL_0065: ldloc.2 + IL_0066: brtrue.s IL_0074 + + .line 279,279 : 21,69 '' + IL_0068: ldarg.0 + IL_0069: ldfld native int Virtuoso.Hyphen.Mini.Module::MirandaPluginInterfacesPtr + IL_006e: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_0073: nop + .line 281,281 : 17,41 '' + IL_0074: ldarg.0 + IL_0075: ldnull + IL_0076: stfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + .line 282,282 : 17,41 '' + IL_007b: ldarg.0 + IL_007c: ldnull + IL_007d: stfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + .line 284,284 : 17,122 '' + IL_0082: ldc.i4.0 + IL_0083: ldstr "HyphenMini" + IL_0088: ldstr "Connection between Miranda and '" + IL_008d: ldarg.0 + IL_008e: ldfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + IL_0093: ldstr "' broken." + IL_0098: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_009d: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00a2: nop + .line 285,285 : 13,14 '' + IL_00a3: nop + IL_00a4: leave.s IL_00e5 + + .line 286,286 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_00a6: stloc.0 + .line 287,287 : 13,14 '' + IL_00a7: nop + .line 288,288 : 17,114 '' + IL_00a8: ldarg.0 + IL_00a9: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_00ae: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_00b3: ldloc.0 + IL_00b4: ldarg.0 + IL_00b5: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_00ba: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_00bf: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_00c4: nop + .line 289,289 : 17,123 '' + IL_00c5: ldc.i4.5 + IL_00c6: ldstr "HyphenMini" + IL_00cb: ldstr "An error occurred while executing the Unload export\n" + IL_00d0: ldloc.0 + IL_00d1: callvirt instance string [mscorlib]System.Object::ToString() + IL_00d6: call string [mscorlib]System.String::Concat(string, + string) + IL_00db: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00e0: nop + .line 291,291 : 17,52 '' + IL_00e1: ldc.i4.m1 + IL_00e2: stloc.1 + IL_00e3: leave.s IL_00f9 + + } // end handler + IL_00e5: nop + IL_00e6: leave.s IL_00f4 + + .line 294,294 : 13,14 '' + } // end .try + finally + { + IL_00e8: nop + .line 295,295 : 17,33 '' + IL_00e9: ldarg.0 + IL_00ea: ldc.i4.1 + IL_00eb: volatile. + IL_00ed: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Module::Unloaded + .line 296,296 : 13,14 '' + IL_00f2: nop + IL_00f3: endfinally + } // end handler + IL_00f4: nop + .line 298,298 : 13,48 '' + IL_00f5: ldc.i4.0 + IL_00f6: stloc.1 + IL_00f7: br.s IL_00f9 + + IL_00f9: nop + .line 299,299 : 9,10 '' + IL_00fa: ldloc.1 + IL_00fb: ret + } // end of method Module::Unload + + .method private hidebysig instance bool + CanUnload() cil managed + { + // Code size 42 (0x2a) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 306,306 : 9,10 '' + IL_0000: nop + .line 307,308 : 13,100 '' + IL_0001: ldarg.0 + IL_0002: volatile. + IL_0004: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Module::Unloaded + IL_0009: brtrue.s IL_0023 + + IL_000b: ldarg.0 + IL_000c: call instance bool Virtuoso.Hyphen.Mini.Module::get_PluginInitialized() + IL_0011: brfalse.s IL_0023 + + IL_0013: ldarg.0 + IL_0014: ldfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Hyphen.Mini.Module::LoaderOptions + IL_0019: ldc.i4.4 + IL_001a: and + IL_001b: ldc.i4.4 + IL_001c: ceq + IL_001e: ldc.i4.0 + IL_001f: ceq + IL_0021: br.s IL_0024 + + IL_0023: ldc.i4.0 + IL_0024: nop + IL_0025: stloc.0 + IL_0026: br.s IL_0028 + + .line 309,309 : 9,10 '' + IL_0028: ldloc.0 + IL_0029: ret + } // end of method Module::CanUnload + + .method private hidebysig instance bool + PublishPluginInformation(class Virtuoso.Hyphen.Mini.StandalonePlugin plugin, + uint32 version) cil managed + { + // Code size 107 (0x6b) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute loaderOptions, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 322,322 : 9,10 '' + IL_0000: nop + .line 323,323 : 13,32 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 324,324 : 17,59 '' + IL_000c: ldstr "plugin" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 327,327 : 13,14 '' + .try + { + IL_0017: nop + .line 328,328 : 17,126 '' + IL_0018: ldarg.1 + IL_0019: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_001e: ldc.i4.0 + IL_001f: call class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::Get(class [mscorlib]System.Type, + valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner) + IL_0024: stloc.0 + .line 330,330 : 17,68 '' + IL_0025: ldloc.0 + IL_0026: ldarg.2 + IL_0027: callvirt instance bool Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::SupportsMirandaVersion(uint32) + IL_002c: stloc.2 + IL_002d: ldloc.2 + IL_002e: brtrue.s IL_0034 + + .line 331,331 : 21,34 '' + IL_0030: ldc.i4.0 + IL_0031: stloc.1 + IL_0032: leave.s IL_0068 + + .line 333,333 : 17,55 '' + IL_0034: ldarg.0 + IL_0035: ldloc.0 + IL_0036: callvirt instance valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_Options() + IL_003b: stfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Hyphen.Mini.Module::LoaderOptions + .line 334,334 : 17,88 '' + IL_0040: ldarg.0 + IL_0041: ldarg.1 + IL_0042: ldarg.2 + IL_0043: ldarg.0 + IL_0044: ldfld bool Virtuoso.Hyphen.Mini.Module::isPostV07Build20Api + IL_0049: callvirt instance native int Virtuoso.Hyphen.Mini.StandalonePlugin::MirandaPluginInfo(uint32, + bool) + IL_004e: stfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + .line 336,336 : 17,29 '' + IL_0053: ldc.i4.1 + IL_0054: stloc.1 + IL_0055: leave.s IL_0068 + + .line 338,338 : 13,30 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0057: pop + .line 339,339 : 13,14 '' + IL_0058: nop + .line 340,340 : 17,45 '' + IL_0059: ldarg.0 + IL_005a: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_005f: stfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + .line 341,341 : 17,30 '' + IL_0064: ldc.i4.0 + IL_0065: stloc.1 + IL_0066: leave.s IL_0068 + + } // end handler + IL_0068: nop + .line 343,343 : 9,10 '' + IL_0069: ldloc.1 + IL_006a: ret + } // end of method Module::PublishPluginInformation + + .method private hidebysig instance void + ProbeCustomApiExports(class Virtuoso.Hyphen.Mini.StandalonePlugin plugin) cil managed + { + // Code size 246 (0xf6) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Type customApiHandlerAttribType, + [1] class [mscorlib]System.Type customApiHandlerCallbackType, + [2] class [mscorlib]System.Reflection.MethodInfo 'method', + [3] class [mscorlib]System.Delegate callbackDeleg, + [4] class Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute attrib, + [5] class [mscorlib]System.Exception e, + [6] bool CS$4$0000, + [7] class [mscorlib]System.Reflection.MethodInfo[] CS$6$0001, + [8] int32 CS$7$0002) + .line 350,350 : 9,10 '' + IL_0000: nop + .line 351,351 : 13,32 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0000 + IL_000a: ldloc.s CS$4$0000 + IL_000c: brtrue.s IL_0019 + + .line 352,352 : 17,59 '' + IL_000e: ldstr "plugin" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 354,354 : 13,106 '' + IL_0019: ldarg.0 + IL_001a: ldfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Hyphen.Mini.Module::LoaderOptions + IL_001f: ldc.i4.2 + IL_0020: and + IL_0021: ldc.i4.2 + IL_0022: ceq + IL_0024: stloc.s CS$4$0000 + IL_0026: ldloc.s CS$4$0000 + IL_0028: brtrue.s IL_002f + + .line 355,355 : 17,24 '' + IL_002a: br IL_00f5 + + .line 357,357 : 13,14 '' + .try + { + IL_002f: nop + .line 358,358 : 17,91 '' + IL_0030: ldtoken Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute + IL_0035: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_003a: stloc.0 + .line 359,359 : 22,85 '' + IL_003b: ldtoken Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + IL_0040: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0045: stloc.1 + .line 361,361 : 17,24 '' + IL_0046: nop + .line 361,361 : 47,176 '' + IL_0047: ldarg.1 + IL_0048: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_004d: ldc.i4.s 116 + IL_004f: callvirt instance class [mscorlib]System.Reflection.MethodInfo[] [mscorlib]System.Type::GetMethods(valuetype [mscorlib]System.Reflection.BindingFlags) + IL_0054: stloc.s CS$6$0001 + IL_0056: ldc.i4.0 + IL_0057: stloc.s CS$7$0002 + IL_0059: br.s IL_00c1 + + .line 361,361 : 26,43 '' + IL_005b: ldloc.s CS$6$0001 + IL_005d: ldloc.s CS$7$0002 + IL_005f: ldelem.ref + IL_0060: stloc.2 + .line 362,362 : 17,18 '' + IL_0061: nop + .line 363,363 : 21,77 '' + IL_0062: ldloc.2 + IL_0063: ldloc.0 + IL_0064: ldc.i4.1 + IL_0065: callvirt instance bool [mscorlib]System.Reflection.MemberInfo::IsDefined(class [mscorlib]System.Type, + bool) + IL_006a: stloc.s CS$4$0000 + IL_006c: ldloc.s CS$4$0000 + IL_006e: brtrue.s IL_0072 + + .line 364,364 : 25,34 '' + IL_0070: br.s IL_00bb + + .line 366,366 : 21,123 '' + IL_0072: ldloc.1 + IL_0073: ldarg.1 + IL_0074: ldloc.2 + IL_0075: ldc.i4.0 + IL_0076: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::CreateDelegate(class [mscorlib]System.Type, + object, + class [mscorlib]System.Reflection.MethodInfo, + bool) + IL_007b: stloc.3 + .line 368,368 : 21,47 '' + IL_007c: ldloc.3 + IL_007d: ldnull + IL_007e: ceq + IL_0080: ldc.i4.0 + IL_0081: ceq + IL_0083: stloc.s CS$4$0000 + IL_0085: ldloc.s CS$4$0000 + IL_0087: brtrue.s IL_008b + + .line 369,369 : 25,34 '' + IL_0089: br.s IL_00bb + + .line 371,371 : 21,159 '' + IL_008b: ldloc.2 + IL_008c: ldloc.0 + IL_008d: ldc.i4.1 + IL_008e: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_0093: ldc.i4.0 + IL_0094: ldelem.ref + IL_0095: castclass Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute + IL_009a: stloc.s attrib + .line 372,372 : 21,140 '' + IL_009c: ldarg.1 + IL_009d: callvirt instance class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection Virtuoso.Hyphen.Mini.StandalonePlugin::get_CustomApiHandlers() + IL_00a2: ldloc.s attrib + IL_00a4: callvirt instance string Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::get_ExportName() + IL_00a9: ldloc.3 + IL_00aa: castclass Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + IL_00af: newobj instance void Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::.ctor(string, + class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback) + IL_00b4: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_00b9: nop + .line 374,374 : 17,18 '' + IL_00ba: nop + IL_00bb: ldloc.s CS$7$0002 + IL_00bd: ldc.i4.1 + IL_00be: add + IL_00bf: stloc.s CS$7$0002 + .line 361,361 : 44,46 '' + IL_00c1: ldloc.s CS$7$0002 + IL_00c3: ldloc.s CS$6$0001 + IL_00c5: ldlen + IL_00c6: conv.i4 + IL_00c7: clt + IL_00c9: stloc.s CS$4$0000 + IL_00cb: ldloc.s CS$4$0000 + IL_00cd: brtrue.s IL_005b + + .line 375,375 : 13,14 '' + IL_00cf: nop + IL_00d0: leave.s IL_00f4 + + .line 376,376 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_00d2: stloc.s e + .line 377,377 : 13,14 '' + IL_00d4: nop + .line 378,378 : 17,110 '' + IL_00d5: ldc.i4.5 + IL_00d6: ldstr "HyphenMini" + IL_00db: ldstr "Unable to probe custom plugin api exports. " + IL_00e0: ldloc.s e + IL_00e2: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_00e7: call string [mscorlib]System.String::Concat(string, + string) + IL_00ec: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00f1: nop + .line 379,379 : 17,23 '' + IL_00f2: rethrow + } // end handler + IL_00f4: nop + .line 381,381 : 9,10 '' + IL_00f5: ret + } // end of method Module::ProbeCustomApiExports + + .method private hidebysig instance class Virtuoso.Hyphen.Mini.StandalonePlugin + LoadActualPlugin() cil managed + { + // Code size 239 (0xef) + .maxstack 4 + .locals init ([0] string assemblyPath, + [1] class [mscorlib]System.Reflection.Assembly masterAssembly, + [2] class [mscorlib]System.Type[] exposedTypes, + [3] class [mscorlib]System.Type masterType, + [4] class Virtuoso.Miranda.Plugins.RuntimeNotSupportedException rvnsE, + [5] class [mscorlib]System.Exception e, + [6] class Virtuoso.Hyphen.Mini.StandalonePlugin CS$1$0000, + [7] bool CS$4$0001) + .line 388,388 : 9,10 '' + IL_0000: nop + .line 390,390 : 13,14 '' + .try + { + IL_0001: nop + .line 391,391 : 17,137 '' + IL_0002: ldarg.0 + IL_0003: ldfld string Virtuoso.Hyphen.Mini.Module::MasterDirectory + IL_0008: ldarg.0 + IL_0009: ldfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + IL_000e: call string [mscorlib]System.IO.Path::GetFileNameWithoutExtension(string) + IL_0013: ldstr ".master.dll" + IL_0018: call string [mscorlib]System.String::Concat(string, + string) + IL_001d: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_0022: stloc.0 + .line 393,393 : 17,48 '' + IL_0023: ldloc.0 + IL_0024: call bool [mscorlib]System.IO.File::Exists(string) + IL_0029: stloc.s CS$4$0001 + IL_002b: ldloc.s CS$4$0001 + IL_002d: brtrue.s IL_0037 + + .line 394,394 : 21,33 '' + IL_002f: ldnull + IL_0030: stloc.s CS$1$0000 + IL_0032: leave IL_00eb + + .line 396,396 : 17,75 '' + IL_0037: ldloc.0 + IL_0038: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::LoadFile(string) + IL_003d: stloc.1 + .line 397,397 : 17,91 '' + IL_003e: ldloc.1 + IL_003f: call class [mscorlib]System.Type[] Virtuoso.Miranda.Plugins.PluginManagerBase::GetExposedPlugins(class [mscorlib]System.Reflection.Assembly) + IL_0044: stloc.2 + .line 400,403 : 17,20 '' + IL_0045: ldloc.2 + IL_0046: ldsfld class [mscorlib]System.Predicate`1 Virtuoso.Hyphen.Mini.Module::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_004b: brtrue.s IL_0060 + + IL_004d: ldnull + IL_004e: ldftn bool Virtuoso.Hyphen.Mini.Module::'b__0'(class [mscorlib]System.Type) + IL_0054: newobj instance void class [mscorlib]System.Predicate`1::.ctor(object, + native int) + IL_0059: stsfld class [mscorlib]System.Predicate`1 Virtuoso.Hyphen.Mini.Module::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_005e: br.s IL_0060 + + IL_0060: ldsfld class [mscorlib]System.Predicate`1 Virtuoso.Hyphen.Mini.Module::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0065: call !!0 [mscorlib]System.Array::Find(!!0[], + class [mscorlib]System.Predicate`1) + IL_006a: stloc.3 + .line 406,406 : 17,40 '' + IL_006b: ldloc.3 + IL_006c: ldnull + IL_006d: ceq + IL_006f: ldc.i4.0 + IL_0070: ceq + IL_0072: stloc.s CS$4$0001 + IL_0074: ldloc.s CS$4$0001 + IL_0076: brtrue.s IL_008e + + .line 407,407 : 21,147 '' + IL_0078: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnableToLoadMasterType() + IL_007d: ldarg.0 + IL_007e: ldfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + IL_0083: call string [mscorlib]System.String::Format(string, + object) + IL_0088: newobj instance void [mscorlib]System.TypeLoadException::.ctor(string) + IL_008d: throw + + .line 410,410 : 17,18 '' + .try + { + IL_008e: nop + .line 411,411 : 21,100 '' + IL_008f: ldloc.3 + IL_0090: ldc.i4.1 + IL_0091: call class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginManagerBase::InstantiatePlugin(class [mscorlib]System.Type, + bool) + IL_0096: castclass Virtuoso.Hyphen.Mini.StandalonePlugin + IL_009b: stloc.s CS$1$0000 + IL_009d: leave.s IL_00eb + + .line 413,413 : 17,59 '' + } // end .try + catch Virtuoso.Miranda.Plugins.RuntimeNotSupportedException + { + IL_009f: stloc.s rvnsE + .line 414,414 : 17,18 '' + IL_00a1: nop + .line 415,415 : 21,264 '' + IL_00a2: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable() + IL_00a7: ldloc.3 + IL_00a8: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_00ad: ldloc.s rvnsE + IL_00af: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::get_RequiredVersion() + IL_00b4: call string [mscorlib]System.String::Format(string, + object, + object) + IL_00b9: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_RuntimeVersionNotAvailable() + IL_00be: ldc.i4.0 + IL_00bf: ldc.i4.s 16 + IL_00c1: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_00c6: pop + .line 416,416 : 21,27 '' + IL_00c7: rethrow + .line 419,419 : 13,32 '' + } // end handler + } // end .try + catch [mscorlib]System.Exception + { + IL_00c9: stloc.s e + .line 420,420 : 13,14 '' + IL_00cb: nop + .line 421,421 : 17,108 '' + IL_00cc: ldc.i4.5 + IL_00cd: ldstr "HyphenMini" + IL_00d2: ldstr "Unable to instantiate the master plugin. " + IL_00d7: ldloc.s e + IL_00d9: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_00de: call string [mscorlib]System.String::Concat(string, + string) + IL_00e3: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00e8: nop + .line 422,422 : 17,23 '' + IL_00e9: rethrow + } // end handler + IL_00eb: nop + .line 424,424 : 9,10 '' + IL_00ec: ldloc.s CS$1$0000 + IL_00ee: ret + } // end of method Module::LoadActualPlugin + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 22 (0x16) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 431,431 : 9,10 '' + IL_0000: nop + .line 432,432 : 13,58 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MiniAssembly + IL_0007: callvirt instance string [mscorlib]System.Object::ToString() + IL_000c: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 433,433 : 9,10 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method Module::GetHashCode + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 42 (0x2a) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Mini.Module other, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 436,436 : 9,10 '' + IL_0000: nop + .line 437,437 : 13,42 '' + IL_0001: ldarg.1 + IL_0002: isinst Virtuoso.Hyphen.Mini.Module + IL_0007: stloc.0 + .line 439,439 : 13,31 '' + IL_0008: ldloc.0 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.2 + IL_0010: ldloc.2 + IL_0011: brtrue.s IL_0017 + + .line 440,440 : 17,30 '' + IL_0013: ldc.i4.0 + IL_0014: stloc.1 + IL_0015: br.s IL_0028 + + .line 442,442 : 13,57 '' + IL_0017: ldloc.0 + IL_0018: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_001d: ldarg.0 + IL_001e: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0023: ceq + IL_0025: stloc.1 + IL_0026: br.s IL_0028 + + .line 443,443 : 9,10 '' + IL_0028: ldloc.1 + IL_0029: ret + } // end of method Module::Equals + + .method public hidebysig specialname instance class Virtuoso.Hyphen.Mini.StandalonePlugin + get_StandalonePlugin() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Hyphen.Mini.StandalonePlugin CS$1$0000) + .line 455,455 : 13,14 '' + IL_0000: nop + .line 456,456 : 17,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 457,457 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Module::get_StandalonePlugin + + .method public hidebysig specialname instance bool + get_IsPostV07Build20Api() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 466,466 : 13,14 '' + IL_0000: nop + .line 467,467 : 17,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Hyphen.Mini.Module::isPostV07Build20Api + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 468,468 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Module::get_IsPostV07Build20Api + + .method private hidebysig specialname instance bool + get_PluginLoaded() cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 477,477 : 13,14 '' + IL_0000: nop + .line 478,478 : 17,49 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 479,479 : 13,14 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method Module::get_PluginLoaded + + .method private hidebysig specialname instance bool + get_PluginInitialized() cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 488,488 : 13,14 '' + IL_0000: nop + .line 489,489 : 17,49 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 490,490 : 13,14 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method Module::get_PluginInitialized + + .method assembly hidebysig instance !!T + ExecuteCustomApiExport(string exportName, + object[] data) cil managed + { + .param [2] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 150 (0x96) + .maxstack 3 + .locals init ([0] class Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor descriptor, + [1] class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1' 'CS$<>8__locals4', + [2] !!T CS$1$0000, + [3] bool CS$4$0001) + IL_0000: newobj instance void class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::.ctor() + IL_0005: stloc.1 + IL_0006: ldloc.1 + IL_0007: ldarg.1 + IL_0008: stfld string class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::exportName + .line 505,505 : 9,10 '' + IL_000d: nop + .line 506,506 : 13,50 '' + IL_000e: ldloc.1 + IL_000f: ldfld string class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::exportName + IL_0014: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0019: ldc.i4.0 + IL_001a: ceq + IL_001c: stloc.3 + IL_001d: ldloc.3 + IL_001e: brtrue.s IL_002b + + .line 507,507 : 17,63 '' + IL_0020: ldstr "exportName" + IL_0025: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002a: throw + + .line 509,509 : 13,30 '' + IL_002b: ldarg.2 + IL_002c: ldnull + IL_002d: ceq + IL_002f: ldc.i4.0 + IL_0030: ceq + IL_0032: stloc.3 + IL_0033: ldloc.3 + IL_0034: brtrue.s IL_0041 + + .line 510,510 : 17,57 '' + IL_0036: ldstr "data" + IL_003b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0040: throw + + .line 512,512 : 13,31 '' + IL_0041: ldarg.0 + IL_0042: call instance bool Virtuoso.Hyphen.Mini.Module::get_PluginLoaded() + IL_0047: stloc.3 + IL_0048: ldloc.3 + IL_0049: brtrue.s IL_0056 + + .line 513,513 : 17,102 '' + IL_004b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_0050: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0055: throw + + .line 516,519 : 13,16 '' + IL_0056: ldarg.0 + IL_0057: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_005c: callvirt instance class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection Virtuoso.Hyphen.Mini.StandalonePlugin::get_CustomApiHandlers() + IL_0061: ldloc.1 + IL_0062: ldftn instance bool class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::'b__2'(class Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor) + IL_0068: newobj instance void class [mscorlib]System.Predicate`1::.ctor(object, + native int) + IL_006d: callvirt instance !0 class [mscorlib]System.Collections.Generic.List`1::Find(class [mscorlib]System.Predicate`1) + IL_0072: stloc.0 + .line 521,521 : 13,36 '' + IL_0073: ldloc.0 + IL_0074: ldnull + IL_0075: ceq + IL_0077: ldc.i4.0 + IL_0078: ceq + IL_007a: stloc.3 + IL_007b: ldloc.3 + IL_007c: brtrue.s IL_008a + + .line 522,522 : 17,63 '' + IL_007e: ldloc.1 + IL_007f: ldfld string class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::exportName + IL_0084: newobj instance void [mscorlib]System.NotImplementedException::.ctor(string) + IL_0089: throw + + .line 524,524 : 17,52 '' + IL_008a: ldloc.0 + IL_008b: ldarg.2 + IL_008c: callvirt instance !!0 Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::Execute(object[]) + IL_0091: stloc.2 + IL_0092: br.s IL_0094 + + .line 525,525 : 9,10 '' + IL_0094: ldloc.2 + IL_0095: ret + } // end of method Module::ExecuteCustomApiExport + + .method private hidebysig static bool 'b__0'(class [mscorlib]System.Type _type) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 22 (0x16) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 401,401 : 17,18 '' + IL_0000: nop + .line 402,402 : 21,73 '' + IL_0001: ldarg.0 + IL_0002: ldtoken Virtuoso.Hyphen.Mini.StandalonePlugin + IL_0007: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000c: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + IL_0014: ldloc.0 + IL_0015: ret + } // end of method Module::'b__0' + + .property instance class Virtuoso.Hyphen.Mini.StandalonePlugin + StandalonePlugin() + { + .get instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + } // end of property Module::StandalonePlugin + .property instance bool IsPostV07Build20Api() + { + .get instance bool Virtuoso.Hyphen.Mini.Module::get_IsPostV07Build20Api() + } // end of property Module::IsPostV07Build20Api + .property instance bool PluginLoaded() + { + .get instance bool Virtuoso.Hyphen.Mini.Module::get_PluginLoaded() + } // end of property Module::PluginLoaded + .property instance bool PluginInitialized() + { + .get instance bool Virtuoso.Hyphen.Mini.Module::get_PluginInitialized() + } // end of property Module::PluginInitialized +} // end of class Virtuoso.Hyphen.Mini.Module + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject + extends [mscorlib]System.MarshalByRefObject +{ + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 26,26 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\RemoteObject.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.MarshalByRefObject::.ctor() + IL_0006: nop + .line 26,26 : 34,35 '' + IL_0007: nop + .line 26,26 : 36,37 '' + IL_0008: nop + IL_0009: ret + } // end of method RemoteObject::.ctor + + .method public hidebysig virtual instance object + InitializeLifetimeService() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] object CS$1$0000) + .line 29,29 : 9,10 '' + IL_0000: nop + .line 30,30 : 13,25 '' + IL_0001: ldnull + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 31,31 : 9,10 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method RemoteObject::InitializeLifetimeService + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject +{ + .method famorassem hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 29,29 : 9,43 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContextWorker.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + IL_0006: nop + .line 29,29 : 44,45 '' + IL_0007: nop + .line 29,29 : 46,47 '' + IL_0008: nop + IL_0009: ret + } // end of method ContextWorker::.ctor + + .method family hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + get_Context() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext CS$1$0000) + .line 33,33 : 17,18 '' + IL_0000: nop + .line 33,33 : 19,49 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 33,33 : 50,51 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method ContextWorker::get_Context + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + Context() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::get_Context() + } // end of property ContextWorker::Context +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.IExceptionHandler +{ + .method public hidebysig newslot abstract virtual + instance void HandleException(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) cil managed + { + } // end of method IExceptionHandler::HandleException + +} // end of class Virtuoso.Miranda.Plugins.IExceptionHandler + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.PluginManagerBase + extends Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + implements Virtuoso.Miranda.Plugins.IExceptionHandler +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .class auto ansi sealed nested public PluginManagerContextCallback`1 + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method PluginManagerContextCallback`1::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(class Virtuoso.Miranda.Plugins.PluginManagerBase sender, + !T state) runtime managed + { + } // end of method PluginManagerContextCallback`1::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class Virtuoso.Miranda.Plugins.PluginManagerBase sender, + !T state, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method PluginManagerContextCallback`1::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method PluginManagerContextCallback`1::EndInvoke + + } // end of class PluginManagerContextCallback`1 + + .field static assembly literal string LogCategory = "Hyphen::PluginManagerBase" + .field static famorassem initonly class [mscorlib]System.Type PluginType + .field static famorassem initonly class [mscorlib]System.Type ExposingPluginAttributeType + .field private bool initialized + .field private initonly class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection pluginDescriptors + .field private initonly class [mscorlib]System.AppDomain livingDomain + .field private initonly class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection pluginDescriptorsAsReadOnly + .field private initonly class Virtuoso.Hyphen.FusionContext fusionContext + .field private static class [mscorlib]System.EventHandler PrimaryPluginManagerInitialized + .field private class [mscorlib]System.EventHandler FusionCompleted + .field private class [mscorlib]System.EventHandler`1 PluginStateChange + .field private static class [mscorlib]System.Converter`2 'CS$<>9__CachedAnonymousMethodDelegate6' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method family hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Hyphen.FusionContext fusionContext) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 56,56 : 9,99 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\PluginManagerBase.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.1 + IL_0003: ldc.i4.1 + IL_0004: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::.ctor(class Virtuoso.Hyphen.FusionContext, + bool, + bool) + IL_0009: nop + .line 56,56 : 100,101 '' + IL_000a: nop + .line 56,56 : 102,103 '' + IL_000b: nop + IL_000c: ret + } // end of method PluginManagerBase::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Hyphen.FusionContext fusionContext, + bool initializeMirandaContext, + bool initializeConfiguration) cil managed + { + // Code size 153 (0x99) + .maxstack 2 + .locals init ([0] native int pluginLink, + [1] bool CS$4$0000) + .line 58,58 : 9,125 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor() + IL_0006: nop + .line 59,59 : 9,10 '' + IL_0007: nop + .line 60,60 : 13,39 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.1 + IL_0010: ldloc.1 + IL_0011: brtrue.s IL_001e + + .line 61,61 : 17,66 '' + IL_0013: ldstr "fusionContext" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 63,63 : 13,57 '' + IL_001e: ldarg.0 + IL_001f: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0024: stfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.PluginManagerBase::livingDomain + .line 64,64 : 13,48 '' + IL_0029: ldarg.0 + IL_002a: ldarg.1 + IL_002b: stfld class Virtuoso.Hyphen.FusionContext Virtuoso.Miranda.Plugins.PluginManagerBase::fusionContext + .line 66,66 : 13,71 '' + IL_0030: ldarg.0 + IL_0031: newobj instance void Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::.ctor() + IL_0036: stfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + .line 67,67 : 13,111 '' + IL_003b: ldarg.0 + IL_003c: ldarg.0 + IL_003d: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0042: newobj instance void Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection::.ctor(class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection) + IL_0047: stfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptorsAsReadOnly + .line 69,69 : 13,42 '' + IL_004c: ldarg.2 + IL_004d: ldc.i4.0 + IL_004e: ceq + IL_0050: stloc.1 + IL_0051: ldloc.1 + IL_0052: brtrue.s IL_0089 + + .line 70,70 : 13,14 '' + IL_0054: nop + .line 71,71 : 17,46 '' + IL_0055: ldarg.1 + IL_0056: callvirt instance bool Virtuoso.Hyphen.FusionContext::get_IsInvalid() + IL_005b: stloc.1 + IL_005c: ldloc.1 + IL_005d: brtrue.s IL_007d + + .line 72,72 : 17,18 '' + IL_005f: nop + .line 73,73 : 21,72 '' + IL_0060: ldarg.1 + IL_0061: callvirt instance native int Virtuoso.Hyphen.FusionContext::get_NativePluginLink() + IL_0066: stloc.0 + .line 76,76 : 21,56 '' + IL_0067: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InvalidateCurrent() + IL_006c: nop + .line 80,80 : 21,103 '' + IL_006d: ldloc.0 + IL_006e: call class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.MirandaPluginLink::FromPointer(native int) + IL_0073: ldarg.0 + IL_0074: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink, + class Virtuoso.Miranda.Plugins.PluginManagerBase) + IL_0079: nop + .line 81,81 : 17,18 '' + IL_007a: nop + IL_007b: br.s IL_0088 + + .line 83,83 : 21,66 '' + IL_007d: ldstr "fusionContext" + IL_0082: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0087: throw + + .line 84,84 : 13,14 '' + IL_0088: nop + .line 86,86 : 13,41 '' + IL_0089: ldarg.3 + IL_008a: ldc.i4.0 + IL_008b: ceq + IL_008d: stloc.1 + IL_008e: ldloc.1 + IL_008f: brtrue.s IL_0097 + + .line 87,87 : 17,46 '' + IL_0091: call void Virtuoso.Miranda.Plugins.PMConfiguration::Initialize() + IL_0096: nop + .line 88,88 : 9,10 '' + IL_0097: nop + IL_0098: ret + } // end of method PluginManagerBase::.ctor + + .method public hidebysig specialname static + void add_PrimaryPluginManagerInitialized(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 46 (0x2e) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldsfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_0005: stloc.0 + IL_0006: ldloc.0 + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: ldarg.0 + IL_000a: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_000f: castclass [mscorlib]System.EventHandler + IL_0014: stloc.2 + IL_0015: ldsflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_001a: ldloc.2 + IL_001b: ldloc.1 + IL_001c: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0021: stloc.0 + IL_0022: ldloc.0 + IL_0023: ldloc.1 + IL_0024: ceq + IL_0026: ldc.i4.0 + IL_0027: ceq + IL_0029: stloc.3 + IL_002a: ldloc.3 + IL_002b: brtrue.s IL_0006 + + IL_002d: ret + } // end of method PluginManagerBase::add_PrimaryPluginManagerInitialized + + .method public hidebysig specialname static + void remove_PrimaryPluginManagerInitialized(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 46 (0x2e) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldsfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_0005: stloc.0 + IL_0006: ldloc.0 + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: ldarg.0 + IL_000a: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_000f: castclass [mscorlib]System.EventHandler + IL_0014: stloc.2 + IL_0015: ldsflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_001a: ldloc.2 + IL_001b: ldloc.1 + IL_001c: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0021: stloc.0 + IL_0022: ldloc.0 + IL_0023: ldloc.1 + IL_0024: ceq + IL_0026: ldc.i4.0 + IL_0027: ceq + IL_0029: stloc.3 + IL_002a: ldloc.3 + IL_002b: brtrue.s IL_0006 + + IL_002d: ret + } // end of method PluginManagerBase::remove_PrimaryPluginManagerInitialized + + .method public hidebysig specialname instance void + add_FusionCompleted(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method PluginManagerBase::add_FusionCompleted + + .method public hidebysig specialname instance void + remove_FusionCompleted(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method PluginManagerBase::remove_FusionCompleted + + .method public hidebysig specialname instance void + add_PluginStateChange(class [mscorlib]System.EventHandler`1 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler`1 V_0, + class [mscorlib]System.EventHandler`1 V_1, + class [mscorlib]System.EventHandler`1 V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass class [mscorlib]System.EventHandler`1 + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange>(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method PluginManagerBase::add_PluginStateChange + + .method public hidebysig specialname instance void + remove_PluginStateChange(class [mscorlib]System.EventHandler`1 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler`1 V_0, + class [mscorlib]System.EventHandler`1 V_1, + class [mscorlib]System.EventHandler`1 V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass class [mscorlib]System.EventHandler`1 + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange>(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method PluginManagerBase::remove_PluginStateChange + + .method family hidebysig static void FirePrimaryPluginManagerInitializedEvent(class Virtuoso.Miranda.Plugins.PluginManagerBase sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 27 (0x1b) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 101,101 : 9,10 '' + IL_0000: nop + .line 102,102 : 13,57 '' + IL_0001: ldsfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_0006: ldnull + IL_0007: ceq + IL_0009: stloc.0 + IL_000a: ldloc.0 + IL_000b: brtrue.s IL_001a + + .line 103,103 : 17,60 '' + IL_000d: ldsfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_0012: ldarg.0 + IL_0013: ldarg.1 + IL_0014: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + IL_0019: nop + .line 104,104 : 9,10 '' + IL_001a: ret + } // end of method PluginManagerBase::FirePrimaryPluginManagerInitializedEvent + + .method family hidebysig instance void + RaiseFusionCompletedEvent(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 29 (0x1d) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 107,107 : 9,10 '' + IL_0000: nop + .line 108,108 : 13,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_001c + + .line 109,109 : 17,42 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + IL_001b: nop + .line 110,110 : 9,10 '' + IL_001c: ret + } // end of method PluginManagerBase::RaiseFusionCompletedEvent + + .method family hidebysig instance void + FirePluginStateChangeEvent(class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs e) cil managed + { + // Code size 29 (0x1d) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 113,113 : 9,10 '' + IL_0000: nop + .line 114,114 : 13,43 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_001c + + .line 115,115 : 17,44 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: callvirt instance void class [mscorlib]System.EventHandler`1::Invoke(object, + !0) + IL_001b: nop + .line 116,116 : 9,10 '' + IL_001c: ret + } // end of method PluginManagerBase::FirePluginStateChangeEvent + + .method family hidebysig specialname instance bool + get_Initialized() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 125,125 : 13,14 '' + IL_0000: nop + .line 126,126 : 17,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.PluginManagerBase::initialized + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 127,127 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginManagerBase::get_Initialized + + .method family hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + get_PluginDescriptors() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection CS$1$0000) + .line 132,132 : 17,18 '' + IL_0000: nop + .line 132,132 : 19,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 132,132 : 45,46 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginManagerBase::get_PluginDescriptors + + .method family hidebysig specialname instance class [mscorlib]System.AppDomain + get_LivingDomain() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.AppDomain CS$1$0000) + .line 138,138 : 13,14 '' + IL_0000: nop + .line 139,139 : 17,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.PluginManagerBase::livingDomain + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 140,140 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginManagerBase::get_LivingDomain + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection + get_Plugins() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection CS$1$0000) + .line 146,146 : 13,14 '' + IL_0000: nop + .line 147,147 : 17,52 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptorsAsReadOnly + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 148,148 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginManagerBase::get_Plugins + + .method public hidebysig specialname instance class Virtuoso.Hyphen.FusionContext + get_FusionContext() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Hyphen.FusionContext CS$1$0000) + .line 154,154 : 13,14 '' + IL_0000: nop + .line 155,155 : 17,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.FusionContext Virtuoso.Miranda.Plugins.PluginManagerBase::fusionContext + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 156,156 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginManagerBase::get_FusionContext + + .method famorassem hidebysig newslot abstract virtual + instance void FindAndLoadPlugins() cil managed + { + } // end of method PluginManagerBase::FindAndLoadPlugins + + .method famorassem hidebysig static class [mscorlib]System.Type[] + GetExposedPlugins(class [mscorlib]System.Reflection.Assembly 'assembly') cil managed + { + // Code size 84 (0x54) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Type[] CS$1$0000, + [1] bool CS$4$0001) + .line 166,166 : 9,10 '' + IL_0000: nop + .line 167,167 : 13,73 '' + IL_0001: ldarg.0 + IL_0002: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::ExposingPluginAttributeType + IL_0007: ldc.i4.0 + IL_0008: callvirt instance bool [mscorlib]System.Reflection.Assembly::IsDefined(class [mscorlib]System.Type, + bool) + IL_000d: stloc.1 + IL_000e: ldloc.1 + IL_000f: brtrue.s IL_001a + + .line 168,168 : 17,36 '' + IL_0011: ldc.i4.0 + IL_0012: newarr [mscorlib]System.Type + IL_0017: stloc.0 + IL_0018: br.s IL_0052 + + .line 170,174 : 13,20 '' + IL_001a: ldarg.0 + IL_001b: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::ExposingPluginAttributeType + IL_0020: ldc.i4.0 + IL_0021: callvirt instance object[] [mscorlib]System.Reflection.Assembly::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_0026: castclass class Virtuoso.Miranda.Plugins.ExposingPluginAttribute[] + IL_002b: ldsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.PluginManagerBase::'CS$<>9__CachedAnonymousMethodDelegate6' + IL_0030: brtrue.s IL_0045 + + IL_0032: ldnull + IL_0033: ldftn class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::'b__5'(class Virtuoso.Miranda.Plugins.ExposingPluginAttribute) + IL_0039: newobj instance void class [mscorlib]System.Converter`2::.ctor(object, + native int) + IL_003e: stsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.PluginManagerBase::'CS$<>9__CachedAnonymousMethodDelegate6' + IL_0043: br.s IL_0045 + + IL_0045: ldsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.PluginManagerBase::'CS$<>9__CachedAnonymousMethodDelegate6' + IL_004a: call !!1[] [mscorlib]System.Array::ConvertAll(!!0[], + class [mscorlib]System.Converter`2) + IL_004f: stloc.0 + IL_0050: br.s IL_0052 + + .line 175,175 : 9,10 '' + IL_0052: ldloc.0 + IL_0053: ret + } // end of method PluginManagerBase::GetExposedPlugins + + .method family hidebysig instance void + DeclareInitialized() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 178,178 : 9,10 '' + IL_0000: nop + .line 179,179 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.PluginManagerBase::initialized + .line 180,180 : 9,10 '' + IL_0008: ret + } // end of method PluginManagerBase::DeclareInitialized + + .method family hidebysig newslot virtual + instance void AccountPluginDescriptor(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 104 (0x68) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 183,183 : 9,10 '' + IL_0000: nop + .line 184,184 : 13,42 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 185,185 : 17,69 '' + IL_000c: ldstr "pluginDescriptor" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 188,188 : 13,14 '' + .try + { + IL_0017: nop + .line 189,189 : 17,80 '' + IL_0018: ldarg.0 + IL_0019: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_001e: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_0023: nop + .line 191,191 : 17,85 '' + IL_0024: ldarg.0 + IL_0025: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_002a: ldarg.1 + IL_002b: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0030: callvirt instance bool Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::ContainsDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0035: ldc.i4.0 + IL_0036: ceq + IL_0038: stloc.0 + IL_0039: ldloc.0 + IL_003a: brtrue.s IL_0047 + + .line 192,192 : 21,110 '' + IL_003c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginAlreadyInitialized() + IL_0041: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0046: throw + + .line 194,194 : 17,57 '' + IL_0047: ldarg.0 + IL_0048: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_004d: ldarg.1 + IL_004e: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0053: nop + .line 195,195 : 13,14 '' + IL_0054: nop + IL_0055: leave.s IL_0066 + + .line 197,197 : 13,14 '' + } // end .try + finally + { + IL_0057: nop + .line 198,198 : 17,68 '' + IL_0058: ldarg.0 + IL_0059: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_005e: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0063: nop + .line 199,199 : 13,14 '' + IL_0064: nop + IL_0065: endfinally + } // end handler + IL_0066: nop + .line 200,200 : 9,10 '' + IL_0067: ret + } // end of method PluginManagerBase::AccountPluginDescriptor + + .method famorassem hidebysig static class Virtuoso.Miranda.Plugins.MirandaPlugin + InstantiatePlugin(class [mscorlib]System.Type 'type') cil managed + { + // Code size 13 (0xd) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin CS$1$0000) + .line 203,203 : 9,10 '' + IL_0000: nop + .line 204,204 : 13,51 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: call class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginManagerBase::InstantiatePlugin(class [mscorlib]System.Type, + bool) + IL_0008: stloc.0 + IL_0009: br.s IL_000b + + .line 205,205 : 9,10 '' + IL_000b: ldloc.0 + IL_000c: ret + } // end of method PluginManagerBase::InstantiatePlugin + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.MirandaPlugin + InstantiatePlugin(class [mscorlib]System.Type 'type', + bool acceptIndividualPlugins) cil managed + { + // Code size 159 (0x9f) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute loaderOptions, + [1] class Virtuoso.Miranda.Plugins.MirandaPlugin CS$1$0000, + [2] bool CS$4$0001) + .line 208,208 : 9,10 '' + IL_0000: nop + .line 209,209 : 13,30 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 210,210 : 17,57 '' + IL_000c: ldstr "type" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 212,212 : 13,128 '' + IL_0017: ldarg.0 + IL_0018: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::PluginType + IL_001d: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0022: brfalse.s IL_003b + + IL_0024: ldarg.1 + IL_0025: brtrue.s IL_0037 + + IL_0027: ldarg.0 + IL_0028: ldsfld class [mscorlib]System.Type Virtuoso.Hyphen.Mini.StandalonePlugin::PluginType + IL_002d: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0032: ldc.i4.0 + IL_0033: ceq + IL_0035: br.s IL_0038 + + IL_0037: ldc.i4.1 + IL_0038: nop + IL_0039: br.s IL_003c + + IL_003b: ldc.i4.0 + IL_003c: nop + IL_003d: stloc.2 + IL_003e: ldloc.2 + IL_003f: brtrue.s IL_0045 + + .line 213,213 : 17,29 '' + IL_0041: ldnull + IL_0042: stloc.1 + IL_0043: br.s IL_009d + + .line 215,215 : 13,110 '' + IL_0045: ldarg.0 + IL_0046: ldc.i4.0 + IL_0047: call class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::Get(class [mscorlib]System.Type, + valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner) + IL_004c: stloc.0 + .line 217,217 : 13,70 '' + IL_004d: ldloc.0 + IL_004e: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_RequiredVersion() + IL_0053: call class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + IL_0058: call bool [mscorlib]System.Version::op_GreaterThan(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_005d: ldc.i4.0 + IL_005e: ceq + IL_0060: stloc.2 + IL_0061: ldloc.2 + IL_0062: brtrue.s IL_0071 + + .line 218,218 : 17,93 '' + IL_0064: ldarg.0 + IL_0065: ldloc.0 + IL_0066: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_RequiredVersion() + IL_006b: newobj instance void Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor(class [mscorlib]System.Type, + class [mscorlib]System.Version) + IL_0070: throw + + .line 220,220 : 13,90 '' + IL_0071: ldloc.0 + IL_0072: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaVersion() + IL_0077: callvirt instance bool Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::SupportsMirandaVersion(class [mscorlib]System.Version) + IL_007c: stloc.2 + IL_007d: ldloc.2 + IL_007e: brtrue.s IL_008e + + .line 221,221 : 17,106 '' + IL_0080: ldarg.0 + IL_0081: ldloc.0 + IL_0082: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion() + IL_0087: ldc.i4.0 + IL_0088: newobj instance void Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor(class [mscorlib]System.Type, + class [mscorlib]System.Version, + bool) + IL_008d: throw + + .line 223,223 : 13,72 '' + IL_008e: ldarg.0 + IL_008f: ldc.i4.1 + IL_0090: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type, + bool) + IL_0095: castclass Virtuoso.Miranda.Plugins.MirandaPlugin + IL_009a: stloc.1 + IL_009b: br.s IL_009d + + .line 224,224 : 9,10 '' + IL_009d: ldloc.1 + IL_009e: ret + } // end of method PluginManagerBase::InstantiatePlugin + + .method family hidebysig static void RegisterMenuItems(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 105 (0x69) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactList list, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItemAttrib, + [3] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000, + [4] bool CS$4$0001) + .line 227,227 : 9,10 '' + IL_0000: nop + .line 229,229 : 13,14 '' + .try + { + IL_0001: nop + .line 230,230 : 17,79 '' + IL_0002: ldarg.0 + IL_0003: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + IL_0008: nop + .line 231,231 : 17,63 '' + IL_0009: ldarg.0 + IL_000a: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_000f: stloc.0 + .line 233,233 : 17,71 '' + IL_0010: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0015: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList() + IL_001a: stloc.1 + .line 235,235 : 17,24 '' + IL_001b: nop + .line 235,235 : 73,98 '' + IL_001c: ldloc.0 + IL_001d: callvirt instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection() + IL_0022: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0027: stloc.3 + .try + { + IL_0028: br.s IL_003b + + .line 235,235 : 26,69 '' + IL_002a: ldloca.s CS$5$0000 + IL_002c: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0031: stloc.2 + .line 236,236 : 21,61 '' + IL_0032: ldloc.1 + IL_0033: ldloc.0 + IL_0034: ldloc.2 + IL_0035: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_003a: nop + .line 235,235 : 70,72 '' + IL_003b: ldloca.s CS$5$0000 + IL_003d: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0042: stloc.s CS$4$0001 + IL_0044: ldloc.s CS$4$0001 + IL_0046: brtrue.s IL_002a + + IL_0048: leave.s IL_0059 + + } // end .try + finally + { + IL_004a: ldloca.s CS$5$0000 + IL_004c: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0052: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0057: nop + IL_0058: endfinally + } // end handler + IL_0059: nop + .line 237,237 : 13,14 '' + IL_005a: nop + IL_005b: leave.s IL_0067 + + .line 239,239 : 13,14 '' + } // end .try + finally + { + IL_005d: nop + .line 240,240 : 17,67 '' + IL_005e: ldarg.0 + IL_005f: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0064: nop + .line 241,241 : 13,14 '' + IL_0065: nop + IL_0066: endfinally + } // end handler + IL_0067: nop + .line 242,242 : 9,10 '' + IL_0068: ret + } // end of method PluginManagerBase::RegisterMenuItems + + .method family hidebysig static void UnregisterMenuItems(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 125 (0x7d) + .maxstack 8 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactList list, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItemAttrib, + [3] bool result, + [4] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000, + [5] bool CS$4$0001) + .line 245,245 : 9,10 '' + IL_0000: nop + .line 247,247 : 13,14 '' + .try + { + IL_0001: nop + .line 248,248 : 17,79 '' + IL_0002: ldarg.0 + IL_0003: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + IL_0008: nop + .line 249,249 : 17,63 '' + IL_0009: ldarg.0 + IL_000a: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_000f: stloc.0 + .line 251,251 : 17,71 '' + IL_0010: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0015: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList() + IL_001a: stloc.1 + .line 253,253 : 17,24 '' + IL_001b: nop + .line 253,253 : 73,88 '' + IL_001c: ldloc.0 + IL_001d: callvirt instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItems() + IL_0022: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_0027: stloc.s CS$5$0000 + .try + { + IL_0029: br.s IL_004a + + .line 253,253 : 26,69 '' + IL_002b: ldloc.s CS$5$0000 + IL_002d: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0032: stloc.2 + .line 254,254 : 17,18 '' + IL_0033: nop + .line 255,255 : 21,127 '' + IL_0034: ldloc.1 + IL_0035: ldloc.0 + IL_0036: ldloc.2 + IL_0037: ldnull + IL_0038: ldc.i4.4 + IL_0039: ldnull + IL_003a: ldc.i4.0 + IL_003b: ldc.i4.0 + IL_003c: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_0041: stloc.3 + .line 256,256 : 21,42 '' + IL_0042: ldloc.3 + IL_0043: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0048: nop + .line 257,257 : 17,18 '' + IL_0049: nop + .line 253,253 : 70,72 '' + IL_004a: ldloc.s CS$5$0000 + IL_004c: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0051: stloc.s CS$4$0001 + IL_0053: ldloc.s CS$4$0001 + IL_0055: brtrue.s IL_002b + + IL_0057: leave.s IL_006d + + } // end .try + finally + { + IL_0059: ldloc.s CS$5$0000 + IL_005b: ldnull + IL_005c: ceq + IL_005e: stloc.s CS$4$0001 + IL_0060: ldloc.s CS$4$0001 + IL_0062: brtrue.s IL_006c + + IL_0064: ldloc.s CS$5$0000 + IL_0066: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_006b: nop + IL_006c: endfinally + } // end handler + IL_006d: nop + .line 258,258 : 13,14 '' + IL_006e: nop + IL_006f: leave.s IL_007b + + .line 260,260 : 13,14 '' + } // end .try + finally + { + IL_0071: nop + .line 261,261 : 17,67 '' + IL_0072: ldarg.0 + IL_0073: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0078: nop + .line 262,262 : 13,14 '' + IL_0079: nop + IL_007a: endfinally + } // end handler + IL_007b: nop + .line 263,263 : 9,10 '' + IL_007c: ret + } // end of method PluginManagerBase::UnregisterMenuItems + + .method family hidebysig instance void + HookPlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 64 (0x40) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) + .line 266,266 : 9,10 '' + IL_0000: nop + .line 268,268 : 13,14 '' + .try + { + IL_0001: nop + .line 269,269 : 17,79 '' + IL_0002: ldarg.1 + IL_0003: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + IL_0008: nop + .line 271,271 : 17,65 '' + IL_0009: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_000e: stloc.0 + .line 273,273 : 17,86 '' + IL_000f: ldarg.1 + IL_0010: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_0015: callvirt instance !0[] class [mscorlib]System.Collections.Generic.List`1::ToArray() + IL_001a: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHooks(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor[]) + IL_001f: nop + .line 274,274 : 17,80 '' + IL_0020: ldarg.1 + IL_0021: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_0026: callvirt instance !0[] class [mscorlib]System.Collections.Generic.List`1::ToArray() + IL_002b: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHooks(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor[]) + IL_0030: nop + .line 275,275 : 13,14 '' + IL_0031: nop + IL_0032: leave.s IL_003e + + .line 277,277 : 13,14 '' + } // end .try + finally + { + IL_0034: nop + .line 278,278 : 17,67 '' + IL_0035: ldarg.1 + IL_0036: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_003b: nop + .line 279,279 : 13,14 '' + IL_003c: nop + IL_003d: endfinally + } // end handler + IL_003e: nop + .line 280,280 : 9,10 '' + IL_003f: ret + } // end of method PluginManagerBase::HookPlugin + + .method public hidebysig instance void + DoContextCallback(class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 del, + !!T state) cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 287,287 : 9,10 '' + IL_0000: nop + .line 288,288 : 13,29 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 289,289 : 17,56 '' + IL_000c: ldstr "del" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 291,291 : 13,30 '' + IL_0017: ldarg.1 + IL_0018: ldarg.0 + IL_0019: ldarg.2 + IL_001a: callvirt instance void class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1::Invoke(class Virtuoso.Miranda.Plugins.PluginManagerBase, + !0) + IL_001f: nop + .line 292,292 : 9,10 '' + IL_0020: ret + } // end of method PluginManagerBase::DoContextCallback + + .method public hidebysig newslot virtual + instance void SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState newState) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 295,295 : 9,10 '' + IL_0000: nop + .line 296,296 : 13,63 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldc.i4.0 + IL_0005: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState, + bool) + IL_000a: nop + .line 297,297 : 9,10 '' + IL_000b: ret + } // end of method PluginManagerBase::SetPluginState + + .method public hidebysig newslot virtual + instance void SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState newState, + bool rememberState) cil managed + { + // Code size 111 (0x6f) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.PluginState previousState, + [1] bool CS$4$0000) + .line 300,300 : 9,10 '' + IL_0000: nop + .line 302,302 : 13,14 '' + .try + { + IL_0001: nop + .line 303,303 : 17,79 '' + IL_0002: ldarg.1 + IL_0003: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + IL_0008: nop + .line 304,304 : 17,74 '' + IL_0009: ldarg.1 + IL_000a: callvirt instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState() + IL_000f: stloc.0 + .line 306,306 : 17,128 '' + IL_0010: ldloc.0 + IL_0011: ldarg.2 + IL_0012: beq.s IL_0022 + + IL_0014: ldloc.0 + IL_0015: ldc.i4.2 + IL_0016: bne.un.s IL_001e + + IL_0018: ldarg.2 + IL_0019: ldc.i4.1 + IL_001a: ceq + IL_001c: br.s IL_001f + + IL_001e: ldc.i4.1 + IL_001f: nop + IL_0020: br.s IL_0023 + + IL_0022: ldc.i4.0 + IL_0023: nop + IL_0024: stloc.1 + IL_0025: ldloc.1 + IL_0026: brtrue.s IL_002a + + .line 307,307 : 21,28 '' + IL_0028: leave.s IL_006d + + .line 309,309 : 17,62 '' + IL_002a: ldarg.1 + IL_002b: ldarg.2 + IL_002c: callvirt instance void Virtuoso.Miranda.Plugins.PluginDescriptor::UpdatePluginState(valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_0031: nop + .line 310,310 : 17,101 '' + IL_0032: ldarg.0 + IL_0033: ldloc.0 + IL_0034: ldarg.2 + IL_0035: newobj instance void Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::.ctor(valuetype Virtuoso.Miranda.Plugins.PluginState, + valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_003a: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::FirePluginStateChangeEvent(class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs) + IL_003f: nop + .line 312,312 : 17,53 '' + IL_0040: ldarg.2 + IL_0041: ldc.i4.1 + IL_0042: ceq + IL_0044: ldc.i4.0 + IL_0045: ceq + IL_0047: stloc.1 + IL_0048: ldloc.1 + IL_0049: brtrue.s IL_0056 + + .line 313,313 : 21,67 '' + IL_004b: ldarg.0 + IL_004c: ldarg.1 + IL_004d: ldarg.3 + IL_004e: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::EnablePlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor, + bool) + IL_0053: nop + IL_0054: br.s IL_005f + + .line 315,315 : 21,68 '' + IL_0056: ldarg.0 + IL_0057: ldarg.1 + IL_0058: ldarg.3 + IL_0059: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::DisablePlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor, + bool) + IL_005e: nop + .line 316,316 : 13,14 '' + IL_005f: nop + IL_0060: leave.s IL_006c + + .line 318,318 : 13,14 '' + } // end .try + finally + { + IL_0062: nop + .line 319,319 : 17,67 '' + IL_0063: ldarg.1 + IL_0064: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0069: nop + .line 320,320 : 13,14 '' + IL_006a: nop + IL_006b: endfinally + } // end handler + IL_006c: nop + IL_006d: nop + .line 321,321 : 9,10 '' + IL_006e: ret + } // end of method PluginManagerBase::SetPluginState + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.PluginDescriptor + LoadPlugin(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 14 (0xe) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000) + .line 324,324 : 9,10 '' + IL_0000: nop + .line 325,325 : 13,45 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldc.i4.1 + IL_0004: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.PluginManagerBase::LoadPlugin(class Virtuoso.Miranda.Plugins.MirandaPlugin, + bool) + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + .line 326,326 : 9,10 '' + IL_000c: ldloc.0 + IL_000d: ret + } // end of method PluginManagerBase::LoadPlugin + + .method private hidebysig instance void + EnablePlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + bool rememberState) cil managed + { + // Code size 88 (0x58) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 disabledPlugins, + [1] bool CS$4$0000, + [2] class [mscorlib]System.Collections.Generic.List`1 CS$2$0001) + .line 331,331 : 9,10 '' + IL_0000: nop + .line 332,332 : 13,42 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::HookPlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0008: nop + .line 333,333 : 13,49 '' + IL_0009: ldarg.1 + IL_000a: call void Virtuoso.Miranda.Plugins.PluginManagerBase::RegisterMenuItems(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_000f: nop + .line 335,335 : 13,65 '' + IL_0010: ldarg.1 + IL_0011: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0016: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginEnableInternal() + IL_001b: nop + .line 337,337 : 13,31 '' + IL_001c: ldarg.2 + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.1 + IL_0021: ldloc.1 + IL_0022: brtrue.s IL_0057 + + .line 338,338 : 13,14 '' + IL_0024: nop + .line 339,339 : 17,90 '' + IL_0025: call class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + IL_002a: callvirt instance class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::get_DisabledPlugins() + IL_002f: stloc.0 + .line 341,341 : 17,39 '' + IL_0030: ldloc.0 + IL_0031: dup + IL_0032: stloc.2 + IL_0033: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0038: nop + .line 342,342 : 21,80 '' + .try + { + IL_0039: ldloc.0 + IL_003a: ldarg.1 + IL_003b: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0040: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_UniqueName() + IL_0045: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_004a: pop + IL_004b: leave.s IL_0055 + + } // end .try + finally + { + IL_004d: ldloc.2 + IL_004e: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0053: nop + IL_0054: endfinally + } // end handler + IL_0055: nop + .line 343,343 : 13,14 '' + IL_0056: nop + .line 344,344 : 9,10 '' + IL_0057: ret + } // end of method PluginManagerBase::EnablePlugin + + .method private hidebysig instance void + DisablePlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + bool rememberState) cil managed + { + // Code size 155 (0x9b) + .maxstack 2 + .locals init ([0] string typeName, + [1] class [mscorlib]System.Collections.Generic.List`1 disabledPlugins, + [2] class Virtuoso.Hyphen.MirandaPluginLink CS$2$0000, + [3] bool CS$4$0001, + [4] class [mscorlib]System.Collections.Generic.List`1 CS$2$0002) + .line 347,347 : 9,10 '' + IL_0000: nop + .line 348,348 : 13,67 '' + IL_0001: ldarg.1 + IL_0002: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0007: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforePluginDisableInternal() + IL_000c: nop + .line 350,350 : 13,63 '' + IL_000d: ldarg.1 + IL_000e: ldc.i4.1 + IL_000f: call void Virtuoso.Miranda.Plugins.Forms.PluginDialog::CloseDialogs(class Virtuoso.Miranda.Plugins.PluginDescriptor, + bool) + IL_0014: nop + .line 351,351 : 13,51 '' + IL_0015: ldarg.1 + IL_0016: call void Virtuoso.Miranda.Plugins.PluginManagerBase::UnregisterMenuItems(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_001b: nop + .line 353,353 : 13,53 '' + IL_001c: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0021: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0026: dup + IL_0027: stloc.2 + IL_0028: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_002d: nop + .line 354,354 : 13,14 '' + .try + { + IL_002e: nop + .line 355,355 : 17,48 '' + IL_002f: ldarg.1 + IL_0030: call void Virtuoso.Miranda.Plugins.PluginManagerBase::UnhookEvents(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0035: nop + .line 356,356 : 17,51 '' + IL_0036: ldarg.1 + IL_0037: call void Virtuoso.Miranda.Plugins.PluginManagerBase::DestroyServices(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_003c: nop + .line 357,357 : 17,49 '' + IL_003d: ldarg.1 + IL_003e: call void Virtuoso.Miranda.Plugins.PluginManagerBase::DestroyEvents(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0043: nop + .line 358,358 : 13,14 '' + IL_0044: nop + IL_0045: leave.s IL_004f + + } // end .try + finally + { + IL_0047: ldloc.2 + IL_0048: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_004d: nop + IL_004e: endfinally + } // end handler + IL_004f: nop + .line 360,360 : 13,31 '' + IL_0050: ldarg.2 + IL_0051: ldc.i4.0 + IL_0052: ceq + IL_0054: stloc.3 + IL_0055: ldloc.3 + IL_0056: brtrue.s IL_009a + + .line 361,361 : 13,14 '' + IL_0058: nop + .line 362,362 : 17,70 '' + IL_0059: ldarg.1 + IL_005a: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_005f: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_UniqueName() + IL_0064: stloc.0 + .line 363,363 : 17,90 '' + IL_0065: call class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + IL_006a: callvirt instance class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::get_DisabledPlugins() + IL_006f: stloc.1 + .line 365,365 : 17,39 '' + IL_0070: ldloc.1 + IL_0071: dup + IL_0072: stloc.s CS$2$0002 + IL_0074: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0079: nop + .line 366,366 : 21,61 '' + .try + { + IL_007a: ldloc.1 + IL_007b: ldloc.0 + IL_007c: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Contains(!0) + IL_0081: stloc.3 + IL_0082: ldloc.3 + IL_0083: brtrue.s IL_008d + + .line 367,367 : 25,55 '' + IL_0085: ldloc.1 + IL_0086: ldloc.0 + IL_0087: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_008c: nop + IL_008d: leave.s IL_0098 + + } // end .try + finally + { + IL_008f: ldloc.s CS$2$0002 + IL_0091: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0096: nop + IL_0097: endfinally + } // end handler + IL_0098: nop + .line 368,368 : 13,14 '' + IL_0099: nop + .line 369,369 : 9,10 '' + IL_009a: ret + } // end of method PluginManagerBase::DisablePlugin + + .method family hidebysig instance bool + IsEnabled(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 72 (0x48) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 disabledPlugins, + [1] bool CS$1$0000, + [2] bool CS$4$0001, + [3] class [mscorlib]System.Collections.Generic.List`1 CS$2$0002) + .line 372,372 : 9,10 '' + IL_0000: nop + .line 373,373 : 13,32 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 374,374 : 17,59 '' + IL_000c: ldstr "plugin" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 376,376 : 13,86 '' + IL_0017: call class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + IL_001c: callvirt instance class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::get_DisabledPlugins() + IL_0021: stloc.0 + .line 378,378 : 13,35 '' + IL_0022: ldloc.0 + IL_0023: dup + IL_0024: stloc.3 + IL_0025: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_002a: nop + .line 379,379 : 17,69 '' + .try + { + IL_002b: ldloc.0 + IL_002c: ldarg.1 + IL_002d: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_UniqueName() + IL_0032: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Contains(!0) + IL_0037: ldc.i4.0 + IL_0038: ceq + IL_003a: stloc.1 + IL_003b: leave.s IL_0045 + + } // end .try + finally + { + IL_003d: ldloc.3 + IL_003e: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0043: nop + IL_0044: endfinally + } // end handler + IL_0045: nop + .line 380,380 : 9,10 '' + IL_0046: ldloc.1 + IL_0047: ret + } // end of method PluginManagerBase::IsEnabled + + .method private hidebysig static void DestroyEvents(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 85 (0x55) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle handle, + [1] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000, + [2] bool CS$4$0001) + .line 383,383 : 9,10 '' + IL_0000: nop + .line 384,384 : 13,20 '' + IL_0001: nop + .line 384,384 : 44,73 '' + IL_0002: ldarg.0 + IL_0003: callvirt instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHandles() + IL_0008: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_000d: stloc.1 + .try + { + IL_000e: br.s IL_0037 + + .line 384,384 : 22,40 '' + IL_0010: ldloca.s CS$5$0000 + IL_0012: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0017: stloc.0 + .line 385,385 : 13,14 '' + IL_0018: nop + .line 387,387 : 17,18 '' + .try + { + IL_0019: nop + .line 388,388 : 21,69 '' + IL_001a: ldloc.0 + IL_001b: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginHandleUpdate(class Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject) + IL_0020: nop + .line 389,389 : 21,54 '' + IL_0021: ldloc.0 + IL_0022: call void Virtuoso.Miranda.Plugins.Infrastructure.EventManager::RemoveEvent(class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle) + IL_0027: nop + .line 390,390 : 17,18 '' + IL_0028: nop + IL_0029: leave.s IL_0035 + + .line 392,392 : 17,18 '' + } // end .try + finally + { + IL_002b: nop + .line 393,393 : 21,61 '' + IL_002c: ldloc.0 + IL_002d: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0032: nop + .line 394,394 : 17,18 '' + IL_0033: nop + IL_0034: endfinally + } // end handler + IL_0035: nop + .line 395,395 : 13,14 '' + IL_0036: nop + .line 384,384 : 41,43 '' + IL_0037: ldloca.s CS$5$0000 + IL_0039: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_003e: stloc.2 + IL_003f: ldloc.2 + IL_0040: brtrue.s IL_0010 + + IL_0042: leave.s IL_0053 + + } // end .try + finally + { + IL_0044: ldloca.s CS$5$0000 + IL_0046: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_004c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0051: nop + IL_0052: endfinally + } // end handler + IL_0053: nop + .line 396,396 : 9,10 '' + IL_0054: ret + } // end of method PluginManagerBase::DestroyEvents + + .method private hidebysig static void DestroyServices(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 71 (0x47) + .maxstack 1 + .locals init ([0] int32 result, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook, + [3] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000, + [4] bool CS$4$0001) + .line 399,399 : 9,10 '' + IL_0000: nop + .line 400,400 : 13,28 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + .line 401,401 : 13,61 '' + IL_0003: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0008: stloc.1 + .line 403,403 : 13,20 '' + IL_0009: nop + .line 403,403 : 45,78 '' + IL_000a: ldarg.0 + IL_000b: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_0010: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0015: stloc.3 + .try + { + IL_0016: br.s IL_0027 + + .line 403,403 : 22,41 '' + IL_0018: ldloca.s CS$5$0000 + IL_001a: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_001f: stloc.2 + .line 404,404 : 17,47 '' + IL_0020: ldloc.2 + IL_0021: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0026: nop + .line 403,403 : 42,44 '' + IL_0027: ldloca.s CS$5$0000 + IL_0029: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_002e: stloc.s CS$4$0001 + IL_0030: ldloc.s CS$4$0001 + IL_0032: brtrue.s IL_0018 + + IL_0034: leave.s IL_0045 + + } // end .try + finally + { + IL_0036: ldloca.s CS$5$0000 + IL_0038: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_003e: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0043: nop + IL_0044: endfinally + } // end handler + IL_0045: nop + .line 405,405 : 9,10 '' + IL_0046: ret + } // end of method PluginManagerBase::DestroyServices + + .method private hidebysig static void UnhookEvents(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 71 (0x47) + .maxstack 1 + .locals init ([0] int32 result, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hookDesc, + [3] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000, + [4] bool CS$4$0001) + .line 408,408 : 9,10 '' + IL_0000: nop + .line 409,409 : 13,28 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + .line 410,410 : 13,61 '' + IL_0003: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0008: stloc.1 + .line 412,412 : 13,20 '' + IL_0009: nop + .line 412,412 : 49,76 '' + IL_000a: ldarg.0 + IL_000b: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_0010: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0015: stloc.3 + .try + { + IL_0016: br.s IL_0027 + + .line 412,412 : 22,45 '' + IL_0018: ldloca.s CS$5$0000 + IL_001a: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_001f: stloc.2 + .line 413,413 : 17,51 '' + IL_0020: ldloc.2 + IL_0021: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0026: nop + .line 412,412 : 46,48 '' + IL_0027: ldloca.s CS$5$0000 + IL_0029: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_002e: stloc.s CS$4$0001 + IL_0030: ldloc.s CS$4$0001 + IL_0032: brtrue.s IL_0018 + + IL_0034: leave.s IL_0045 + + } // end .try + finally + { + IL_0036: ldloca.s CS$5$0000 + IL_0038: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_003e: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0043: nop + IL_0044: endfinally + } // end handler + IL_0045: nop + .line 414,414 : 9,10 '' + IL_0046: ret + } // end of method PluginManagerBase::UnhookEvents + + .method famorassem hidebysig newslot virtual + instance void Shutdown(bool lazy) cil managed + { + // Code size 158 (0x9e) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + [1] bool CS$4$0000, + [2] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001) + .line 417,417 : 9,10 '' + IL_0000: nop + .line 419,419 : 13,14 '' + .try + { + IL_0001: nop + .line 420,420 : 17,86 '' + IL_0002: ldc.i4.0 + IL_0003: ldstr "Hyphen::PluginManagerBase" + IL_0008: ldstr "Shutting down Plugin Manager..." + IL_000d: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0012: nop + .line 421,421 : 17,85 '' + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0019: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_001e: nop + .line 423,423 : 17,50 '' + IL_001f: call class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + IL_0024: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save() + IL_0029: nop + .line 425,425 : 17,27 '' + IL_002a: ldarg.1 + IL_002b: stloc.1 + IL_002c: ldloc.1 + IL_002d: brtrue.s IL_0079 + + .line 426,426 : 17,18 '' + IL_002f: nop + .line 427,427 : 21,85 '' + IL_0030: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0035: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::RaiseIsolatedModePluginsUnloadingEvent() + IL_003a: nop + .line 429,429 : 21,28 '' + IL_003b: nop + .line 429,429 : 67,89 '' + IL_003c: ldarg.0 + IL_003d: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0042: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0047: stloc.2 + .try + { + IL_0048: br.s IL_005b + + .line 429,429 : 30,63 '' + IL_004a: ldloca.s CS$5$0001 + IL_004c: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0051: stloc.0 + .line 430,430 : 25,80 '' + IL_0052: ldarg.0 + IL_0053: ldloc.0 + IL_0054: ldc.i4.0 + IL_0055: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_005a: nop + .line 429,429 : 64,66 '' + IL_005b: ldloca.s CS$5$0001 + IL_005d: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0062: stloc.1 + IL_0063: ldloc.1 + IL_0064: brtrue.s IL_004a + + IL_0066: leave.s IL_0077 + + } // end .try + finally + { + IL_0068: ldloca.s CS$5$0001 + IL_006a: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0070: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0075: nop + IL_0076: endfinally + } // end handler + IL_0077: nop + .line 431,431 : 17,18 '' + IL_0078: nop + .line 432,432 : 13,14 '' + IL_0079: nop + IL_007a: leave.s IL_009c + + .line 434,434 : 13,14 '' + } // end .try + finally + { + IL_007c: nop + .line 435,435 : 17,73 '' + IL_007d: ldarg.0 + IL_007e: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0083: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0088: nop + .line 436,436 : 17,118 '' + IL_0089: ldc.i4.0 + IL_008a: ldstr "Hyphen::PluginManagerBase" + IL_008f: ldstr "Plugin Manager was shut down; all managed plugins " + + "were disabled" + IL_0094: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0099: nop + .line 437,437 : 13,14 '' + IL_009a: nop + IL_009b: endfinally + } // end handler + IL_009c: nop + .line 438,438 : 9,10 '' + IL_009d: ret + } // end of method PluginManagerBase::Shutdown + + .method famorassem hidebysig newslot virtual + instance class Virtuoso.Miranda.Plugins.PluginDescriptor + LoadPlugin(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin, + bool accountDescriptor) cil managed + { + // Code size 30 (0x1e) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000, + [2] bool CS$4$0001) + .line 441,441 : 9,10 '' + IL_0000: nop + .line 442,442 : 13,74 '' + IL_0001: ldarg.1 + IL_0002: call class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.PluginDescriptor::SetUp(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0007: stloc.0 + .line 444,444 : 13,35 '' + IL_0008: ldarg.2 + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: stloc.2 + IL_000d: ldloc.2 + IL_000e: brtrue.s IL_0018 + + .line 445,445 : 17,53 '' + IL_0010: ldarg.0 + IL_0011: ldloc.0 + IL_0012: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::AccountPluginDescriptor(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0017: nop + .line 447,447 : 13,31 '' + IL_0018: ldloc.0 + IL_0019: stloc.1 + IL_001a: br.s IL_001c + + .line 448,448 : 9,10 '' + IL_001c: ldloc.1 + IL_001d: ret + } // end of method PluginManagerBase::LoadPlugin + + .method public hidebysig newslot virtual + instance void HandleException(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) cil managed + { + // Code size 97 (0x61) + .maxstack 7 + .locals init ([0] bool CS$4$0000) + .line 451,451 : 9,10 '' + IL_0000: nop + .line 452,452 : 13,36 '' + IL_0001: ldarg.2 + IL_0002: ldnull + IL_0003: ceq + IL_0005: stloc.0 + IL_0006: ldloc.0 + IL_0007: brtrue.s IL_0051 + + .line 453,453 : 13,14 '' + IL_0009: nop + .line 454,454 : 17,247 '' + IL_000a: ldc.i4.1 + IL_000b: ldarg.1 + IL_000c: ldarg.2 + IL_000d: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0012: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0017: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable2_Text_PluginError() + IL_001c: call string [mscorlib]System.Environment::get_NewLine() + IL_0021: ldarg.2 + IL_0022: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0027: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_002c: ldarg.1 + IL_002d: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0032: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_0037: ldc.i4.1 + IL_0038: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_003d: ceq + IL_003f: ldc.i4.0 + IL_0040: ceq + IL_0042: stloc.0 + IL_0043: ldloc.0 + IL_0044: brtrue.s IL_004e + + .line 455,455 : 21,74 '' + IL_0046: ldarg.2 + IL_0047: ldc.i4.2 + IL_0048: callvirt instance void Virtuoso.Miranda.Plugins.PluginDescriptor::SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_004d: nop + .line 456,456 : 13,14 '' + IL_004e: nop + IL_004f: br.s IL_0060 + + .line 458,458 : 13,14 '' + IL_0051: nop + .line 459,459 : 17,81 '' + IL_0052: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create() + IL_0057: ldarg.1 + IL_0058: ldarg.2 + IL_0059: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_005e: nop + .line 460,460 : 13,14 '' + IL_005f: nop + .line 461,461 : 9,10 '' + IL_0060: ret + } // end of method PluginManagerBase::HandleException + + .method private hidebysig static class [mscorlib]System.Type + 'b__5'(class Virtuoso.Miranda.Plugins.ExposingPluginAttribute attrib) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Type CS$1$0000) + .line 172,172 : 17,18 '' + IL_0000: nop + .line 173,173 : 21,46 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.ExposingPluginAttribute::get_PluginType() + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginManagerBase::'b__5' + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 31 (0x1f) + .maxstack 8 + .line 43,43 : 9,84 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.MirandaPlugin + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::PluginType + .line 44,44 : 9,111 '' + IL_000f: ldtoken Virtuoso.Miranda.Plugins.ExposingPluginAttribute + IL_0014: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0019: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::ExposingPluginAttributeType + IL_001e: ret + } // end of method PluginManagerBase::.cctor + + .event [mscorlib]System.EventHandler PrimaryPluginManagerInitialized + { + .removeon void Virtuoso.Miranda.Plugins.PluginManagerBase::remove_PrimaryPluginManagerInitialized(class [mscorlib]System.EventHandler) + .addon void Virtuoso.Miranda.Plugins.PluginManagerBase::add_PrimaryPluginManagerInitialized(class [mscorlib]System.EventHandler) + } // end of event PluginManagerBase::PrimaryPluginManagerInitialized + .event [mscorlib]System.EventHandler FusionCompleted + { + .addon instance void Virtuoso.Miranda.Plugins.PluginManagerBase::add_FusionCompleted(class [mscorlib]System.EventHandler) + .removeon instance void Virtuoso.Miranda.Plugins.PluginManagerBase::remove_FusionCompleted(class [mscorlib]System.EventHandler) + } // end of event PluginManagerBase::FusionCompleted + .event class [mscorlib]System.EventHandler`1 PluginStateChange + { + .addon instance void Virtuoso.Miranda.Plugins.PluginManagerBase::add_PluginStateChange(class [mscorlib]System.EventHandler`1) + .removeon instance void Virtuoso.Miranda.Plugins.PluginManagerBase::remove_PluginStateChange(class [mscorlib]System.EventHandler`1) + } // end of event PluginManagerBase::PluginStateChange + .property instance bool Initialized() + { + .get instance bool Virtuoso.Miranda.Plugins.PluginManagerBase::get_Initialized() + } // end of property PluginManagerBase::Initialized + .property instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + PluginDescriptors() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_PluginDescriptors() + } // end of property PluginManagerBase::PluginDescriptors + .property instance class [mscorlib]System.AppDomain + LivingDomain() + { + .get instance class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.PluginManagerBase::get_LivingDomain() + } // end of property PluginManagerBase::LivingDomain + .property instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection + Plugins() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + } // end of property PluginManagerBase::Plugins + .property instance class Virtuoso.Hyphen.FusionContext + FusionContext() + { + .get instance class Virtuoso.Hyphen.FusionContext Virtuoso.Miranda.Plugins.PluginManagerBase::get_FusionContext() + } // end of property PluginManagerBase::FusionContext +} // end of class Virtuoso.Miranda.Plugins.PluginManagerBase + +.class public auto ansi sealed beforefieldinit Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute + extends [mscorlib]System.Attribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 40 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ..@.....T..Allow + 4D 75 6C 74 69 70 6C 65 00 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 01 ) // rited. + .field private initonly string exportName + .method public hidebysig specialname instance string + get_ExportName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 32,32 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Custom\\CustomApiExportHandlerAttribute.cs' + IL_0000: nop + .line 32,32 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::exportName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 32,32 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CustomApiExportHandlerAttribute::get_ExportName + + .method public hidebysig specialname rtspecialname + instance void .ctor(string exportName) cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 39,39 : 9,66 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + IL_0006: nop + .line 40,40 : 9,10 '' + IL_0007: nop + .line 41,41 : 13,36 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 41,41 : 37,83 '' + IL_0013: ldstr "exportName" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 42,42 : 13,42 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld string Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::exportName + .line 43,43 : 9,10 '' + IL_0025: nop + IL_0026: ret + } // end of method CustomApiExportHandlerAttribute::.ctor + + .property instance string ExportName() + { + .get instance string Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::get_ExportName() + } // end of property CustomApiExportHandlerAttribute::ExportName +} // end of class Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + extends [mscorlib]System.MulticastDelegate +{ + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CustomApiExportCallback::.ctor + + .method public hidebysig newslot virtual + instance object Invoke(object[] args) runtime managed + { + } // end of method CustomApiExportCallback::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(object[] args, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CustomApiExportCallback::BeginInvoke + + .method public hidebysig newslot virtual + instance object EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CustomApiExportCallback::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + +.class public auto ansi sealed beforefieldinit Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor + extends [mscorlib]System.Object +{ + .field private initonly string exportName + .field private initonly class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback callback + .method public hidebysig specialname instance string + get_ExportName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 33,33 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Custom\\CustomApiExportDescriptor.cs' + IL_0000: nop + .line 33,33 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::exportName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 33,33 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CustomApiExportDescriptor::get_ExportName + + .method public hidebysig specialname instance class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + get_Callback() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback CS$1$0000) + .line 39,39 : 17,18 '' + IL_0000: nop + .line 39,39 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::callback + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 39,39 : 36,37 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CustomApiExportDescriptor::get_Callback + + .method public hidebysig specialname rtspecialname + instance void .ctor(string exportName, + class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback callback) cil managed + { + // Code size 70 (0x46) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 46,46 : 9,94 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 47,47 : 9,10 '' + IL_0007: nop + .line 48,48 : 13,50 '' + IL_0008: ldarg.1 + IL_0009: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000e: ldc.i4.0 + IL_000f: ceq + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0020 + + .line 48,48 : 51,97 '' + IL_0015: ldstr "exportName" + IL_001a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001f: throw + + .line 49,49 : 13,34 '' + IL_0020: ldarg.2 + IL_0021: ldnull + IL_0022: ceq + IL_0024: ldc.i4.0 + IL_0025: ceq + IL_0027: stloc.0 + IL_0028: ldloc.0 + IL_0029: brtrue.s IL_0036 + + .line 49,49 : 35,79 '' + IL_002b: ldstr "callback" + IL_0030: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0035: throw + + .line 51,51 : 13,42 '' + IL_0036: ldarg.0 + IL_0037: ldarg.1 + IL_0038: stfld string Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::exportName + .line 52,52 : 13,38 '' + IL_003d: ldarg.0 + IL_003e: ldarg.2 + IL_003f: stfld class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::callback + .line 53,53 : 9,10 '' + IL_0044: nop + IL_0045: ret + } // end of method CustomApiExportDescriptor::.ctor + + .method assembly hidebysig instance !!T + Execute(object[] args) cil managed + { + .param [1] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 45 (0x2d) + .maxstack 2 + .locals init ([0] object result, + [1] !!T CS$1$0000, + [2] bool CS$4$0001, + [3] !!T CS$0$0002) + .line 60,60 : 9,10 '' + IL_0000: nop + .line 61,61 : 13,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::callback + IL_0007: ldarg.1 + IL_0008: callvirt instance object Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback::Invoke(object[]) + IL_000d: stloc.0 + .line 63,63 : 13,32 '' + IL_000e: ldloc.0 + IL_000f: ldnull + IL_0010: ceq + IL_0012: stloc.2 + IL_0013: ldloc.2 + IL_0014: brtrue.s IL_001f + + .line 64,64 : 17,34 '' + IL_0016: ldloc.0 + IL_0017: unbox.any !!T + IL_001c: stloc.1 + IL_001d: br.s IL_002b + + .line 66,66 : 17,38 '' + IL_001f: ldloca.s CS$0$0002 + IL_0021: initobj !!T + IL_0027: ldloc.3 + IL_0028: stloc.1 + IL_0029: br.s IL_002b + + .line 67,67 : 9,10 '' + IL_002b: ldloc.1 + IL_002c: ret + } // end of method CustomApiExportDescriptor::Execute + + .property instance string ExportName() + { + .get instance string Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::get_ExportName() + } // end of property CustomApiExportDescriptor::ExportName + .property instance class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + Callback() + { + .get instance class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::get_Callback() + } // end of property CustomApiExportDescriptor::Callback +} // end of class Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner +{ + .method public hidebysig newslot specialname abstract virtual + instance string get_Name() cil managed + { + } // end of method ISettingOwner::get_Name + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + } // end of property ISettingOwner::Name +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.MirandaPlugin + extends Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + implements Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner +{ + .class auto ansi sealed nested assembly beforefieldinit Hyphen + extends Virtuoso.Miranda.Plugins.MirandaPlugin + implements Virtuoso.Miranda.Plugins.IExceptionHandler, + Virtuoso.Miranda.Plugins.IExceptionReporter + { + .field private static initonly class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen singleton + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 43,43 : 13,29 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\MirandaPlugin.EmptyPlugin.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::.ctor() + IL_0006: nop + .line 44,44 : 13,14 '' + IL_0007: nop + .line 45,45 : 17,46 '' + IL_0008: ldarg.0 + IL_0009: call class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.PluginDescriptor::SetUp(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_000e: pop + .line 46,46 : 13,14 '' + IL_000f: nop + IL_0010: ret + } // end of method Hyphen::.ctor + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen + get_Singleton() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen CS$1$0000) + .line 55,55 : 17,18 '' + IL_0000: nop + .line 56,56 : 21,38 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::singleton + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 57,57 : 17,18 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method Hyphen::get_Singleton + + .method public hidebysig specialname virtual + instance string get_Name() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 62,62 : 21,22 '' + IL_0000: nop + .line 62,62 : 23,39 '' + IL_0001: ldstr "Hyphen" + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 62,62 : 40,41 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method Hyphen::get_Name + + .method public hidebysig specialname virtual + instance string get_Author() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 67,67 : 21,22 '' + IL_0000: nop + .line 67,67 : 23,41 '' + IL_0001: ldstr "virtuoso" + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 67,67 : 42,43 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method Hyphen::get_Author + + .method public hidebysig specialname virtual + instance string get_Description() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 72,72 : 21,22 '' + IL_0000: nop + .line 72,72 : 23,43 '' + IL_0001: ldsfld string [mscorlib]System.String::Empty + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 72,72 : 44,45 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method Hyphen::get_Description + + .method public hidebysig specialname virtual + instance class [System]System.Uri + get_HomePage() cil managed + { + // Code size 16 (0x10) + .maxstack 1 + .locals init ([0] class [System]System.Uri CS$1$0000) + .line 77,77 : 21,22 '' + IL_0000: nop + .line 77,77 : 23,61 '' + IL_0001: ldstr "http://www.none.com" + IL_0006: newobj instance void [System]System.Uri::.ctor(string) + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + .line 77,77 : 62,63 '' + IL_000e: ldloc.0 + IL_000f: ret + } // end of method Hyphen::get_HomePage + + .method public hidebysig specialname virtual + instance class [mscorlib]System.Version + get_Version() cil managed + { + // Code size 21 (0x15) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 82,82 : 21,22 '' + IL_0000: nop + .line 82,82 : 23,80 '' + IL_0001: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetExecutingAssembly() + IL_0006: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_000b: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_0010: stloc.0 + IL_0011: br.s IL_0013 + + .line 82,82 : 81,82 '' + IL_0013: ldloc.0 + IL_0014: ret + } // end of method Hyphen::get_Version + + .method public hidebysig specialname virtual + instance bool get_HasOptions() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 87,87 : 21,22 '' + IL_0000: nop + .line 87,87 : 23,36 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 87,87 : 37,38 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method Hyphen::get_HasOptions + + .method public hidebysig newslot virtual final + instance void HandleException(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 95,95 : 13,14 '' + IL_0000: nop + .line 96,96 : 17,99 '' + IL_0001: ldarg.1 + IL_0002: ldarg.0 + IL_0003: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_HyphenCrashed() + IL_0008: ldc.i4.0 + IL_0009: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_000e: pop + .line 97,97 : 13,14 '' + IL_000f: ret + } // end of method Hyphen::HandleException + + .method private hidebysig newslot virtual final + instance void Virtuoso.Miranda.Plugins.IExceptionReporter.ReportException(class [mscorlib]System.Exception e) cil managed + { + .override Virtuoso.Miranda.Plugins.IExceptionReporter::ReportException + // Code size 49 (0x31) + .maxstack 4 + .locals init ([0] class [System]System.Diagnostics.ProcessStartInfo startInfo) + .line 104,104 : 13,14 '' + IL_0000: nop + .line 105,105 : 17,199 '' + IL_0001: ldstr "mailto:{0}\?subject={1}&body={2}" + IL_0006: ldstr "deml.tomas@seznam.cz" + IL_000b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_HyphenCrashed() + IL_0010: ldarg.1 + IL_0011: callvirt instance string [mscorlib]System.Object::ToString() + IL_0016: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_001b: newobj instance void [System]System.Diagnostics.ProcessStartInfo::.ctor(string) + IL_0020: stloc.0 + .line 106,106 : 17,50 '' + IL_0021: ldloc.0 + IL_0022: ldc.i4.1 + IL_0023: callvirt instance void [System]System.Diagnostics.ProcessStartInfo::set_UseShellExecute(bool) + IL_0028: nop + .line 108,108 : 17,42 '' + IL_0029: ldloc.0 + IL_002a: call class [System]System.Diagnostics.Process [System]System.Diagnostics.Process::Start(class [System]System.Diagnostics.ProcessStartInfo) + IL_002f: pop + .line 109,109 : 13,14 '' + IL_0030: ret + } // end of method Hyphen::Virtuoso.Miranda.Plugins.IExceptionReporter.ReportException + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 37,37 : 13,69 '' + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::.ctor() + IL_0005: stsfld class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::singleton + IL_000a: ret + } // end of method Hyphen::.cctor + + .property class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen + Singleton() + { + .get class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + } // end of property Hyphen::Singleton + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Name() + } // end of property Hyphen::Name + .property instance string Author() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Author() + } // end of property Hyphen::Author + .property instance string Description() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Description() + } // end of property Hyphen::Description + .property instance class [System]System.Uri + HomePage() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_HomePage() + } // end of property Hyphen::HomePage + .property instance class [mscorlib]System.Version + Version() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Version() + } // end of property Hyphen::Version + .property instance bool HasOptions() + { + .get instance bool Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_HasOptions() + } // end of property Hyphen::HasOptions + } // end of class Hyphen + + .field private class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection menuItemsCollection + .field private class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection menuItemsReadOnly + .field private class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 38 (0x26) + .maxstack 8 + .line 49,49 : 9,34 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\MirandaPlugin.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor() + IL_0006: nop + .line 50,50 : 9,10 '' + IL_0007: nop + .line 51,51 : 13,71 '' + IL_0008: ldarg.0 + IL_0009: newobj instance void Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection::.ctor() + IL_000e: stfld class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::menuItemsCollection + .line 52,52 : 13,96 '' + IL_0013: ldarg.0 + IL_0014: ldarg.0 + IL_0015: ldfld class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::menuItemsCollection + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection::.ctor(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection) + IL_001f: stfld class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection Virtuoso.Miranda.Plugins.MirandaPlugin::menuItemsReadOnly + .line 53,53 : 9,10 '' + IL_0024: nop + IL_0025: ret + } // end of method MirandaPlugin::.ctor + + .method public hidebysig newslot specialname abstract virtual + instance string get_Name() cil managed + { + } // end of method MirandaPlugin::get_Name + + .method public hidebysig newslot specialname abstract virtual + instance string get_Author() cil managed + { + } // end of method MirandaPlugin::get_Author + + .method public hidebysig newslot specialname abstract virtual + instance string get_Description() cil managed + { + } // end of method MirandaPlugin::get_Description + + .method public hidebysig newslot specialname abstract virtual + instance class [System]System.Uri + get_HomePage() cil managed + { + } // end of method MirandaPlugin::get_HomePage + + .method public hidebysig newslot specialname abstract virtual + instance class [mscorlib]System.Version + get_Version() cil managed + { + } // end of method MirandaPlugin::get_Version + + .method public hidebysig newslot specialname abstract virtual + instance bool get_HasOptions() cil managed + { + } // end of method MirandaPlugin::get_HasOptions + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection + get_MenuItems() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection CS$1$0000) + .line 73,73 : 17,18 '' + IL_0000: nop + .line 73,73 : 19,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection Virtuoso.Miranda.Plugins.MirandaPlugin::menuItemsReadOnly + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 73,73 : 45,46 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaPlugin::get_MenuItems + + .method public hidebysig specialname instance bool + get_Initialized() cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 79,79 : 13,14 '' + IL_0000: nop + .line 80,80 : 17,43 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::descriptor + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 81,81 : 13,14 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method MirandaPlugin::get_Initialized + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection + get_MenuItemsCollection() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection CS$1$0000) + .line 87,87 : 13,14 '' + IL_0000: nop + .line 88,88 : 17,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::menuItemsCollection + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 89,89 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaPlugin::get_MenuItemsCollection + + .method famorassem hidebysig specialname + instance class Virtuoso.Miranda.Plugins.PluginDescriptor + get_Descriptor() cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000, + [1] bool CS$4$0001) + .line 95,95 : 13,14 '' + IL_0000: nop + .line 96,96 : 17,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::descriptor + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.1 + IL_000e: ldloc.1 + IL_000f: brtrue.s IL_001c + + .line 97,97 : 21,106 '' + IL_0011: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_0016: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001b: throw + + .line 99,99 : 17,35 '' + IL_001c: ldarg.0 + IL_001d: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::descriptor + IL_0022: stloc.0 + IL_0023: br.s IL_0025 + + .line 100,100 : 13,14 '' + IL_0025: ldloc.0 + IL_0026: ret + } // end of method MirandaPlugin::get_Descriptor + + .method assembly hidebysig specialname + instance void set_Descriptor(class Virtuoso.Miranda.Plugins.PluginDescriptor 'value') cil managed + { + // Code size 33 (0x21) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 102,102 : 13,14 '' + IL_0000: nop + .line 103,103 : 17,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::descriptor + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0019 + + .line 104,104 : 21,110 '' + IL_000e: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginAlreadyInitialized() + IL_0013: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0018: throw + + .line 106,106 : 17,36 '' + IL_0019: ldarg.0 + IL_001a: ldarg.1 + IL_001b: stfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::descriptor + .line 107,107 : 13,14 '' + IL_0020: ret + } // end of method MirandaPlugin::set_Descriptor + + .method assembly hidebysig specialname + instance string get_UniqueName() cil managed + { + // Code size 34 (0x22) + .maxstack 4 + .locals init ([0] string CS$1$0000) + .line 113,113 : 13,14 '' + IL_0000: nop + .line 114,114 : 17,76 '' + IL_0001: ldstr "{0}.{1}.{2}" + IL_0006: ldarg.0 + IL_0007: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Author() + IL_000c: ldarg.0 + IL_000d: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_0012: ldarg.0 + IL_0013: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + IL_0018: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_001d: stloc.0 + IL_001e: br.s IL_0020 + + .line 115,115 : 13,14 '' + IL_0020: ldloc.0 + IL_0021: ret + } // end of method MirandaPlugin::get_UniqueName + + .method public hidebysig virtual final + instance int32 GetHashCode() cil managed + { + // Code size 22 (0x16) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 123,123 : 9,10 '' + IL_0000: nop + .line 124,124 : 13,53 '' + IL_0001: ldarg.0 + IL_0002: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0007: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_000c: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 125,125 : 9,10 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method MirandaPlugin::GetHashCode + + .method public hidebysig virtual final + instance bool Equals(object obj) cil managed + { + // Code size 57 (0x39) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin other, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 128,128 : 9,10 '' + IL_0000: nop + .line 129,129 : 13,29 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0010 + + .line 129,129 : 30,43 '' + IL_000c: ldc.i4.0 + IL_000d: stloc.1 + IL_000e: br.s IL_0037 + + .line 130,130 : 13,56 '' + IL_0010: ldarg.1 + IL_0011: isinst Virtuoso.Miranda.Plugins.MirandaPlugin + IL_0016: stloc.0 + .line 132,132 : 13,31 '' + IL_0017: ldloc.0 + IL_0018: ldnull + IL_0019: ceq + IL_001b: ldc.i4.0 + IL_001c: ceq + IL_001e: stloc.2 + IL_001f: ldloc.2 + IL_0020: brtrue.s IL_0026 + + .line 132,132 : 32,45 '' + IL_0022: ldc.i4.0 + IL_0023: stloc.1 + IL_0024: br.s IL_0037 + + .line 133,133 : 13,57 '' + IL_0026: ldarg.0 + IL_0027: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_002c: ldloc.0 + IL_002d: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0032: ceq + IL_0034: stloc.1 + IL_0035: br.s IL_0037 + + .line 134,134 : 9,10 '' + IL_0037: ldloc.1 + IL_0038: ret + } // end of method MirandaPlugin::Equals + + .method public hidebysig virtual instance string + ToString() cil managed + { + // Code size 34 (0x22) + .maxstack 4 + .locals init ([0] string CS$1$0000) + .line 137,137 : 9,10 '' + IL_0000: nop + .line 138,138 : 13,77 '' + IL_0001: ldstr "{0} by {1}, v{2}" + IL_0006: ldarg.0 + IL_0007: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_000c: ldarg.0 + IL_000d: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Author() + IL_0012: ldarg.0 + IL_0013: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + IL_0018: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_001d: stloc.0 + IL_001e: br.s IL_0020 + + .line 139,139 : 9,10 '' + IL_0020: ldloc.0 + IL_0021: ret + } // end of method MirandaPlugin::ToString + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.IExceptionHandler + GetExceptionHandler(class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) cil managed + { + // Code size 97 (0x61) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.IExceptionHandler CS$1$0000, + [1] bool CS$4$0001) + .line 142,142 : 9,10 '' + IL_0000: nop + .line 143,143 : 13,36 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 144,144 : 17,63 '' + IL_000c: ldstr "descriptor" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 147,147 : 13,56 '' + IL_0017: ldarg.0 + IL_0018: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_001d: isinst Virtuoso.Miranda.Plugins.IExceptionHandler + IL_0022: ldnull + IL_0023: cgt.un + IL_0025: ldc.i4.0 + IL_0026: ceq + IL_0028: stloc.1 + IL_0029: ldloc.1 + IL_002a: brtrue.s IL_003a + + .line 148,148 : 17,61 '' + IL_002c: ldarg.0 + IL_002d: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0032: castclass Virtuoso.Miranda.Plugins.IExceptionHandler + IL_0037: stloc.0 + IL_0038: br.s IL_005f + + .line 150,150 : 18,47 '' + IL_003a: ldarg.0 + IL_003b: callvirt instance bool Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsStandalone() + IL_0040: stloc.1 + IL_0041: ldloc.1 + IL_0042: brtrue.s IL_0051 + + .line 151,151 : 17,61 '' + IL_0044: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0049: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_004e: stloc.0 + IL_004f: br.s IL_005f + + .line 154,154 : 17,74 '' + IL_0051: ldarg.0 + IL_0052: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0057: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_005c: stloc.0 + IL_005d: br.s IL_005f + + .line 155,155 : 9,10 '' + IL_005f: ldloc.0 + IL_0060: ret + } // end of method MirandaPlugin::GetExceptionHandler + + .method assembly hidebysig newslot strict virtual + instance void AfterMenuItemsPopulationInternal(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection items) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 161,161 : 101,102 '' + IL_0000: nop + .line 161,161 : 103,135 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterMenuItemsPopulation(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection) + IL_0008: nop + .line 161,161 : 136,137 '' + IL_0009: ret + } // end of method MirandaPlugin::AfterMenuItemsPopulationInternal + + .method family hidebysig newslot virtual + instance void AfterMenuItemsPopulation(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection items) cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 162,162 : 94,95 '' + IL_0000: nop + .line 162,162 : 96,97 '' + IL_0001: ret + } // end of method MirandaPlugin::AfterMenuItemsPopulation + + .method assembly hidebysig newslot strict virtual + instance void BeforeMirandaShutdownInternal() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 164,164 : 63,64 '' + IL_0000: nop + .line 164,164 : 65,89 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforeMirandaShutdown() + IL_0007: nop + .line 164,164 : 90,91 '' + IL_0008: ret + } // end of method MirandaPlugin::BeforeMirandaShutdownInternal + + .method family hidebysig newslot virtual + instance void BeforeMirandaShutdown() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 165,165 : 56,57 '' + IL_0000: nop + .line 165,165 : 58,59 '' + IL_0001: ret + } // end of method MirandaPlugin::BeforeMirandaShutdown + + .method assembly hidebysig newslot strict virtual + instance void BeforePluginDisableInternal() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 167,167 : 61,62 '' + IL_0000: nop + .line 167,167 : 63,85 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforePluginDisable() + IL_0007: nop + .line 167,167 : 86,87 '' + IL_0008: ret + } // end of method MirandaPlugin::BeforePluginDisableInternal + + .method family hidebysig newslot virtual + instance void BeforePluginDisable() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 168,168 : 54,55 '' + IL_0000: nop + .line 168,168 : 56,57 '' + IL_0001: ret + } // end of method MirandaPlugin::BeforePluginDisable + + .method assembly hidebysig newslot strict virtual + instance void AfterPluginEnableInternal() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 170,170 : 59,60 '' + IL_0000: nop + .line 170,170 : 61,81 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginEnable() + IL_0007: nop + .line 170,170 : 82,83 '' + IL_0008: ret + } // end of method MirandaPlugin::AfterPluginEnableInternal + + .method family hidebysig newslot virtual + instance void AfterPluginEnable() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 171,171 : 52,53 '' + IL_0000: nop + .line 171,171 : 54,55 '' + IL_0001: ret + } // end of method MirandaPlugin::AfterPluginEnable + + .method assembly hidebysig newslot strict virtual + instance void AfterPluginInitializationInternal() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 173,173 : 67,68 '' + IL_0000: nop + .line 173,173 : 69,97 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginInitialization() + IL_0007: nop + .line 173,173 : 98,99 '' + IL_0008: ret + } // end of method MirandaPlugin::AfterPluginInitializationInternal + + .method family hidebysig newslot virtual + instance void AfterPluginInitialization() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 174,174 : 60,61 '' + IL_0000: nop + .line 174,174 : 62,63 '' + IL_0001: ret + } // end of method MirandaPlugin::AfterPluginInitialization + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + } // end of property MirandaPlugin::Name + .property instance string Author() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Author() + } // end of property MirandaPlugin::Author + .property instance string Description() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Description() + } // end of property MirandaPlugin::Description + .property instance class [System]System.Uri + HomePage() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + } // end of property MirandaPlugin::HomePage + .property instance class [mscorlib]System.Version + Version() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + } // end of property MirandaPlugin::Version + .property instance bool HasOptions() + { + .get instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_HasOptions() + } // end of property MirandaPlugin::HasOptions + .property instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection + MenuItems() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItems() + } // end of property MirandaPlugin::MenuItems + .property instance bool Initialized() + { + .get instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized() + } // end of property MirandaPlugin::Initialized + .property instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection + MenuItemsCollection() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection() + } // end of property MirandaPlugin::MenuItemsCollection + .property instance class Virtuoso.Miranda.Plugins.PluginDescriptor + Descriptor() + { + .set instance void Virtuoso.Miranda.Plugins.MirandaPlugin::set_Descriptor(class Virtuoso.Miranda.Plugins.PluginDescriptor) + .get instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + } // end of property MirandaPlugin::Descriptor + .property instance string UniqueName() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_UniqueName() + } // end of property MirandaPlugin::UniqueName +} // end of class Virtuoso.Miranda.Plugins.MirandaPlugin + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.IExceptionReporter +{ + .method public hidebysig newslot abstract virtual + instance void ReportException(class [mscorlib]System.Exception e) cil managed + { + } // end of method IExceptionReporter::ReportException + +} // end of class Virtuoso.Miranda.Plugins.IExceptionReporter + +.class public abstract auto ansi beforefieldinit Virtuoso.Hyphen.Mini.StandalonePlugin + extends Virtuoso.Miranda.Plugins.MirandaPlugin +{ + .field static assembly initonly class [mscorlib]System.Type PluginType + .field private initonly class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection customApiHandlers + .field private class Virtuoso.Hyphen.Mini.Module module + .field private bool hasCustomPluginInterfaces + .field private bool hasCustomPluginInfo + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 35 (0x23) + .maxstack 8 + .line 78,78 : 9,55 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\StandalonePlugin.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: stfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInterfaces + .line 84,84 : 9,49 '' + IL_0007: ldarg.0 + IL_0008: ldc.i4.1 + IL_0009: stfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInfo + .line 46,46 : 9,37 '' + IL_000e: ldarg.0 + IL_000f: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::.ctor() + IL_0014: nop + .line 47,47 : 9,10 '' + IL_0015: nop + .line 48,48 : 13,75 '' + IL_0016: ldarg.0 + IL_0017: newobj instance void Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection::.ctor() + IL_001c: stfld class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection Virtuoso.Hyphen.Mini.StandalonePlugin::customApiHandlers + .line 49,49 : 9,10 '' + IL_0021: nop + IL_0022: ret + } // end of method StandalonePlugin::.ctor + + .method famorassem hidebysig specialname + instance class Virtuoso.Hyphen.Mini.Module + get_Module() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Hyphen.Mini.Module CS$1$0000) + .line 57,57 : 17,18 '' + IL_0000: nop + .line 57,57 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.Mini.Module Virtuoso.Hyphen.Mini.StandalonePlugin::module + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 57,57 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method StandalonePlugin::get_Module + + .method assembly hidebysig specialname + instance void set_Module(class Virtuoso.Hyphen.Mini.Module 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 58,58 : 26,27 '' + IL_0000: nop + .line 58,58 : 28,48 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class Virtuoso.Hyphen.Mini.Module Virtuoso.Hyphen.Mini.StandalonePlugin::module + .line 58,58 : 49,50 '' + IL_0008: ret + } // end of method StandalonePlugin::set_Module + + .method public hidebysig newslot specialname abstract virtual + instance string get_Copyright() cil managed + { + } // end of method StandalonePlugin::get_Copyright + + .method public hidebysig newslot specialname abstract virtual + instance string get_AuthorEmail() cil managed + { + } // end of method StandalonePlugin::get_AuthorEmail + + .method public hidebysig newslot specialname virtual + instance valuetype Virtuoso.Hyphen.Native.PluginFlags + get_Flags() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Hyphen.Native.PluginFlags CS$1$0000) + .line 65,65 : 48,49 '' + IL_0000: nop + .line 65,65 : 50,82 '' + IL_0001: ldc.i4.1 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 65,65 : 83,84 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method StandalonePlugin::get_Flags + + .method public hidebysig newslot specialname abstract virtual + instance int32 get_ReplacesDefaultModule() cil managed + { + } // end of method StandalonePlugin::get_ReplacesDefaultModule + + .method public hidebysig newslot specialname abstract virtual + instance valuetype [mscorlib]System.Guid + get_UUID() cil managed + { + } // end of method StandalonePlugin::get_UUID + + .method public hidebysig newslot specialname abstract virtual + instance valuetype [mscorlib]System.Guid[] + get_PluginInterfaces() cil managed + { + } // end of method StandalonePlugin::get_PluginInterfaces + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection + get_CustomApiHandlers() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection CS$1$0000) + .line 75,75 : 17,18 '' + IL_0000: nop + .line 75,75 : 19,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection Virtuoso.Hyphen.Mini.StandalonePlugin::customApiHandlers + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 75,75 : 45,46 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method StandalonePlugin::get_CustomApiHandlers + + .method assembly hidebysig specialname + instance bool get_HasCustomPluginInterfaces() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 81,81 : 17,18 '' + IL_0000: nop + .line 81,81 : 19,52 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInterfaces + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 81,81 : 53,54 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method StandalonePlugin::get_HasCustomPluginInterfaces + + .method assembly hidebysig specialname + instance bool get_HasCustomPluginInfo() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 87,87 : 17,18 '' + IL_0000: nop + .line 87,87 : 19,46 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInfo + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 87,87 : 47,48 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method StandalonePlugin::get_HasCustomPluginInfo + + .method assembly hidebysig instance int32 + BeforeMirandaShutdownTriggerService(native uint wParam, + native int lParam) cil managed + { + .custom instance void Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::.ctor(string) = ( 01 00 1C 4D 69 72 61 6E 64 61 2F 53 79 73 74 65 // ...Miranda/Syste + 6D 2F 4F 6B 54 6F 45 78 69 74 45 76 65 6E 74 00 // m/OkToExitEvent. + 00 ) + // Code size 26 (0x1a) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 98,98 : 9,10 '' + IL_0000: nop + .line 99,99 : 13,37 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforeMirandaShutdown() + IL_0007: nop + .line 100,100 : 13,29 '' + IL_0008: ldarg.0 + IL_0009: ldfld class Virtuoso.Hyphen.Mini.Module Virtuoso.Hyphen.Mini.StandalonePlugin::module + IL_000e: callvirt instance int32 Virtuoso.Hyphen.Mini.Module::Unload() + IL_0013: pop + .line 102,102 : 13,22 '' + IL_0014: ldc.i4.0 + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 103,103 : 9,10 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method StandalonePlugin::BeforeMirandaShutdownTriggerService + + .method famorassem hidebysig newslot virtual + instance native int MirandaPluginInfo(uint32 version, + bool ex) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 234 (0xea) + .maxstack 3 + .locals init ([0] class Virtuoso.Hyphen.Native.PLUGININFO info, + [1] native int pInfo, + [2] native int CS$1$0000, + [3] bool CS$4$0001) + .line 107,107 : 9,10 '' + IL_0000: nop + .line 108,108 : 13,41 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: stfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInfo + .line 109,109 : 13,74 '' + IL_0008: ldarg.2 + IL_0009: brtrue.s IL_0012 + + IL_000b: newobj instance void Virtuoso.Hyphen.Native.PLUGININFO::.ctor() + IL_0010: br.s IL_0017 + + IL_0012: newobj instance void Virtuoso.Hyphen.Native.PLUGININFOEX::.ctor() + IL_0017: nop + IL_0018: stloc.0 + .line 111,111 : 13,56 '' + IL_0019: ldloc.0 + IL_001a: ldloc.0 + IL_001b: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0020: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0025: stfld int32 Virtuoso.Hyphen.Native.PLUGININFO::Size + .line 112,112 : 13,34 '' + IL_002a: ldloc.0 + IL_002b: ldarg.0 + IL_002c: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Author() + IL_0031: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Author + .line 113,113 : 13,44 '' + IL_0036: ldloc.0 + IL_0037: ldarg.0 + IL_0038: callvirt instance string Virtuoso.Hyphen.Mini.StandalonePlugin::get_AuthorEmail() + IL_003d: stfld string Virtuoso.Hyphen.Native.PLUGININFO::AuthorEmail + .line 114,114 : 13,40 '' + IL_0042: ldloc.0 + IL_0043: ldarg.0 + IL_0044: callvirt instance string Virtuoso.Hyphen.Mini.StandalonePlugin::get_Copyright() + IL_0049: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Copyright + .line 115,115 : 13,44 '' + IL_004e: ldloc.0 + IL_004f: ldarg.0 + IL_0050: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Description() + IL_0055: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Description + .line 116,116 : 13,83 '' + IL_005a: ldloc.0 + IL_005b: ldarg.0 + IL_005c: callvirt instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + IL_0061: ldnull + IL_0062: call bool [System]System.Uri::op_Equality(class [System]System.Uri, + class [System]System.Uri) + IL_0067: brtrue.s IL_0076 + + IL_0069: ldarg.0 + IL_006a: callvirt instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + IL_006f: callvirt instance string [mscorlib]System.Object::ToString() + IL_0074: br.s IL_007b + + IL_0076: ldsfld string [mscorlib]System.String::Empty + IL_007b: nop + IL_007c: stfld string Virtuoso.Hyphen.Native.PLUGININFO::HomePage + .line 117,117 : 13,38 '' + IL_0081: ldloc.0 + IL_0082: ldarg.0 + IL_0083: callvirt instance valuetype Virtuoso.Hyphen.Native.PluginFlags Virtuoso.Hyphen.Mini.StandalonePlugin::get_Flags() + IL_0088: stfld uint8 Virtuoso.Hyphen.Native.PLUGININFO::Flags + .line 118,118 : 13,64 '' + IL_008d: ldloc.0 + IL_008e: ldarg.0 + IL_008f: callvirt instance int32 Virtuoso.Hyphen.Mini.StandalonePlugin::get_ReplacesDefaultModule() + IL_0094: stfld int32 Virtuoso.Hyphen.Native.PLUGININFO::ReplacesDefaultModule + .line 119,119 : 13,35 '' + IL_0099: ldloc.0 + IL_009a: ldarg.0 + IL_009b: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_00a0: stfld string Virtuoso.Hyphen.Native.PLUGININFO::ShortName + .line 120,120 : 13,64 '' + IL_00a5: ldloc.0 + IL_00a6: ldarg.0 + IL_00a7: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + IL_00ac: call uint32 Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToMirandaVersion(class [mscorlib]System.Version) + IL_00b1: stfld uint32 Virtuoso.Hyphen.Native.PLUGININFO::Version + .line 121,121 : 13,20 '' + IL_00b6: ldarg.2 + IL_00b7: ldc.i4.0 + IL_00b8: ceq + IL_00ba: stloc.3 + IL_00bb: ldloc.3 + IL_00bc: brtrue.s IL_00cf + + .line 121,121 : 21,54 '' + IL_00be: ldloc.0 + IL_00bf: castclass Virtuoso.Hyphen.Native.PLUGININFOEX + IL_00c4: ldarg.0 + IL_00c5: callvirt instance valuetype [mscorlib]System.Guid Virtuoso.Hyphen.Mini.StandalonePlugin::get_UUID() + IL_00ca: stfld valuetype [mscorlib]System.Guid Virtuoso.Hyphen.Native.PLUGININFOEX::UUID + .line 123,123 : 13,60 '' + IL_00cf: ldloc.0 + IL_00d0: ldfld int32 Virtuoso.Hyphen.Native.PLUGININFO::Size + IL_00d5: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_00da: stloc.1 + .line 124,124 : 13,56 '' + IL_00db: ldloc.0 + IL_00dc: ldloc.1 + IL_00dd: ldc.i4.0 + IL_00de: call void [mscorlib]System.Runtime.InteropServices.Marshal::StructureToPtr(object, + native int, + bool) + IL_00e3: nop + .line 126,126 : 13,26 '' + IL_00e4: ldloc.1 + IL_00e5: stloc.2 + IL_00e6: br.s IL_00e8 + + .line 127,127 : 9,10 '' + IL_00e8: ldloc.2 + IL_00e9: ret + } // end of method StandalonePlugin::MirandaPluginInfo + + .method famorassem hidebysig newslot virtual + instance native int MirandaPluginInterfaces() cil managed + { + // Code size 167 (0xa7) + .maxstack 5 + .locals init ([0] valuetype [mscorlib]System.Guid[] interfaces, + [1] int32 uuidSize, + [2] native int pInterfaces, + [3] uint8[] uuidBytes, + [4] int64 baseAddr, + [5] int32 i, + [6] native int CS$1$0000, + [7] bool CS$4$0001, + [8] valuetype [mscorlib]System.Guid CS$0$0002) + .line 130,130 : 9,10 '' + IL_0000: nop + .line 131,131 : 13,47 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: stfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInterfaces + .line 132,132 : 13,50 '' + IL_0008: ldarg.0 + IL_0009: callvirt instance valuetype [mscorlib]System.Guid[] Virtuoso.Hyphen.Mini.StandalonePlugin::get_PluginInterfaces() + IL_000e: stloc.0 + .line 134,134 : 13,57 '' + IL_000f: ldtoken [mscorlib]System.Guid + IL_0014: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0019: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_001e: stloc.1 + .line 135,135 : 13,91 '' + IL_001f: ldloc.0 + IL_0020: ldlen + IL_0021: conv.i4 + IL_0022: ldc.i4.1 + IL_0023: add + IL_0024: ldloc.1 + IL_0025: mul + IL_0026: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_002b: stloc.2 + .line 137,137 : 13,37 '' + IL_002c: ldnull + IL_002d: stloc.3 + .line 138,138 : 13,51 '' + IL_002e: ldloca.s pInterfaces + IL_0030: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0035: stloc.s baseAddr + .line 140,140 : 18,28 '' + IL_0037: ldc.i4.0 + IL_0038: stloc.s i + IL_003a: br.s IL_006a + + .line 141,141 : 13,14 '' + IL_003c: nop + .line 142,142 : 17,57 '' + IL_003d: ldloc.0 + IL_003e: ldloc.s i + IL_0040: ldelema [mscorlib]System.Guid + IL_0045: call instance uint8[] [mscorlib]System.Guid::ToByteArray() + IL_004a: stloc.3 + .line 143,143 : 17,99 '' + IL_004b: ldloc.3 + IL_004c: ldc.i4.0 + IL_004d: ldloc.s baseAddr + IL_004f: ldloc.s i + IL_0051: ldloc.1 + IL_0052: mul + IL_0053: conv.i8 + IL_0054: add + IL_0055: newobj instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_005a: ldloc.3 + IL_005b: ldlen + IL_005c: conv.i4 + IL_005d: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + IL_0062: nop + .line 144,144 : 13,14 '' + IL_0063: nop + .line 140,140 : 52,55 '' + IL_0064: ldloc.s i + IL_0066: ldc.i4.1 + IL_0067: add + IL_0068: stloc.s i + .line 140,140 : 29,50 '' + IL_006a: ldloc.s i + IL_006c: ldloc.0 + IL_006d: ldlen + IL_006e: conv.i4 + IL_006f: clt + IL_0071: stloc.s CS$4$0001 + IL_0073: ldloc.s CS$4$0001 + IL_0075: brtrue.s IL_003c + + .line 147,147 : 13,81 '' + IL_0077: call valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_Last() + IL_007c: stloc.s CS$0$0002 + IL_007e: ldloca.s CS$0$0002 + IL_0080: call instance uint8[] [mscorlib]System.Guid::ToByteArray() + IL_0085: stloc.3 + .line 148,148 : 13,111 '' + IL_0086: ldloc.3 + IL_0087: ldc.i4.0 + IL_0088: ldloc.s baseAddr + IL_008a: ldloc.0 + IL_008b: ldlen + IL_008c: conv.i4 + IL_008d: ldloc.1 + IL_008e: mul + IL_008f: conv.i8 + IL_0090: add + IL_0091: newobj instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_0096: ldloc.3 + IL_0097: ldlen + IL_0098: conv.i4 + IL_0099: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + IL_009e: nop + .line 150,150 : 13,32 '' + IL_009f: ldloc.2 + IL_00a0: stloc.s CS$1$0000 + IL_00a2: br.s IL_00a4 + + .line 151,151 : 9,10 '' + IL_00a4: ldloc.s CS$1$0000 + IL_00a6: ret + } // end of method StandalonePlugin::MirandaPluginInterfaces + + .method assembly hidebysig newslot strict virtual + instance void AfterModuleInitializationInternal() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 153,153 : 67,68 '' + IL_0000: nop + .line 153,153 : 69,97 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::AfterModuleInitialization() + IL_0007: nop + .line 153,153 : 98,99 '' + IL_0008: ret + } // end of method StandalonePlugin::AfterModuleInitializationInternal + + .method family hidebysig newslot virtual + instance void AfterModuleInitialization() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 154,154 : 60,61 '' + IL_0000: nop + .line 154,154 : 62,63 '' + IL_0001: ret + } // end of method StandalonePlugin::AfterModuleInitialization + + .method assembly hidebysig newslot strict virtual + instance void LoadInternal(native int pPluginLink) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 156,156 : 64,65 '' + IL_0000: nop + .line 156,156 : 66,84 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::Load(native int) + IL_0008: nop + .line 156,156 : 85,86 '' + IL_0009: ret + } // end of method StandalonePlugin::LoadInternal + + .method family hidebysig newslot virtual + instance void Load(native int pPluginLink) cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 157,157 : 57,58 '' + IL_0000: nop + .line 157,157 : 59,60 '' + IL_0001: ret + } // end of method StandalonePlugin::Load + + .method assembly hidebysig newslot strict virtual + instance void UnloadInternal() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 159,159 : 48,49 '' + IL_0000: nop + .line 159,159 : 50,59 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::Unload() + IL_0007: nop + .line 159,159 : 60,61 '' + IL_0008: ret + } // end of method StandalonePlugin::UnloadInternal + + .method family hidebysig newslot virtual + instance void Unload() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 160,160 : 41,42 '' + IL_0000: nop + .line 160,160 : 43,44 '' + IL_0001: ret + } // end of method StandalonePlugin::Unload + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 37,37 : 9,77 '' + IL_0000: ldtoken Virtuoso.Hyphen.Mini.StandalonePlugin + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Hyphen.Mini.StandalonePlugin::PluginType + IL_000f: ret + } // end of method StandalonePlugin::.cctor + + .property instance class Virtuoso.Hyphen.Mini.Module + Module() + { + .get instance class Virtuoso.Hyphen.Mini.Module Virtuoso.Hyphen.Mini.StandalonePlugin::get_Module() + .set instance void Virtuoso.Hyphen.Mini.StandalonePlugin::set_Module(class Virtuoso.Hyphen.Mini.Module) + } // end of property StandalonePlugin::Module + .property instance string Copyright() + { + .get instance string Virtuoso.Hyphen.Mini.StandalonePlugin::get_Copyright() + } // end of property StandalonePlugin::Copyright + .property instance string AuthorEmail() + { + .get instance string Virtuoso.Hyphen.Mini.StandalonePlugin::get_AuthorEmail() + } // end of property StandalonePlugin::AuthorEmail + .property instance valuetype Virtuoso.Hyphen.Native.PluginFlags + Flags() + { + .get instance valuetype Virtuoso.Hyphen.Native.PluginFlags Virtuoso.Hyphen.Mini.StandalonePlugin::get_Flags() + } // end of property StandalonePlugin::Flags + .property instance int32 ReplacesDefaultModule() + { + .get instance int32 Virtuoso.Hyphen.Mini.StandalonePlugin::get_ReplacesDefaultModule() + } // end of property StandalonePlugin::ReplacesDefaultModule + .property instance valuetype [mscorlib]System.Guid + UUID() + { + .get instance valuetype [mscorlib]System.Guid Virtuoso.Hyphen.Mini.StandalonePlugin::get_UUID() + } // end of property StandalonePlugin::UUID + .property instance valuetype [mscorlib]System.Guid[] + PluginInterfaces() + { + .get instance valuetype [mscorlib]System.Guid[] Virtuoso.Hyphen.Mini.StandalonePlugin::get_PluginInterfaces() + } // end of property StandalonePlugin::PluginInterfaces + .property instance class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection + CustomApiHandlers() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection Virtuoso.Hyphen.Mini.StandalonePlugin::get_CustomApiHandlers() + } // end of property StandalonePlugin::CustomApiHandlers + .property instance bool HasCustomPluginInterfaces() + { + .get instance bool Virtuoso.Hyphen.Mini.StandalonePlugin::get_HasCustomPluginInterfaces() + } // end of property StandalonePlugin::HasCustomPluginInterfaces + .property instance bool HasCustomPluginInfo() + { + .get instance bool Virtuoso.Hyphen.Mini.StandalonePlugin::get_HasCustomPluginInfo() + } // end of property StandalonePlugin::HasCustomPluginInfo +} // end of class Virtuoso.Hyphen.Mini.StandalonePlugin + +.class public abstract auto ansi beforefieldinit Virtuoso.Hyphen.Mini.Custom.DatabaseDriver + extends Virtuoso.Hyphen.Mini.StandalonePlugin +{ + .custom instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(valuetype Virtuoso.Miranda.Plugins.LoaderOptions) = ( 01 00 06 00 00 00 00 00 ) + .field private valuetype [mscorlib]System.Runtime.InteropServices.GCHandle DatabaseLinkGcHandle + .field private valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 DatabaseLinkHandle + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Disposed + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 41,41 : 9,35 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Custom\\DatabaseDriver.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Mini.StandalonePlugin::.ctor() + IL_0006: nop + .line 41,41 : 36,37 '' + IL_0007: nop + .line 41,41 : 38,39 '' + IL_0008: nop + IL_0009: ret + } // end of method DatabaseDriver::.ctor + + .method family hidebysig virtual instance void + Finalize() cil managed + { + // Code size 22 (0x16) + .maxstack 2 + .line 44,44 : 9,10 '' + .try + { + IL_0000: nop + .line 45,45 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: call instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::UnloadPreThunk(int32) + IL_0008: pop + .line 46,46 : 9,10 '' + IL_0009: nop + IL_000a: leave.s IL_0014 + + .line 46,46 : 9,10 '' + } // end .try + finally + { + IL_000c: ldarg.0 + IL_000d: call instance void [mscorlib]System.Object::Finalize() + IL_0012: nop + IL_0013: endfinally + } // end handler + IL_0014: nop + .line 46,46 : 9,10 '' + IL_0015: ret + } // end of method DatabaseDriver::Finalize + + .method assembly hidebysig instance object + DatabasePluginInfoThunk(object[] args) cil managed + { + .custom instance void Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::.ctor(string) = ( 01 00 12 44 61 74 61 62 61 73 65 50 6C 75 67 69 // ...DatabasePlugi + 6E 49 6E 66 6F 00 00 ) // nInfo.. + // Code size 200 (0xc8) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Hyphen.Mini.Custom.DatabaseLink link, + [1] object CS$1$0000) + .line 54,54 : 9,10 '' + IL_0000: nop + .line 55,55 : 13,52 '' + IL_0001: ldloca.s link + IL_0003: initobj Virtuoso.Hyphen.Mini.Custom.DatabaseLink + .line 57,57 : 13,62 '' + IL_0009: ldloca.s link + IL_000b: ldtoken Virtuoso.Hyphen.Mini.Custom.DatabaseLink + IL_0010: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0015: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_001a: stfld int32 Virtuoso.Hyphen.Mini.Custom.DatabaseLink::Size + .line 58,58 : 13,53 '' + IL_001f: ldloca.s link + IL_0021: ldarg.0 + IL_0022: dup + IL_0023: ldvirtftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::GetCapabilityThunk(int32) + IL_0029: newobj instance void Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype::.ctor(object, + native int) + IL_002e: stfld class Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::GetCapability + .line 59,59 : 13,57 '' + IL_0033: ldloca.s link + IL_0035: ldarg.0 + IL_0036: dup + IL_0037: ldvirtftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::GetFriendlyNameThunk(native int, + int32, + int32) + IL_003d: newobj instance void Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype::.ctor(object, + native int) + IL_0042: stfld class Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::GetFriendlyName + .line 60,60 : 13,47 '' + IL_0047: ldloca.s link + IL_0049: ldarg.0 + IL_004a: dup + IL_004b: ldvirtftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::GrokHeaderThunk(string, + int32&) + IL_0051: newobj instance void Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype::.ctor(object, + native int) + IL_0056: stfld class Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::GrokHeader + .line 61,61 : 13,38 '' + IL_005b: ldloca.s link + IL_005d: ldarg.0 + IL_005e: ldftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::InitPreThunk(string, + native int) + IL_0064: newobj instance void Virtuoso.Hyphen.Mini.Custom.InitPrototype::.ctor(object, + native int) + IL_0069: stfld class Virtuoso.Hyphen.Mini.Custom.InitPrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::Init + .line 62,62 : 13,51 '' + IL_006e: ldloca.s link + IL_0070: ldarg.0 + IL_0071: dup + IL_0072: ldvirtftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::MakeDatabaseThunk(string, + int32&) + IL_0078: newobj instance void Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype::.ctor(object, + native int) + IL_007d: stfld class Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::MakeDatabase + .line 63,63 : 13,42 '' + IL_0082: ldloca.s link + IL_0084: ldarg.0 + IL_0085: ldftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::UnloadPreThunk(int32) + IL_008b: newobj instance void Virtuoso.Hyphen.Mini.Custom.UnloadPrototype::.ctor(object, + native int) + IL_0090: stfld class Virtuoso.Hyphen.Mini.Custom.UnloadPrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::Unload + .line 64,64 : 13,84 '' + IL_0095: ldarg.0 + IL_0096: ldloca.s link + IL_0098: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_009d: stfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkHandle + .line 66,66 : 13,57 '' + IL_00a2: ldarg.0 + IL_00a3: ldloc.0 + IL_00a4: box Virtuoso.Hyphen.Mini.Custom.DatabaseLink + IL_00a9: call valuetype [mscorlib]System.Runtime.InteropServices.GCHandle [mscorlib]System.Runtime.InteropServices.GCHandle::Alloc(object) + IL_00ae: stfld valuetype [mscorlib]System.Runtime.InteropServices.GCHandle Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkGcHandle + .line 67,67 : 13,46 '' + IL_00b3: ldarg.0 + IL_00b4: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkHandle + IL_00b9: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_00be: box [mscorlib]System.IntPtr + IL_00c3: stloc.1 + IL_00c4: br.s IL_00c6 + + .line 68,68 : 9,10 '' + IL_00c6: ldloc.1 + IL_00c7: ret + } // end of method DatabaseDriver::DatabasePluginInfoThunk + + .method family hidebysig newslot abstract virtual + instance int32 MakeDatabaseThunk(string profile, + int32& 'error') cil managed + { + } // end of method DatabaseDriver::MakeDatabaseThunk + + .method family hidebysig newslot abstract virtual + instance int32 GrokHeaderThunk(string profile, + int32& 'error') cil managed + { + } // end of method DatabaseDriver::GrokHeaderThunk + + .method family hidebysig newslot abstract virtual + instance int32 GetCapabilityThunk(int32 'flags') cil managed + { + } // end of method DatabaseDriver::GetCapabilityThunk + + .method family hidebysig newslot abstract virtual + instance int32 GetFriendlyNameThunk(native int buffer, + int32 size, + int32 shortName) cil managed + { + } // end of method DatabaseDriver::GetFriendlyNameThunk + + .method private hidebysig instance int32 + InitPreThunk(string profile, + native int pLink) cil managed + { + // Code size 38 (0x26) + .maxstack 4 + .locals init ([0] int32 CS$1$0000) + .line 89,89 : 9,10 '' + IL_0000: nop + .line 90,90 : 13,90 '' + IL_0001: ldarg.0 + IL_0002: call instance class Virtuoso.Hyphen.Mini.Module Virtuoso.Hyphen.Mini.StandalonePlugin::get_Module() + IL_0007: ldarg.2 + IL_0008: callvirt instance int32 Virtuoso.Hyphen.Mini.Module::Load(native int) + IL_000d: call int32 [mscorlib]System.Math::Abs(int32) + IL_0012: ldarg.0 + IL_0013: ldarg.1 + IL_0014: ldarg.2 + IL_0015: callvirt instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::InitThunk(string, + native int) + IL_001a: call int32 [mscorlib]System.Math::Abs(int32) + IL_001f: add + IL_0020: neg + IL_0021: stloc.0 + IL_0022: br.s IL_0024 + + .line 91,91 : 9,10 '' + IL_0024: ldloc.0 + IL_0025: ret + } // end of method DatabaseDriver::InitPreThunk + + .method family hidebysig newslot abstract virtual + instance int32 InitThunk(string profile, + native int link) cil managed + { + } // end of method DatabaseDriver::InitThunk + + .method private hidebysig instance int32 + UnloadPreThunk(int32 wasLoaded) cil managed + { + // Code size 88 (0x58) + .maxstack 2 + .locals init ([0] int32 CS$1$0000, + [1] bool CS$4$0001) + .line 96,96 : 9,10 '' + IL_0000: nop + .line 98,98 : 13,14 '' + .try + { + IL_0001: nop + .line 99,99 : 17,31 '' + IL_0002: ldarg.0 + IL_0003: volatile. + IL_0005: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::Disposed + IL_000a: stloc.1 + IL_000b: ldloc.1 + IL_000c: brtrue.s IL_0042 + + .line 100,100 : 17,18 '' + IL_000e: nop + .line 101,101 : 21,44 '' + IL_000f: ldarg.0 + IL_0010: ldarg.1 + IL_0011: callvirt instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::UnloadThunk(int32) + IL_0016: pop + .line 102,102 : 21,47 '' + IL_0017: ldarg.0 + IL_0018: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkHandle + IL_001d: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_0022: nop + .line 104,104 : 21,58 '' + IL_0023: ldarg.0 + IL_0024: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkGcHandle + IL_0029: call instance bool [mscorlib]System.Runtime.InteropServices.GCHandle::get_IsAllocated() + IL_002e: ldc.i4.0 + IL_002f: ceq + IL_0031: stloc.1 + IL_0032: ldloc.1 + IL_0033: brtrue.s IL_0041 + + .line 105,105 : 25,53 '' + IL_0035: ldarg.0 + IL_0036: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkGcHandle + IL_003b: call instance void [mscorlib]System.Runtime.InteropServices.GCHandle::Free() + IL_0040: nop + .line 106,106 : 17,18 '' + IL_0041: nop + .line 107,107 : 13,14 '' + IL_0042: nop + IL_0043: leave.s IL_0051 + + .line 109,109 : 13,14 '' + } // end .try + finally + { + IL_0045: nop + .line 110,110 : 17,33 '' + IL_0046: ldarg.0 + IL_0047: ldc.i4.1 + IL_0048: volatile. + IL_004a: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::Disposed + .line 111,111 : 13,14 '' + IL_004f: nop + IL_0050: endfinally + } // end handler + IL_0051: nop + .line 113,113 : 13,22 '' + IL_0052: ldc.i4.0 + IL_0053: stloc.0 + IL_0054: br.s IL_0056 + + .line 114,114 : 9,10 '' + IL_0056: ldloc.0 + IL_0057: ret + } // end of method DatabaseDriver::UnloadPreThunk + + .method family hidebysig newslot abstract virtual + instance int32 UnloadThunk(int32 wasLoaded) cil managed + { + } // end of method DatabaseDriver::UnloadThunk + +} // end of class Virtuoso.Hyphen.Mini.Custom.DatabaseDriver + +.class public sequential ansi sealed beforefieldinit Virtuoso.Hyphen.Mini.Custom.DatabaseLink + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public int32 Size + .field public class Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype GetCapability + .field public class Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype GetFriendlyName + .field public class Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype MakeDatabase + .field public class Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype GrokHeader + .field public class Virtuoso.Hyphen.Mini.Custom.InitPrototype Init + .field public class Virtuoso.Hyphen.Mini.Custom.UnloadPrototype Unload +} // end of class Virtuoso.Hyphen.Mini.Custom.DatabaseLink + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method GetCapabilityPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(int32 'flags') runtime managed + { + } // end of method GetCapabilityPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(int32 'flags', + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method GetCapabilityPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method GetCapabilityPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method GetFriendlyNamePrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int buf, + int32 size, + int32 shortName) runtime managed + { + } // end of method GetFriendlyNamePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int buf, + int32 size, + int32 shortName, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method GetFriendlyNamePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method GetFriendlyNamePrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method MakeDatabasePrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) profile, + int32& 'error') runtime managed + { + } // end of method MakeDatabasePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) profile, + int32& 'error', + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method MakeDatabasePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(int32& 'error', + class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method MakeDatabasePrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method GrokHeaderPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) profile, + int32& 'error') runtime managed + { + } // end of method GrokHeaderPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) profile, + int32& 'error', + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method GrokHeaderPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(int32& 'error', + class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method GrokHeaderPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.InitPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method InitPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) profile, + native int link) runtime managed + { + } // end of method InitPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) profile, + native int link, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method InitPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method InitPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.InitPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.UnloadPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method UnloadPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(int32 wasLoaded) runtime managed + { + } // end of method UnloadPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(int32 wasLoaded, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method UnloadPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method UnloadPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.UnloadPrototype + +.class public abstract auto ansi beforefieldinit Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver + extends Virtuoso.Hyphen.Mini.Custom.DatabaseDriver +{ + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 33,33 : 9,45 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Custom\\CustomizedDatabaseDriver.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::.ctor() + IL_0006: nop + .line 33,33 : 46,47 '' + IL_0007: nop + .line 33,33 : 48,49 '' + IL_0008: nop + IL_0009: ret + } // end of method CustomizedDatabaseDriver::.ctor + + .method family hidebysig virtual final + instance int32 GetCapabilityThunk(int32 'flags') cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .locals init ([0] int32 CS$1$0000) + .line 40,40 : 9,10 '' + IL_0000: nop + .line 41,41 : 13,58 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: callvirt instance bool Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::GetCapability(int32) + IL_0008: call int32 [mscorlib]System.Convert::ToInt32(bool) + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 42,42 : 9,10 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method CustomizedDatabaseDriver::GetCapabilityThunk + + .method family hidebysig virtual final + instance int32 GetFriendlyNameThunk(native int buffer, + int32 size, + int32 shortName) cil managed + { + // Code size 79 (0x4f) + .maxstack 4 + .locals init ([0] string name, + [1] uint8[] bytes, + [2] int32 CS$1$0000, + [3] bool CS$4$0001) + .line 45,45 : 9,10 '' + IL_0000: nop + .line 46,46 : 13,65 '' + IL_0001: ldarg.0 + IL_0002: ldarg.3 + IL_0003: ldc.i4.0 + IL_0004: ceq + IL_0006: ldc.i4.0 + IL_0007: ceq + IL_0009: ldarg.2 + IL_000a: callvirt instance string Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::GetFriendlyName(bool, + int32) + IL_000f: stloc.0 + .line 47,47 : 13,30 '' + IL_0010: ldloc.0 + IL_0011: ldnull + IL_0012: ceq + IL_0014: ldc.i4.0 + IL_0015: ceq + IL_0017: stloc.3 + IL_0018: ldloc.3 + IL_0019: brtrue.s IL_001f + + .line 47,47 : 31,41 '' + IL_001b: ldc.i4.m1 + IL_001c: stloc.2 + IL_001d: br.s IL_004d + + .line 49,49 : 13,60 '' + IL_001f: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Default() + IL_0024: ldloc.0 + IL_0025: callvirt instance uint8[] [mscorlib]System.Text.Encoding::GetBytes(string) + IL_002a: stloc.1 + .line 51,51 : 13,37 '' + IL_002b: ldarg.2 + IL_002c: ldloc.1 + IL_002d: ldlen + IL_002e: conv.i4 + IL_002f: clt + IL_0031: ldc.i4.0 + IL_0032: ceq + IL_0034: stloc.3 + IL_0035: ldloc.3 + IL_0036: brtrue.s IL_003c + + .line 52,52 : 17,27 '' + IL_0038: ldc.i4.m1 + IL_0039: stloc.2 + IL_003a: br.s IL_004d + + .line 54,54 : 13,14 '' + IL_003c: nop + .line 55,55 : 17,62 '' + IL_003d: ldloc.1 + IL_003e: ldc.i4.0 + IL_003f: ldarg.1 + IL_0040: ldloc.1 + IL_0041: ldlen + IL_0042: conv.i4 + IL_0043: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + IL_0048: nop + .line 56,56 : 17,26 '' + IL_0049: ldc.i4.0 + IL_004a: stloc.2 + IL_004b: br.s IL_004d + + .line 58,58 : 9,10 '' + IL_004d: ldloc.2 + IL_004e: ret + } // end of method CustomizedDatabaseDriver::GetFriendlyNameThunk + + .method family hidebysig virtual final + instance int32 InitThunk(string profile, + native int pLink) cil managed + { + // Code size 14 (0xe) + .maxstack 3 + .locals init ([0] int32 CS$1$0000) + .line 61,61 : 9,10 '' + IL_0000: nop + .line 62,62 : 13,41 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: callvirt instance int32 Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::Init(string, + native int) + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + .line 63,63 : 9,10 '' + IL_000c: ldloc.0 + IL_000d: ret + } // end of method CustomizedDatabaseDriver::InitThunk + + .method family hidebysig virtual final + instance int32 UnloadThunk(int32 wasLoaded) cil managed + { + // Code size 19 (0x13) + .maxstack 3 + .locals init ([0] int32 CS$1$0000) + .line 66,66 : 9,10 '' + IL_0000: nop + .line 67,67 : 13,43 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldc.i4.0 + IL_0004: ceq + IL_0006: ldc.i4.0 + IL_0007: ceq + IL_0009: callvirt instance int32 Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::Unload(bool) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 68,68 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method CustomizedDatabaseDriver::UnloadThunk + + .method family hidebysig newslot abstract virtual + instance bool GetCapability(int32 'flags') cil managed + { + } // end of method CustomizedDatabaseDriver::GetCapability + + .method family hidebysig newslot abstract virtual + instance string GetFriendlyName(bool shortName, + int32 size) cil managed + { + } // end of method CustomizedDatabaseDriver::GetFriendlyName + + .method family hidebysig newslot abstract virtual + instance int32 MakeDatabase(string profile, + int32& 'error') cil managed + { + } // end of method CustomizedDatabaseDriver::MakeDatabase + + .method family hidebysig newslot abstract virtual + instance int32 GrokHeader(string profile, + int32& 'error') cil managed + { + } // end of method CustomizedDatabaseDriver::GrokHeader + + .method family hidebysig newslot abstract virtual + instance int32 Init(string profile, + native int pLink) cil managed + { + } // end of method CustomizedDatabaseDriver::Init + + .method family hidebysig newslot abstract virtual + instance int32 Unload(bool wasLoaded) cil managed + { + } // end of method CustomizedDatabaseDriver::Unload + +} // end of class Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.LoaderOptions + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.LoaderOptions None = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.LoaderOptions HasCustomApiExports = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.LoaderOptions CannotBeUnloaded = int32(0x00000004) +} // end of class Virtuoso.Miranda.Plugins.LoaderOptions + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.LoaderOptionsOwner + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner Type = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner Assembly = int32(0x00000001) +} // end of class Virtuoso.Miranda.Plugins.LoaderOptionsOwner + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + extends [mscorlib]System.Attribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 05 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ........T..Allow + 4D 75 6C 74 69 70 6C 65 01 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 01 ) // rited. + .field private valuetype Virtuoso.Miranda.Plugins.LoaderOptions options + .field private class [mscorlib]System.Version requiredVersion + .field private class [mscorlib]System.Version minimalMirandaVersion + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.LoaderOptions + get_Options() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.LoaderOptions CS$1$0000) + .line 49,49 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\LoaderOptionsAttribute.cs' + IL_0000: nop + .line 49,49 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 49,49 : 35,36 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method LoaderOptionsAttribute::get_Options + + .method public hidebysig specialname instance void + set_Options(valuetype Virtuoso.Miranda.Plugins.LoaderOptions 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 50,50 : 17,18 '' + IL_0000: nop + .line 50,50 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + .line 50,50 : 36,37 '' + IL_0008: ret + } // end of method LoaderOptionsAttribute::set_Options + + .method public hidebysig specialname instance class [mscorlib]System.Version + get_RequiredVersion() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 56,56 : 17,18 '' + IL_0000: nop + .line 56,56 : 19,42 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::requiredVersion + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 56,56 : 43,44 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method LoaderOptionsAttribute::get_RequiredVersion + + .method public hidebysig specialname instance class [mscorlib]System.Version + get_MinimalMirandaVersion() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 62,62 : 17,18 '' + IL_0000: nop + .line 62,62 : 19,48 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::minimalMirandaVersion + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 62,62 : 49,50 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method LoaderOptionsAttribute::get_MinimalMirandaVersion + + .method public hidebysig specialname rtspecialname + instance void .ctor(valuetype Virtuoso.Miranda.Plugins.LoaderOptions options) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 69,70 : 9,40 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldnull + IL_0003: ldarg.1 + IL_0004: call instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(string, + string, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + IL_0009: nop + .line 70,70 : 41,42 '' + IL_000a: nop + .line 70,70 : 43,44 '' + IL_000b: nop + IL_000c: ret + } // end of method LoaderOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string requiredVersion) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 72,73 : 9,62 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldc.i4.0 + IL_0004: call instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(string, + string, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + IL_0009: nop + .line 73,73 : 63,64 '' + IL_000a: nop + .line 73,73 : 65,66 '' + IL_000b: nop + IL_000c: ret + } // end of method LoaderOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string requiredVersion, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions options) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 75,76 : 9,51 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldarg.2 + IL_0004: call instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(string, + string, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + IL_0009: nop + .line 76,76 : 52,53 '' + IL_000a: nop + .line 76,76 : 54,55 '' + IL_000b: nop + IL_000c: ret + } // end of method LoaderOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string requiredVersion, + string minimalMirandaVersion) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 78,79 : 9,79 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldc.i4.0 + IL_0004: call instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(string, + string, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + IL_0009: nop + .line 79,79 : 80,81 '' + IL_000a: nop + .line 79,79 : 82,83 '' + IL_000b: nop + IL_000c: ret + } // end of method LoaderOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string requiredVersion, + string minimalMirandaVersion, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions options) cil managed + { + // Code size 61 (0x3d) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 81,81 : 9,115 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + IL_0006: nop + .line 82,82 : 9,10 '' + IL_0007: nop + .line 83,83 : 13,56 '' + IL_0008: ldarg.1 + IL_0009: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000e: stloc.0 + IL_000f: ldloc.0 + IL_0010: brtrue.s IL_001e + + .line 84,84 : 17,69 '' + IL_0012: ldarg.0 + IL_0013: ldarg.1 + IL_0014: newobj instance void [mscorlib]System.Version::.ctor(string) + IL_0019: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::requiredVersion + .line 86,86 : 13,62 '' + IL_001e: ldarg.2 + IL_001f: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0024: stloc.0 + IL_0025: ldloc.0 + IL_0026: brtrue.s IL_0034 + + .line 87,87 : 17,81 '' + IL_0028: ldarg.0 + IL_0029: ldarg.2 + IL_002a: newobj instance void [mscorlib]System.Version::.ctor(string) + IL_002f: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::minimalMirandaVersion + .line 89,89 : 13,36 '' + IL_0034: ldarg.0 + IL_0035: ldarg.3 + IL_0036: stfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + .line 90,90 : 9,10 '' + IL_003b: nop + IL_003c: ret + } // end of method LoaderOptionsAttribute::.ctor + + .method assembly hidebysig instance bool + SupportsMirandaVersion(uint32 mirandaVersion) cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 97,97 : 9,10 '' + IL_0000: nop + .line 98,98 : 13,89 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.Translate::FromMirandaVersion(uint32) + IL_0008: call instance bool Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::SupportsMirandaVersion(class [mscorlib]System.Version) + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 99,99 : 9,10 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method LoaderOptionsAttribute::SupportsMirandaVersion + + .method assembly hidebysig instance bool + SupportsMirandaVersion(class [mscorlib]System.Version mirandaVersion) cil managed + { + // Code size 67 (0x43) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 102,102 : 9,10 '' + IL_0000: nop + .line 104,104 : 13,47 '' + IL_0001: ldarg.0 + IL_0002: call instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion() + IL_0007: ldnull + IL_0008: call bool [mscorlib]System.Version::op_Inequality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_000d: ldc.i4.0 + IL_000e: ceq + IL_0010: stloc.1 + IL_0011: ldloc.1 + IL_0012: brtrue.s IL_002f + + .line 105,105 : 13,14 '' + IL_0014: nop + .line 106,106 : 17,60 '' + IL_0015: ldarg.1 + IL_0016: ldarg.0 + IL_0017: call instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion() + IL_001c: call bool [mscorlib]System.Version::op_LessThan(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_0021: ldc.i4.0 + IL_0022: ceq + IL_0024: stloc.1 + IL_0025: ldloc.1 + IL_0026: brtrue.s IL_002c + + .line 107,107 : 21,34 '' + IL_0028: ldc.i4.0 + IL_0029: stloc.0 + IL_002a: br.s IL_0041 + + .line 108,108 : 13,14 '' + IL_002c: nop + IL_002d: br.s IL_003d + + .line 110,110 : 18,69 '' + IL_002f: ldarg.1 + IL_0030: call bool Virtuoso.Hyphen.Loader::SupportsMirandaVersion(class [mscorlib]System.Version) + IL_0035: stloc.1 + IL_0036: ldloc.1 + IL_0037: brtrue.s IL_003d + + .line 111,111 : 17,30 '' + IL_0039: ldc.i4.0 + IL_003a: stloc.0 + IL_003b: br.s IL_0041 + + .line 113,113 : 13,25 '' + IL_003d: ldc.i4.1 + IL_003e: stloc.0 + IL_003f: br.s IL_0041 + + .line 114,114 : 9,10 '' + IL_0041: ldloc.0 + IL_0042: ret + } // end of method LoaderOptionsAttribute::SupportsMirandaVersion + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + Get(class [mscorlib]System.Type pluginType, + valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner target) cil managed + { + // Code size 365 (0x16d) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Type thisType, + [1] class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute result, + [2] class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute attrib, + [3] class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute CS$1$0000, + [4] bool CS$4$0001, + [5] valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner CS$4$0002, + [6] object[] CS$6$0003, + [7] int32 CS$7$0004) + .line 117,117 : 9,10 '' + IL_0000: nop + .line 118,118 : 13,36 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0001 + IL_000a: ldloc.s CS$4$0001 + IL_000c: brtrue.s IL_0019 + + .line 119,119 : 17,63 '' + IL_000e: ldstr "pluginType" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 121,121 : 13,60 '' + IL_0019: ldtoken Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + IL_001e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0023: stloc.0 + .line 122,122 : 13,50 '' + IL_0024: ldnull + IL_0025: stloc.1 + .line 124,124 : 13,28 '' + IL_0026: ldarg.1 + IL_0027: stloc.s CS$4$0002 + IL_0029: ldloc.s CS$4$0002 + IL_002b: switch ( + IL_003d, + IL_0125) + IL_0038: br IL_0152 + + .line 127,127 : 21,28 '' + IL_003d: nop + .line 127,127 : 63,109 '' + IL_003e: ldarg.0 + IL_003f: ldloc.0 + IL_0040: ldc.i4.1 + IL_0041: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_0046: stloc.s CS$6$0003 + IL_0048: ldc.i4.0 + IL_0049: stloc.s CS$7$0004 + IL_004b: br IL_0112 + + .line 127,127 : 30,59 '' + IL_0050: ldloc.s CS$6$0003 + IL_0052: ldloc.s CS$7$0004 + IL_0054: ldelem.ref + IL_0055: castclass Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + IL_005a: stloc.2 + .line 128,128 : 21,22 '' + IL_005b: nop + .line 129,129 : 25,44 '' + IL_005c: ldloc.1 + IL_005d: ldnull + IL_005e: ceq + IL_0060: ldc.i4.0 + IL_0061: ceq + IL_0063: stloc.s CS$4$0001 + IL_0065: ldloc.s CS$4$0001 + IL_0067: brtrue.s IL_0070 + + .line 130,130 : 29,45 '' + IL_0069: ldloc.2 + IL_006a: stloc.1 + IL_006b: br IL_00f8 + + .line 132,132 : 25,26 '' + IL_0070: nop + .line 133,133 : 29,64 '' + IL_0071: ldloc.1 + IL_0072: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::requiredVersion + IL_0077: ldnull + IL_0078: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_007d: ldc.i4.0 + IL_007e: ceq + IL_0080: stloc.s CS$4$0001 + IL_0082: ldloc.s CS$4$0001 + IL_0084: brtrue.s IL_0094 + + .line 134,134 : 33,81 '' + IL_0086: ldloc.1 + IL_0087: ldloc.2 + IL_0088: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::requiredVersion + IL_008d: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::requiredVersion + IL_0092: br.s IL_00b4 + + .line 135,135 : 34,69 '' + IL_0094: ldloc.2 + IL_0095: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_RequiredVersion() + IL_009a: ldnull + IL_009b: call bool [mscorlib]System.Version::op_Inequality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_00a0: ldc.i4.0 + IL_00a1: ceq + IL_00a3: stloc.s CS$4$0001 + IL_00a5: ldloc.s CS$4$0001 + IL_00a7: brtrue.s IL_00b4 + + .line 136,136 : 33,115 '' + IL_00a9: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_DuplicitLoaderOptions() + IL_00ae: newobj instance void [mscorlib]System.NotSupportedException::.ctor(string) + IL_00b3: throw + + .line 138,138 : 29,70 '' + IL_00b4: ldloc.1 + IL_00b5: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::minimalMirandaVersion + IL_00ba: ldnull + IL_00bb: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_00c0: ldc.i4.0 + IL_00c1: ceq + IL_00c3: stloc.s CS$4$0001 + IL_00c5: ldloc.s CS$4$0001 + IL_00c7: brtrue.s IL_00d7 + + .line 139,139 : 33,93 '' + IL_00c9: ldloc.1 + IL_00ca: ldloc.2 + IL_00cb: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::minimalMirandaVersion + IL_00d0: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::minimalMirandaVersion + IL_00d5: br.s IL_00f7 + + .line 140,140 : 34,75 '' + IL_00d7: ldloc.2 + IL_00d8: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion() + IL_00dd: ldnull + IL_00de: call bool [mscorlib]System.Version::op_Inequality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_00e3: ldc.i4.0 + IL_00e4: ceq + IL_00e6: stloc.s CS$4$0001 + IL_00e8: ldloc.s CS$4$0001 + IL_00ea: brtrue.s IL_00f7 + + .line 141,141 : 33,115 '' + IL_00ec: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_DuplicitLoaderOptions() + IL_00f1: newobj instance void [mscorlib]System.NotSupportedException::.ctor(string) + IL_00f6: throw + + .line 142,142 : 25,26 '' + IL_00f7: nop + .line 144,144 : 25,58 '' + IL_00f8: ldloc.1 + IL_00f9: dup + IL_00fa: ldfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + IL_00ff: ldloc.2 + IL_0100: ldfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + IL_0105: or + IL_0106: stfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + .line 145,145 : 21,22 '' + IL_010b: nop + IL_010c: ldloc.s CS$7$0004 + IL_010e: ldc.i4.1 + IL_010f: add + IL_0110: stloc.s CS$7$0004 + .line 127,127 : 60,62 '' + IL_0112: ldloc.s CS$7$0004 + IL_0114: ldloc.s CS$6$0003 + IL_0116: ldlen + IL_0117: conv.i4 + IL_0118: clt + IL_011a: stloc.s CS$4$0001 + IL_011c: ldloc.s CS$4$0001 + IL_011e: brtrue IL_0050 + + .line 146,146 : 21,27 '' + IL_0123: br.s IL_015d + + .line 148,148 : 21,72 '' + IL_0125: ldarg.0 + IL_0126: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_012b: ldloc.0 + IL_012c: ldc.i4.0 + IL_012d: callvirt instance bool [mscorlib]System.Reflection.Assembly::IsDefined(class [mscorlib]System.Type, + bool) + IL_0132: ldc.i4.0 + IL_0133: ceq + IL_0135: stloc.s CS$4$0001 + IL_0137: ldloc.s CS$4$0001 + IL_0139: brtrue.s IL_0150 + + .line 149,149 : 25,118 '' + IL_013b: ldarg.0 + IL_013c: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0141: ldloc.0 + IL_0142: ldc.i4.0 + IL_0143: callvirt instance object[] [mscorlib]System.Reflection.Assembly::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_0148: ldc.i4.0 + IL_0149: ldelem.ref + IL_014a: castclass Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + IL_014f: stloc.1 + .line 150,150 : 21,27 '' + IL_0150: br.s IL_015d + + .line 152,152 : 21,69 '' + IL_0152: ldstr "target" + IL_0157: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_015c: throw + + .line 155,155 : 13,77 '' + IL_015d: ldloc.1 + IL_015e: dup + IL_015f: brtrue.s IL_0168 + + IL_0161: pop + IL_0162: ldc.i4.0 + IL_0163: newobj instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + IL_0168: stloc.3 + IL_0169: br.s IL_016b + + .line 156,156 : 9,10 '' + IL_016b: ldloc.3 + IL_016c: ret + } // end of method LoaderOptionsAttribute::Get + + .property instance valuetype Virtuoso.Miranda.Plugins.LoaderOptions + Options() + { + .set instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::set_Options(valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + .get instance valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_Options() + } // end of property LoaderOptionsAttribute::Options + .property instance class [mscorlib]System.Version + RequiredVersion() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_RequiredVersion() + } // end of property LoaderOptionsAttribute::RequiredVersion + .property instance class [mscorlib]System.Version + MinimalMirandaVersion() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion() + } // end of property LoaderOptionsAttribute::MinimalMirandaVersion +} // end of class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + +.class public auto ansi sealed beforefieldinit Virtuoso.Hyphen.Mini.ModuleManager + extends [mscorlib]System.Object +{ + .field private static initonly object SyncObject + .field private static class Virtuoso.Hyphen.Mini.ModuleManager singleton + .field private initonly class Virtuoso.Miranda.Plugins.Collections.ModuleCollection RegistredModulesCollection + .field private initonly class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection registeredModules + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 38 (0x26) + .maxstack 8 + .line 37,37 : 9,95 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\ModuleManager.cs' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Collections.ModuleCollection::.ctor() + IL_0006: stfld class Virtuoso.Miranda.Plugins.Collections.ModuleCollection Virtuoso.Hyphen.Mini.ModuleManager::RegistredModulesCollection + .line 44,44 : 9,32 '' + IL_000b: ldarg.0 + IL_000c: call instance void [mscorlib]System.Object::.ctor() + IL_0011: nop + .line 45,45 : 9,10 '' + IL_0012: nop + .line 46,46 : 13,95 '' + IL_0013: ldarg.0 + IL_0014: ldarg.0 + IL_0015: ldfld class Virtuoso.Miranda.Plugins.Collections.ModuleCollection Virtuoso.Hyphen.Mini.ModuleManager::RegistredModulesCollection + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection::.ctor(class Virtuoso.Miranda.Plugins.Collections.ModuleCollection) + IL_001f: stfld class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection Virtuoso.Hyphen.Mini.ModuleManager::registeredModules + .line 47,47 : 9,10 '' + IL_0024: nop + IL_0025: ret + } // end of method ModuleManager::.ctor + + .method public hidebysig specialname static + class Virtuoso.Hyphen.Mini.ModuleManager + get_Singleton() cil managed + { + // Code size 54 (0x36) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Mini.ModuleManager CS$1$0000, + [1] object CS$2$0001) + .line 56,56 : 13,14 '' + IL_0000: nop + .line 57,57 : 17,46 '' + IL_0001: call void Virtuoso.Hyphen.Loader::VerifyDefaultDomain() + IL_0006: nop + .line 59,59 : 17,34 '' + IL_0007: ldsfld object Virtuoso.Hyphen.Mini.ModuleManager::SyncObject + IL_000c: dup + IL_000d: stloc.1 + IL_000e: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0013: nop + .line 60,60 : 21,75 '' + .try + { + IL_0014: ldsfld class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::singleton + IL_0019: dup + IL_001a: brtrue.s IL_0028 + + IL_001c: pop + IL_001d: newobj instance void Virtuoso.Hyphen.Mini.ModuleManager::.ctor() + IL_0022: dup + IL_0023: stsfld class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::singleton + IL_0028: stloc.0 + IL_0029: leave.s IL_0033 + + } // end .try + finally + { + IL_002b: ldloc.1 + IL_002c: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0031: nop + IL_0032: endfinally + } // end handler + IL_0033: nop + .line 61,61 : 13,14 '' + IL_0034: ldloc.0 + IL_0035: ret + } // end of method ModuleManager::get_Singleton + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection + get_RegisteredModules() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection CS$1$0000) + .line 67,67 : 13,14 '' + IL_0000: nop + .line 68,68 : 17,42 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection Virtuoso.Hyphen.Mini.ModuleManager::registeredModules + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 69,69 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ModuleManager::get_RegisteredModules + + .method public hidebysig specialname instance bool + get_HasModules() cil managed + { + // Code size 20 (0x14) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 75,75 : 13,14 '' + IL_0000: nop + .line 76,76 : 17,52 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection Virtuoso.Hyphen.Mini.ModuleManager::registeredModules + IL_0007: callvirt instance int32 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Count() + IL_000c: ldc.i4.0 + IL_000d: cgt + IL_000f: stloc.0 + IL_0010: br.s IL_0012 + + .line 77,77 : 13,14 '' + IL_0012: ldloc.0 + IL_0013: ret + } // end of method ModuleManager::get_HasModules + + .method assembly hidebysig instance void + RegisterModule(class Virtuoso.Hyphen.Mini.Module module) cil managed + { + // Code size 37 (0x25) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 85,85 : 9,10 '' + IL_0000: nop + .line 86,86 : 13,32 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 87,87 : 17,59 '' + IL_000c: ldstr "module" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 89,89 : 13,52 '' + IL_0017: ldarg.0 + IL_0018: ldfld class Virtuoso.Miranda.Plugins.Collections.ModuleCollection Virtuoso.Hyphen.Mini.ModuleManager::RegistredModulesCollection + IL_001d: ldarg.1 + IL_001e: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0023: nop + .line 90,90 : 9,10 '' + IL_0024: ret + } // end of method ModuleManager::RegisterModule + + .method assembly hidebysig instance void + UnregisterModule(class Virtuoso.Hyphen.Mini.Module module) cil managed + { + // Code size 37 (0x25) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 93,93 : 9,10 '' + IL_0000: nop + .line 94,94 : 13,32 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 95,95 : 17,59 '' + IL_000c: ldstr "module" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 97,97 : 13,55 '' + IL_0017: ldarg.0 + IL_0018: ldfld class Virtuoso.Miranda.Plugins.Collections.ModuleCollection Virtuoso.Hyphen.Mini.ModuleManager::RegistredModulesCollection + IL_001d: ldarg.1 + IL_001e: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_0023: pop + .line 98,98 : 9,10 '' + IL_0024: ret + } // end of method ModuleManager::UnregisterModule + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 34,34 : 9,66 '' + IL_0000: newobj instance void [mscorlib]System.Object::.ctor() + IL_0005: stsfld object Virtuoso.Hyphen.Mini.ModuleManager::SyncObject + IL_000a: ret + } // end of method ModuleManager::.cctor + + .property class Virtuoso.Hyphen.Mini.ModuleManager + Singleton() + { + .get class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + } // end of property ModuleManager::Singleton + .property instance class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection + RegisteredModules() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection Virtuoso.Hyphen.Mini.ModuleManager::get_RegisteredModules() + } // end of property ModuleManager::RegisteredModules + .property instance bool HasModules() + { + .get instance bool Virtuoso.Hyphen.Mini.ModuleManager::get_HasModules() + } // end of property ModuleManager::HasModules +} // end of class Virtuoso.Hyphen.Mini.ModuleManager + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.Reflection.DefaultMemberAttribute::.ctor(string) = ( 01 00 04 49 74 65 6D 00 00 ) // ...Item.. + .field private initonly class [mscorlib]System.Collections.Generic.Dictionary`2 Interceptors + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 35,35 : 9,48 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ServiceCallInterceptionManager.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 36,36 : 9,10 '' + IL_0007: nop + .line 37,37 : 13,69 '' + IL_0008: ldarg.0 + IL_0009: ldc.i4.2 + IL_000a: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_000f: stfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + .line 38,38 : 9,10 '' + IL_0014: nop + IL_0015: ret + } // end of method ServiceCallInterceptionManager::.ctor + + .method public hidebysig instance bool + RequiresInterception(string serviceName) cil managed + { + // Code size 41 (0x29) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 45,45 : 9,10 '' + IL_0000: nop + .line 46,46 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0007: dup + IL_0008: stloc.1 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 47,47 : 17,62 '' + .try + { + IL_000f: ldarg.0 + IL_0010: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0015: ldarg.1 + IL_0016: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_001b: stloc.0 + IL_001c: leave.s IL_0026 + + } // end .try + finally + { + IL_001e: ldloc.1 + IL_001f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0024: nop + IL_0025: endfinally + } // end handler + IL_0026: nop + .line 48,48 : 9,10 '' + IL_0027: ldloc.0 + IL_0028: ret + } // end of method ServiceCallInterceptionManager::RequiresInterception + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Callback + get_Item(string serviceName) cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Callback interceptor, + [1] class Virtuoso.Miranda.Plugins.Callback CS$1$0000, + [2] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 53,53 : 13,14 '' + IL_0000: nop + .line 54,54 : 17,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0007: dup + IL_0008: stloc.2 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 55,55 : 17,18 '' + .try + { + IL_000f: nop + .line 56,56 : 21,49 '' + IL_0010: ldnull + IL_0011: stloc.0 + .line 57,57 : 21,76 '' + IL_0012: ldarg.0 + IL_0013: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0018: ldarg.1 + IL_0019: ldloca.s interceptor + IL_001b: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::TryGetValue(!0, + !1&) + IL_0020: pop + .line 59,59 : 21,40 '' + IL_0021: ldloc.0 + IL_0022: stloc.1 + IL_0023: leave.s IL_002d + + } // end .try + finally + { + IL_0025: ldloc.2 + IL_0026: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_002b: nop + IL_002c: endfinally + } // end handler + IL_002d: nop + .line 61,61 : 13,14 '' + IL_002e: ldloc.1 + IL_002f: ret + } // end of method ServiceCallInterceptionManager::get_Item + + .method public hidebysig specialname instance void + set_Item(string serviceName, + class Virtuoso.Miranda.Plugins.Callback 'value') cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 63,63 : 13,14 '' + IL_0000: nop + .line 64,64 : 17,46 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Register(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0009: nop + .line 65,65 : 13,14 '' + IL_000a: ret + } // end of method ServiceCallInterceptionManager::set_Item + + .method public hidebysig instance void + Register(string serviceName, + class Virtuoso.Miranda.Plugins.Callback interceptor) cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000) + .line 69,69 : 9,10 '' + IL_0000: nop + .line 70,70 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0007: dup + IL_0008: stloc.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 71,71 : 17,57 '' + .try + { + IL_000f: ldarg.0 + IL_0010: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0015: ldarg.1 + IL_0016: ldarg.2 + IL_0017: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + IL_001c: nop + IL_001d: leave.s IL_0027 + + } // end .try + finally + { + IL_001f: ldloc.0 + IL_0020: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0025: nop + IL_0026: endfinally + } // end handler + IL_0027: nop + .line 72,72 : 9,10 '' + IL_0028: ret + } // end of method ServiceCallInterceptionManager::Register + + .method public hidebysig instance void + Unregister(string serviceName) cil managed + { + // Code size 40 (0x28) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000) + .line 75,75 : 9,10 '' + IL_0000: nop + .line 76,76 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0007: dup + IL_0008: stloc.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 77,77 : 17,50 '' + .try + { + IL_000f: ldarg.0 + IL_0010: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0015: ldarg.1 + IL_0016: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::Remove(!0) + IL_001b: pop + IL_001c: leave.s IL_0026 + + } // end .try + finally + { + IL_001e: ldloc.0 + IL_001f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0024: nop + IL_0025: endfinally + } // end handler + IL_0026: nop + .line 78,78 : 9,10 '' + IL_0027: ret + } // end of method ServiceCallInterceptionManager::Unregister + + .property instance class Virtuoso.Miranda.Plugins.Callback + Item(string) + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::set_Item(string, + class Virtuoso.Miranda.Plugins.Callback) + .get instance class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::get_Item(string) + } // end of property ServiceCallInterceptionManager::Item +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.AssemblyProbe + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject +{ + .method public hidebysig newslot abstract virtual + instance string[] FindAssemblies() cil managed + { + } // end of method AssemblyProbe::FindAssemblies + + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + IL_0006: ret + } // end of method AssemblyProbe::.ctor + +} // end of class Virtuoso.Miranda.Plugins.AssemblyProbe + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.DefaultAssemblyProbe + extends Virtuoso.Miranda.Plugins.AssemblyProbe +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 31,31 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\DefaultAssemblyProbe.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.AssemblyProbe::.ctor() + IL_0006: nop + .line 31,31 : 39,40 '' + IL_0007: nop + .line 31,31 : 41,42 '' + IL_0008: nop + IL_0009: ret + } // end of method DefaultAssemblyProbe::.ctor + + .method public hidebysig virtual instance string[] + FindAssemblies() cil managed + { + // Code size 83 (0x53) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Exception e, + [1] string[] CS$1$0000) + .line 38,38 : 9,10 '' + IL_0000: nop + .line 40,40 : 13,14 '' + .try + { + IL_0001: nop + .line 41,42 : 17,126 '' + IL_0002: ldstr "plugins\\managed" + IL_0007: call bool [mscorlib]System.IO.Directory::Exists(string) + IL_000c: brtrue.s IL_0016 + + IL_000e: ldc.i4.0 + IL_000f: newarr [mscorlib]System.String + IL_0014: br.s IL_0025 + + IL_0016: ldstr "plugins\\managed" + IL_001b: ldstr "*.dll" + IL_0020: call string[] [mscorlib]System.IO.Directory::GetFiles(string, + string) + IL_0025: nop + IL_0026: stloc.1 + IL_0027: leave.s IL_0050 + + .line 44,44 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0029: stloc.0 + .line 45,45 : 13,14 '' + IL_002a: nop + .line 46,46 : 17,98 '' + IL_002b: ldc.i4.3 + IL_002c: ldstr "Hyphen" + IL_0031: ldstr "Unable to find plugins: " + IL_0036: ldloc.0 + IL_0037: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_003c: call string [mscorlib]System.String::Concat(string, + string) + IL_0041: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0046: nop + .line 47,47 : 17,38 '' + IL_0047: ldc.i4.0 + IL_0048: newarr [mscorlib]System.String + IL_004d: stloc.1 + IL_004e: leave.s IL_0050 + + } // end handler + IL_0050: nop + .line 49,49 : 9,10 '' + IL_0051: ldloc.1 + IL_0052: ret + } // end of method DefaultAssemblyProbe::FindAssemblies + +} // end of class Virtuoso.Miranda.Plugins.DefaultAssemblyProbe + +.class interface private abstract auto ansi Virtuoso.Miranda.Plugins.IDescriptor +{ +} // end of class Virtuoso.Miranda.Plugins.IDescriptor + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject +{ + .method public hidebysig newslot specialname abstract virtual + instance native int get_MirandaHandle() cil managed + { + } // end of method IMirandaObject::get_MirandaHandle + + .property instance native int MirandaHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject::get_MirandaHandle() + } // end of property IMirandaObject::MirandaHandle +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject +{ + .field private native int mirandaHandle + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 34,34 : 9,34 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaObject.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 34,34 : 35,36 '' + IL_0007: nop + .line 34,34 : 37,38 '' + IL_0008: nop + IL_0009: ret + } // end of method MirandaObject::.ctor + + .method public hidebysig newslot specialname virtual final + instance native int get_MirandaHandle() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 42,42 : 17,18 '' + IL_0000: nop + .line 42,42 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::mirandaHandle + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 42,42 : 41,42 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaObject::get_MirandaHandle + + .method famorassem hidebysig specialname + instance void set_MirandaHandle(native int 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 43,43 : 36,37 '' + IL_0000: nop + .line 43,43 : 38,60 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::mirandaHandle + .line 43,43 : 61,62 '' + IL_0008: ret + } // end of method MirandaObject::set_MirandaHandle + + .property instance native int MirandaHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle(native int) + } // end of property MirandaObject::MirandaHandle +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.EventHandle + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field private initonly class Virtuoso.Miranda.Plugins.MirandaPlugin owner + .field private initonly string eventName + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.MirandaPlugin + get_Owner() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin CS$1$0000) + .line 37,37 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\EventHandle.cs' + IL_0000: nop + .line 37,37 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::owner + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 37,37 : 33,34 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method EventHandle::get_Owner + + .method public hidebysig specialname instance string + get_EventName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 43,43 : 17,18 '' + IL_0000: nop + .line 43,43 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::eventName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 43,43 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method EventHandle::get_EventName + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + string eventName, + native int handle) cil managed + { + // Code size 147 (0x93) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 eventHandles, + [1] bool CS$4$0000) + .line 50,50 : 9,83 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::.ctor() + IL_0006: nop + .line 51,51 : 9,10 '' + IL_0007: nop + .line 52,52 : 13,39 '' + IL_0008: ldarg.3 + IL_0009: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000e: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0013: ldc.i4.0 + IL_0014: ceq + IL_0016: stloc.1 + IL_0017: ldloc.1 + IL_0018: brtrue.s IL_0025 + + .line 53,53 : 17,59 '' + IL_001a: ldstr "handle" + IL_001f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0024: throw + + .line 55,55 : 13,31 '' + IL_0025: ldarg.1 + IL_0026: ldnull + IL_0027: ceq + IL_0029: ldc.i4.0 + IL_002a: ceq + IL_002c: stloc.1 + IL_002d: ldloc.1 + IL_002e: brtrue.s IL_003b + + .line 56,56 : 17,58 '' + IL_0030: ldstr "owner" + IL_0035: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_003a: throw + + .line 58,58 : 13,35 '' + IL_003b: ldarg.2 + IL_003c: ldnull + IL_003d: ceq + IL_003f: ldc.i4.0 + IL_0040: ceq + IL_0042: stloc.1 + IL_0043: ldloc.1 + IL_0044: brtrue.s IL_0051 + + .line 59,59 : 17,62 '' + IL_0046: ldstr "eventName" + IL_004b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0050: throw + + .line 61,61 : 13,32 '' + IL_0051: ldarg.0 + IL_0052: ldarg.1 + IL_0053: stfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::owner + .line 62,62 : 13,41 '' + IL_0058: ldarg.0 + IL_0059: ldarg.3 + IL_005a: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle(native int) + IL_005f: nop + .line 63,63 : 13,40 '' + IL_0060: ldarg.0 + IL_0061: ldarg.2 + IL_0062: stfld string Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::eventName + .line 65,65 : 13,76 '' + IL_0067: ldarg.1 + IL_0068: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_006d: callvirt instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHandles() + IL_0072: stloc.0 + .line 68,68 : 13,14 '' + .try + { + IL_0073: nop + .line 69,69 : 17,75 '' + IL_0074: ldloc.0 + IL_0075: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_007a: nop + .line 70,70 : 17,40 '' + IL_007b: ldloc.0 + IL_007c: ldarg.0 + IL_007d: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0082: nop + .line 71,71 : 13,14 '' + IL_0083: nop + IL_0084: leave.s IL_0090 + + .line 73,73 : 13,14 '' + } // end .try + finally + { + IL_0086: nop + .line 74,74 : 17,63 '' + IL_0087: ldloc.0 + IL_0088: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_008d: nop + .line 75,75 : 13,14 '' + IL_008e: nop + IL_008f: endfinally + } // end handler + IL_0090: nop + .line 76,76 : 9,10 '' + IL_0091: nop + IL_0092: ret + } // end of method EventHandle::.ctor + + .method public hidebysig instance int32 + FireEvent() cil managed + { + // Code size 22 (0x16) + .maxstack 3 + .locals init ([0] int32 CS$1$0000) + .line 83,83 : 9,10 '' + IL_0000: nop + .line 84,84 : 13,57 '' + IL_0001: ldarg.0 + IL_0002: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::FireEvent(native uint, + native int) + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 85,85 : 9,10 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method EventHandle::FireEvent + + .method public hidebysig instance int32 + FireEvent(native uint wParam, + native int lParam) cil managed + { + // Code size 59 (0x3b) + .maxstack 4 + .locals init ([0] class Virtuoso.Hyphen.MirandaPluginLink link, + [1] int32 CS$1$0000, + [2] class Virtuoso.Hyphen.MirandaPluginLink CS$2$0001) + .line 88,88 : 9,10 '' + IL_0000: nop + .line 89,89 : 13,72 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_000b: stloc.0 + .line 91,91 : 13,24 '' + IL_000c: ldloc.0 + IL_000d: dup + IL_000e: stloc.2 + IL_000f: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0014: nop + .line 92,92 : 17,94 '' + .try + { + IL_0015: ldloc.0 + IL_0016: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_001b: ldfld class Virtuoso.Hyphen.Native.NotifyEventHooksPrototype Virtuoso.Hyphen.Native.NativePluginLink::NotifyEventHooks + IL_0020: ldarg.0 + IL_0021: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0026: ldarg.1 + IL_0027: ldarg.2 + IL_0028: callvirt instance int32 Virtuoso.Hyphen.Native.NotifyEventHooksPrototype::Invoke(native int, + native uint, + native int) + IL_002d: stloc.1 + IL_002e: leave.s IL_0038 + + } // end .try + finally + { + IL_0030: ldloc.2 + IL_0031: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0036: nop + IL_0037: endfinally + } // end handler + IL_0038: nop + .line 93,93 : 9,10 '' + IL_0039: ldloc.1 + IL_003a: ret + } // end of method EventHandle::FireEvent + + .method public hidebysig instance void + SetDefaultSubscriber(class Virtuoso.Miranda.Plugins.Callback subscriber) cil managed synchronized + { + // Code size 117 (0x75) + .maxstack 3 + .locals init ([0] class Virtuoso.Hyphen.MirandaPluginLink link, + [1] int32 result, + [2] bool CS$4$0000, + [3] class Virtuoso.Hyphen.MirandaPluginLink CS$2$0001) + .line 97,97 : 9,10 '' + IL_0000: nop + .line 98,98 : 13,36 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 99,99 : 17,63 '' + IL_000c: ldstr "subscriber" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 101,101 : 13,72 '' + IL_0017: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_001c: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0021: stloc.0 + .line 103,103 : 13,24 '' + IL_0022: ldloc.0 + IL_0023: dup + IL_0024: stloc.3 + IL_0025: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_002a: nop + .line 104,104 : 13,14 '' + .try + { + IL_002b: nop + .line 107,107 : 17,117 '' + IL_002c: ldloc.0 + IL_002d: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0032: ldfld class Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::SetHookDefaultForHookableEvent + IL_0037: ldarg.0 + IL_0038: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_003d: ldarg.1 + IL_003e: callvirt instance int32 Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype::Invoke(native int, + class Virtuoso.Miranda.Plugins.Callback) + IL_0043: dup + IL_0044: stloc.1 + IL_0045: ldc.i4.0 + IL_0046: ceq + IL_0048: stloc.2 + IL_0049: ldloc.2 + IL_004a: brtrue.s IL_0068 + + .line 108,108 : 21,186 '' + IL_004c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0051: ldstr "SetHookDefaultForHookableEvent" + IL_0056: ldloca.s result + IL_0058: call instance string [mscorlib]System.Int32::ToString() + IL_005d: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0062: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0067: throw + + .line 109,109 : 13,14 '' + IL_0068: nop + IL_0069: leave.s IL_0073 + + } // end .try + finally + { + IL_006b: ldloc.3 + IL_006c: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0071: nop + IL_0072: endfinally + } // end handler + IL_0073: nop + .line 110,110 : 9,10 '' + IL_0074: ret + } // end of method EventHandle::SetDefaultSubscriber + + .property instance class Virtuoso.Miranda.Plugins.MirandaPlugin + Owner() + { + .get instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::get_Owner() + } // end of property EventHandle::Owner + .property instance string EventName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::get_EventName() + } // end of property EventHandle::EventName +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment + extends [mscorlib]System.Object +{ + .field static assembly literal string MirandaPluginsFolderRelativePath = "plugins\\" + .field static assembly literal string ManagedPluginsFolderName = "managed" + .field static assembly literal string ManagedPluginsFolderRelativePath = "plugins\\managed" + .field private static class [mscorlib]System.Version mirandaVersion + .field private static valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding mirandaStringEncoding + .field private static initonly string mirandaFolderPath + .field private static initonly string mirandaPluginsFolderPath + .field private static initonly string managedPluginsFolderPath + .field private static initonly string mirandaBootIniPath + .method public hidebysig static string + GetManagedSubdirectoryRelativePath(string subDir) cil managed + { + // Code size 17 (0x11) + .maxstack 2 + .locals init ([0] string CS$1$0000) + .line 49,49 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaEnvironment.cs' + IL_0000: nop + .line 50,50 : 13,75 '' + IL_0001: ldstr "plugins\\managed" + IL_0006: ldarg.0 + IL_0007: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 51,51 : 9,10 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method MirandaEnvironment::GetManagedSubdirectoryRelativePath + + .method public hidebysig specialname static + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding + get_MirandaStringEncoding() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding CS$1$0000) + .line 60,60 : 13,14 '' + IL_0000: nop + .line 61,61 : 17,46 '' + IL_0001: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaStringEncoding + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 62,62 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method MirandaEnvironment::get_MirandaStringEncoding + + .method assembly hidebysig specialname static + void set_MirandaStringEncoding(valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 64,64 : 13,14 '' + IL_0000: nop + .line 65,65 : 17,47 '' + IL_0001: ldarg.0 + IL_0002: stsfld valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaStringEncoding + .line 66,66 : 13,14 '' + IL_0007: ret + } // end of method MirandaEnvironment::set_MirandaStringEncoding + + .method public hidebysig specialname static + string get_MirandaFolderPath() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 72,72 : 13,14 '' + IL_0000: nop + .line 73,73 : 17,42 '' + IL_0001: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaFolderPath + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 74,74 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method MirandaEnvironment::get_MirandaFolderPath + + .method public hidebysig specialname static + string get_MirandaPluginsFolderPath() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 80,80 : 13,14 '' + IL_0000: nop + .line 81,81 : 17,49 '' + IL_0001: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaPluginsFolderPath + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 82,82 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method MirandaEnvironment::get_MirandaPluginsFolderPath + + .method public hidebysig specialname static + string get_ManagedPluginsFolderPath() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 88,88 : 13,14 '' + IL_0000: nop + .line 89,89 : 17,49 '' + IL_0001: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::managedPluginsFolderPath + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 90,90 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method MirandaEnvironment::get_ManagedPluginsFolderPath + + .method public hidebysig specialname static + class [mscorlib]System.Version + get_MirandaVersion() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 96,96 : 13,14 '' + IL_0000: nop + .line 97,97 : 17,39 '' + IL_0001: ldsfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaVersion + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 98,98 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method MirandaEnvironment::get_MirandaVersion + + .method assembly hidebysig specialname static + void set_MirandaVersion(class [mscorlib]System.Version 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 100,100 : 13,14 '' + IL_0000: nop + .line 101,101 : 17,40 '' + IL_0001: ldarg.0 + IL_0002: stsfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaVersion + .line 102,102 : 13,14 '' + IL_0007: ret + } // end of method MirandaEnvironment::set_MirandaVersion + + .method public hidebysig specialname static + class [mscorlib]System.Version + get_HyphenVersion() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 108,108 : 13,14 '' + IL_0000: nop + .line 109,109 : 17,45 '' + IL_0001: call class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 110,110 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method MirandaEnvironment::get_HyphenVersion + + .method public hidebysig specialname static + string get_MirandaBootIniPath() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 116,116 : 13,14 '' + IL_0000: nop + .line 117,117 : 17,43 '' + IL_0001: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaBootIniPath + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 118,118 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method MirandaEnvironment::get_MirandaBootIniPath + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 71 (0x47) + .maxstack 2 + .line 39,39 : 9,84 '' + IL_0000: call string [System.Windows.Forms]System.Windows.Forms.Application::get_StartupPath() + IL_0005: stsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaFolderPath + .line 40,40 : 24,117 '' + IL_000a: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaFolderPath + IL_000f: ldstr "plugins\\" + IL_0014: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_0019: stsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaPluginsFolderPath + .line 41,41 : 24,117 '' + IL_001e: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaFolderPath + IL_0023: ldstr "plugins\\managed" + IL_0028: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_002d: stsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::managedPluginsFolderPath + .line 42,42 : 24,85 '' + IL_0032: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaFolderPath + IL_0037: ldstr "\\MirandaBoot.ini" + IL_003c: call string [mscorlib]System.String::Concat(string, + string) + IL_0041: stsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaBootIniPath + IL_0046: ret + } // end of method MirandaEnvironment::.cctor + + .property valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding + MirandaStringEncoding() + { + .get valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaStringEncoding() + .set void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaStringEncoding(valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + } // end of property MirandaEnvironment::MirandaStringEncoding + .property string MirandaFolderPath() + { + .get string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaFolderPath() + } // end of property MirandaEnvironment::MirandaFolderPath + .property string MirandaPluginsFolderPath() + { + .get string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaPluginsFolderPath() + } // end of property MirandaEnvironment::MirandaPluginsFolderPath + .property string ManagedPluginsFolderPath() + { + .get string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath() + } // end of property MirandaEnvironment::ManagedPluginsFolderPath + .property class [mscorlib]System.Version + MirandaVersion() + { + .set void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaVersion(class [mscorlib]System.Version) + .get class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaVersion() + } // end of property MirandaEnvironment::MirandaVersion + .property class [mscorlib]System.Version + HyphenVersion() + { + .get class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_HyphenVersion() + } // end of property MirandaEnvironment::HyphenVersion + .property string MirandaBootIniPath() + { + .get string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaBootIniPath() + } // end of property MirandaEnvironment::MirandaBootIniPath +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment + +.class private abstract auto ansi sealed Virtuoso.Miranda.Plugins.Log + extends [mscorlib]System.Object +{ + .field private static class [System]System.Diagnostics.TraceSwitch traceSwitch + .method public hidebysig specialname static + class [System]System.Diagnostics.TraceSwitch + get_TraceSwitch() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class [System]System.Diagnostics.TraceSwitch CS$1$0000) + .line 32,32 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Log.cs' + IL_0000: nop + .line 32,32 : 19,38 '' + IL_0001: ldsfld class [System]System.Diagnostics.TraceSwitch Virtuoso.Miranda.Plugins.Log::traceSwitch + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 32,32 : 39,40 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method Log::get_TraceSwitch + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 27 (0x1b) + .maxstack 8 + .line 40,40 : 9,10 '' + IL_0000: nop + .line 41,41 : 13,89 '' + IL_0001: ldstr "HyphenTracing" + IL_0006: ldstr "Hyphen Tracing" + IL_000b: ldstr "Warning" + IL_0010: newobj instance void [System]System.Diagnostics.TraceSwitch::.ctor(string, + string, + string) + IL_0015: stsfld class [System]System.Diagnostics.TraceSwitch Virtuoso.Miranda.Plugins.Log::traceSwitch + .line 42,42 : 9,10 '' + IL_001a: ret + } // end of method Log::.cctor + + .method public hidebysig static void DebuggerWrite(int32 priority, + string source, + string message) cil managed + { + .custom instance void [mscorlib]System.Diagnostics.ConditionalAttribute::.ctor(string) = ( 01 00 05 44 45 42 55 47 00 00 ) // ...DEBUG.. + // Code size 11 (0xb) + .maxstack 8 + .line 48,48 : 9,10 '' + IL_0000: nop + .line 49,49 : 13,53 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call void [mscorlib]System.Diagnostics.Debugger::Log(int32, + string, + string) + IL_0009: nop + .line 50,50 : 9,10 '' + IL_000a: ret + } // end of method Log::DebuggerWrite + + .method public hidebysig static void Warning(string message, + string category, + string[] formatArgs) cil managed + { + .param [3] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 26 (0x1a) + .maxstack 8 + .line 53,53 : 9,10 '' + IL_0000: nop + .line 54,54 : 13,103 '' + IL_0001: call class [System]System.Diagnostics.TraceSwitch Virtuoso.Miranda.Plugins.Log::get_TraceSwitch() + IL_0006: callvirt instance bool [System]System.Diagnostics.TraceSwitch::get_TraceWarning() + IL_000b: ldarg.0 + IL_000c: ldarg.2 + IL_000d: call string [mscorlib]System.String::Format(string, + object[]) + IL_0012: ldarg.1 + IL_0013: call void [System]System.Diagnostics.Trace::WriteLineIf(bool, + string, + string) + IL_0018: nop + .line 55,55 : 9,10 '' + IL_0019: ret + } // end of method Log::Warning + + .property class [System]System.Diagnostics.TraceSwitch + TraceSwitch() + { + .get class [System]System.Diagnostics.TraceSwitch Virtuoso.Miranda.Plugins.Log::get_TraceSwitch() + } // end of property Log::TraceSwitch +} // end of class Virtuoso.Miranda.Plugins.Log + +.class public auto ansi sealed beforefieldinit Virtuoso.Hyphen.FusionContext + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field private initonly class Virtuoso.Miranda.Plugins.AssemblyProbe assemblyProbe + .field private initonly native int nativePluginLink + .field private initonly class Virtuoso.Hyphen.Loader loader + .field private static class Virtuoso.Hyphen.FusionContext emptySingleton + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 43,43 : 9,32 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\FusionContext.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + IL_0006: nop + .line 43,43 : 33,34 '' + IL_0007: nop + .line 43,43 : 35,36 '' + IL_0008: nop + IL_0009: ret + } // end of method FusionContext::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Hyphen.Loader loader, + class Virtuoso.Miranda.Plugins.AssemblyProbe pluginProbe, + native int nativePluginLink) cil managed + { + // Code size 104 (0x68) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 45,45 : 9,98 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + IL_0006: nop + .line 46,46 : 9,10 '' + IL_0007: nop + .line 47,47 : 13,32 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 48,48 : 17,59 '' + IL_0013: ldstr "loader" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 50,50 : 13,37 '' + IL_001e: ldarg.2 + IL_001f: ldnull + IL_0020: ceq + IL_0022: ldc.i4.0 + IL_0023: ceq + IL_0025: stloc.0 + IL_0026: ldloc.0 + IL_0027: brtrue.s IL_0034 + + .line 51,51 : 17,64 '' + IL_0029: ldstr "pluginProbe" + IL_002e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0033: throw + + .line 53,53 : 13,49 '' + IL_0034: ldarg.3 + IL_0035: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_003a: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_003f: ldc.i4.0 + IL_0040: ceq + IL_0042: stloc.0 + IL_0043: ldloc.0 + IL_0044: brtrue.s IL_0051 + + .line 54,54 : 17,69 '' + IL_0046: ldstr "nativePluginLink" + IL_004b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0050: throw + + .line 56,56 : 13,34 '' + IL_0051: ldarg.0 + IL_0052: ldarg.1 + IL_0053: stfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.FusionContext::loader + .line 57,57 : 13,46 '' + IL_0058: ldarg.0 + IL_0059: ldarg.2 + IL_005a: stfld class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.FusionContext::assemblyProbe + .line 58,58 : 13,54 '' + IL_005f: ldarg.0 + IL_0060: ldarg.3 + IL_0061: stfld native int Virtuoso.Hyphen.FusionContext::nativePluginLink + .line 59,59 : 9,10 '' + IL_0066: nop + IL_0067: ret + } // end of method FusionContext::.ctor + + .method private hidebysig instance void + CheckEmpty() cil managed + { + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 66,66 : 9,10 '' + IL_0000: nop + .line 68,68 : 13,27 '' + IL_0001: ldarg.0 + IL_0002: call instance bool Virtuoso.Hyphen.FusionContext::get_IsInvalid() + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0019 + + .line 68,68 : 28,90 '' + IL_000e: ldstr "This context is empty." + IL_0013: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0018: throw + + .line 69,69 : 9,10 '' + IL_0019: ret + } // end of method FusionContext::CheckEmpty + + .method public hidebysig specialname instance bool + get_IsInvalid() cil managed + { + // Code size 22 (0x16) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 74,74 : 13,14 '' + IL_0000: nop + .line 75,75 : 17,61 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Hyphen.FusionContext::nativePluginLink + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 76,76 : 13,14 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method FusionContext::get_IsInvalid + + .method assembly hidebysig specialname static + class Virtuoso.Hyphen.FusionContext + get_Empty() cil managed + { + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.FusionContext CS$1$0000) + .line 82,82 : 13,14 '' + IL_0000: nop + .line 83,83 : 17,81 '' + IL_0001: ldsfld class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.FusionContext::emptySingleton + IL_0006: dup + IL_0007: brtrue.s IL_0015 + + IL_0009: pop + IL_000a: newobj instance void Virtuoso.Hyphen.FusionContext::.ctor() + IL_000f: dup + IL_0010: stsfld class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.FusionContext::emptySingleton + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 84,84 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method FusionContext::get_Empty + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.AssemblyProbe + get_AssemblyProbe() cil managed + { + // Code size 19 (0x13) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.AssemblyProbe CS$1$0000) + .line 89,89 : 17,18 '' + IL_0000: nop + .line 89,89 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: call instance void Virtuoso.Hyphen.FusionContext::CheckEmpty() + IL_0007: nop + .line 89,89 : 33,54 '' + IL_0008: ldarg.0 + IL_0009: ldfld class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.FusionContext::assemblyProbe + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 89,89 : 55,56 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method FusionContext::get_AssemblyProbe + + .method assembly hidebysig specialname + instance native int get_NativePluginLink() cil managed + { + // Code size 19 (0x13) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 94,94 : 17,18 '' + IL_0000: nop + .line 94,94 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: call instance void Virtuoso.Hyphen.FusionContext::CheckEmpty() + IL_0007: nop + .line 94,94 : 33,57 '' + IL_0008: ldarg.0 + IL_0009: ldfld native int Virtuoso.Hyphen.FusionContext::nativePluginLink + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 94,94 : 58,59 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method FusionContext::get_NativePluginLink + + .method assembly hidebysig specialname + instance class Virtuoso.Hyphen.Loader + get_Loader() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Hyphen.Loader CS$1$0000) + .line 100,100 : 13,14 '' + IL_0000: nop + .line 101,101 : 17,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.FusionContext::loader + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 102,102 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method FusionContext::get_Loader + + .property instance bool IsInvalid() + { + .get instance bool Virtuoso.Hyphen.FusionContext::get_IsInvalid() + } // end of property FusionContext::IsInvalid + .property class Virtuoso.Hyphen.FusionContext + Empty() + { + .get class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.FusionContext::get_Empty() + } // end of property FusionContext::Empty + .property instance class Virtuoso.Miranda.Plugins.AssemblyProbe + AssemblyProbe() + { + .get instance class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.FusionContext::get_AssemblyProbe() + } // end of property FusionContext::AssemblyProbe + .property instance native int NativePluginLink() + { + .get instance native int Virtuoso.Hyphen.FusionContext::get_NativePluginLink() + } // end of property FusionContext::NativePluginLink + .property instance class Virtuoso.Hyphen.Loader + Loader() + { + .get instance class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.FusionContext::get_Loader() + } // end of property FusionContext::Loader +} // end of class Virtuoso.Hyphen.FusionContext + +.class private auto ansi sealed beforefieldinit Virtuoso.Hyphen.Loader + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject +{ + .field public static literal string LogCategory = "Hyphen" + .field private static literal string ServicePrefix = "Virtuoso.Hyphen.Loader.Services" + .field private static literal string LoadUnloadPluginsServiceName = "Virtuoso.Hyphen.Loader.ServicesLoadUnloadPlugins" + .field private static literal string ConfigureModulesServiceName = "Virtuoso.Hyphen.Loader.ServicesConfigureModules" + .field private static literal string ShowManagedMenuServiceName = "Virtuoso.Hyphen.Loader.ServicesShowManagedMenu" + .field private static literal string ManagePluginsServiceName = "Virtuoso.Hyphen.Loader.ServicesManagePlugins" + .field private static initonly class [System]System.Uri HyphenUpdateUrl + .field private static initonly class [System]System.Uri HyphenVersionUrl + .field private static initonly class [System]System.Uri HyphenHomepageUrl + .field private static initonly class [mscorlib]System.Version MinMirandaVersion + .field private static class Virtuoso.Hyphen.Loader Singleton + .field private static initonly object SyncObject + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Unloaded + .field private class Virtuoso.Hyphen.Native.PLUGININFO pluginInfo + .field private static native int DummyPluginInfo + .field private valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 PluginInfoHandle + .field private valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 PluginInfoExHandle + .field private class Virtuoso.Hyphen.MirandaPluginLink PluginLink + .field private class Virtuoso.Hyphen.FusionContext FusionContext + .field private class Virtuoso.Hyphen.PluginsSandbox IsolatedPluginsSandbox + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute PluginTasksItem + .field private class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu ManagedMainMenu + .field private initonly class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection InternalHooks + .field private class [System]System.IO.FileSystemWatcher PluginsFolderWatcher + .field private initonly class [mscorlib]System.Threading.ManualResetEvent PluginsLoadedEvent + .field private class [mscorlib]System.Threading.Mutex SingleInstanceMutex + .field private class [mscorlib]System.Threading.SynchronizationContext UIThreadSyncContext + .field private static class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 'CS$<>9__CachedAnonymousMethodDelegate2' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private static class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 'CS$<>9__CachedAnonymousMethodDelegate4' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method public hidebysig specialname static + class [mscorlib]System.Version + get_HyphenVersion() cil managed noinlining + { + // Code size 21 (0x15) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 114,114 : 13,14 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Loader.cs' + IL_0000: nop + .line 115,115 : 17,74 '' + IL_0001: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetExecutingAssembly() + IL_0006: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_000b: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_0010: stloc.0 + IL_0011: br.s IL_0013 + + .line 116,116 : 13,14 '' + IL_0013: ldloc.0 + IL_0014: ret + } // end of method Loader::get_HyphenVersion + + .method public hidebysig specialname instance bool + get_PluginsLoaded() cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 126,126 : 13,14 '' + IL_0000: nop + .line 127,127 : 17,55 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 128,128 : 13,14 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method Loader::get_PluginsLoaded + + .method public hidebysig specialname instance class Virtuoso.Hyphen.Native.PLUGININFO + get_PluginInfo() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Hyphen.Native.PLUGININFO CS$1$0000) + .line 137,137 : 13,14 '' + IL_0000: nop + .line 138,138 : 17,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.Native.PLUGININFO Virtuoso.Hyphen.Loader::pluginInfo + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 139,139 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Loader::get_PluginInfo + + .method public hidebysig static void Initialize() cil managed + { + // Code size 53 (0x35) + .maxstack 2 + .locals init ([0] object CS$2$0000, + [1] bool CS$4$0001) + .line 155,155 : 9,10 '' + IL_0000: nop + .line 156,156 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 157,157 : 13,14 '' + .try + { + IL_000e: nop + .line 158,158 : 17,39 '' + IL_000f: ldsfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::Singleton + IL_0014: ldnull + IL_0015: ceq + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: stloc.1 + IL_001b: ldloc.1 + IL_001c: brtrue.s IL_0028 + + .line 159,159 : 21,46 '' + IL_001e: newobj instance void Virtuoso.Hyphen.Loader::.ctor() + IL_0023: stsfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::Singleton + .line 160,160 : 13,14 '' + IL_0028: nop + IL_0029: leave.s IL_0033 + + } // end .try + finally + { + IL_002b: ldloc.0 + IL_002c: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0031: nop + IL_0032: endfinally + } // end handler + IL_0033: nop + .line 161,161 : 9,10 '' + IL_0034: ret + } // end of method Loader::Initialize + + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 145 (0x91) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Exception e) + .line 93,93 : 9,98 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::.ctor() + IL_0006: stfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + .line 96,96 : 9,92 '' + IL_000b: ldarg.0 + IL_000c: ldc.i4.0 + IL_000d: newobj instance void [mscorlib]System.Threading.ManualResetEvent::.ctor(bool) + IL_0012: stfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Hyphen.Loader::PluginsLoadedEvent + .line 166,166 : 9,25 '' + IL_0017: ldarg.0 + IL_0018: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + IL_001d: nop + .line 167,167 : 9,10 '' + IL_001e: nop + .line 168,168 : 13,82 '' + IL_001f: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0024: ldarg.0 + IL_0025: ldftn instance void Virtuoso.Hyphen.Loader::TrapUnhandledException(object, + class [mscorlib]System.UnhandledExceptionEventArgs) + IL_002b: newobj instance void [mscorlib]System.UnhandledExceptionEventHandler::.ctor(object, + native int) + IL_0030: callvirt instance void [mscorlib]System.AppDomain::add_UnhandledException(class [mscorlib]System.UnhandledExceptionEventHandler) + IL_0035: nop + .line 169,169 : 13,73 '' + IL_0036: ldc.i4.0 + IL_0037: ldstr "Hyphen" + IL_003c: ldstr "Initializing Hyphen..." + IL_0041: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0046: nop + .line 172,172 : 13,14 '' + .try + { + IL_0047: nop + .line 173,173 : 17,40 '' + IL_0048: ldarg.0 + IL_0049: call instance void Virtuoso.Hyphen.Loader::InitializePluginInfo() + IL_004e: nop + .line 174,174 : 17,89 '' + IL_004f: call void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::Initialize() + IL_0054: nop + .line 176,176 : 17,87 '' + IL_0055: ldc.i4.0 + IL_0056: ldstr "Hyphen" + IL_005b: ldstr "Hyphen successfully initialized." + IL_0060: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0065: nop + .line 177,177 : 13,14 '' + IL_0066: nop + IL_0067: leave.s IL_008e + + .line 178,178 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0069: stloc.0 + .line 179,179 : 13,14 '' + IL_006a: nop + .line 180,180 : 17,127 '' + IL_006b: ldc.i4.5 + IL_006c: ldstr "Hyphen" + IL_0071: ldstr "Failed constructing the PLUGININFO." + IL_0076: call string [mscorlib]System.Environment::get_NewLine() + IL_007b: ldloc.0 + IL_007c: callvirt instance string [mscorlib]System.Object::ToString() + IL_0081: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_0086: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_008b: nop + .line 181,181 : 17,23 '' + IL_008c: rethrow + } // end handler + IL_008e: nop + .line 183,183 : 9,10 '' + IL_008f: nop + IL_0090: ret + } // end of method Loader::.ctor + + .method private hidebysig instance void + InitializePluginInfo() cil managed + { + // Code size 66 (0x42) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Native.PLUGININFO pluginInfo, + [1] class Virtuoso.Hyphen.Native.PLUGININFOEX pluginInfoEx) + .line 189,189 : 9,10 '' + IL_0000: nop + .line 190,190 : 13,54 '' + IL_0001: newobj instance void Virtuoso.Hyphen.Native.PLUGININFO::.ctor() + IL_0006: stloc.0 + .line 191,191 : 13,44 '' + IL_0007: ldloc.0 + IL_0008: call void Virtuoso.Hyphen.Loader::PopulatePluginInfo(class Virtuoso.Hyphen.Native.PLUGININFO) + IL_000d: nop + .line 192,192 : 13,86 '' + IL_000e: ldarg.0 + IL_000f: ldloca.s pluginInfo + IL_0011: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0016: stfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoHandle + .line 194,194 : 13,75 '' + IL_001b: call valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_HyphenUUID() + IL_0020: newobj instance void Virtuoso.Hyphen.Native.PLUGININFOEX::.ctor(valuetype [mscorlib]System.Guid) + IL_0025: stloc.1 + .line 195,195 : 13,46 '' + IL_0026: ldloc.1 + IL_0027: call void Virtuoso.Hyphen.Loader::PopulatePluginInfo(class Virtuoso.Hyphen.Native.PLUGININFO) + IL_002c: nop + .line 196,196 : 13,92 '' + IL_002d: ldarg.0 + IL_002e: ldloca.s pluginInfoEx + IL_0030: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0035: stfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoExHandle + .line 198,198 : 13,44 '' + IL_003a: ldarg.0 + IL_003b: ldloc.1 + IL_003c: stfld class Virtuoso.Hyphen.Native.PLUGININFO Virtuoso.Hyphen.Loader::pluginInfo + .line 199,199 : 9,10 '' + IL_0041: ret + } // end of method Loader::InitializePluginInfo + + .method private hidebysig static void PopulatePluginInfo(class Virtuoso.Hyphen.Native.PLUGININFO pluginInfo) cil managed + { + // Code size 142 (0x8e) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 206,206 : 9,10 '' + IL_0000: nop + .line 207,207 : 13,36 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 208,208 : 17,63 '' + IL_000c: ldstr "pluginInfo" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 210,210 : 13,68 '' + IL_0017: ldarg.0 + IL_0018: ldarg.0 + IL_0019: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_001e: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0023: stfld int32 Virtuoso.Hyphen.Native.PLUGININFO::Size + .line 211,211 : 13,44 '' + IL_0028: ldarg.0 + IL_0029: ldstr "virtuoso" + IL_002e: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Author + .line 212,212 : 13,61 '' + IL_0033: ldarg.0 + IL_0034: ldstr "deml.tomas@seznam.cz" + IL_0039: stfld string Virtuoso.Hyphen.Native.PLUGININFO::AuthorEmail + .line 213,213 : 13,60 '' + IL_003e: ldarg.0 + IL_003f: ldstr bytearray (A9 00 20 00 32 00 30 00 30 00 36 00 2D 00 32 00 // .. .2.0.0.6.-.2. + 30 00 31 00 30 00 2C 00 20 00 76 00 69 00 72 00 // 0.1.0.,. .v.i.r. + 74 00 75 00 6F 00 73 00 6F 00 ) // t.u.o.s.o. + IL_0044: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Copyright + .line 214,214 : 13,83 '' + IL_0049: ldarg.0 + IL_004a: ldstr "Microsoft.net runtime for managed plugins." + IL_004f: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Description + .line 215,215 : 13,64 '' + IL_0054: ldarg.0 + IL_0055: ldsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenHomepageUrl + IL_005a: callvirt instance string [mscorlib]System.Object::ToString() + IL_005f: stfld string Virtuoso.Hyphen.Native.PLUGININFO::HomePage + .line 216,216 : 13,63 '' + IL_0064: ldarg.0 + IL_0065: ldc.i4.1 + IL_0066: stfld uint8 Virtuoso.Hyphen.Native.PLUGININFO::Flags + .line 217,217 : 13,50 '' + IL_006b: ldarg.0 + IL_006c: ldc.i4.0 + IL_006d: stfld int32 Virtuoso.Hyphen.Native.PLUGININFO::ReplacesDefaultModule + .line 218,218 : 13,45 '' + IL_0072: ldarg.0 + IL_0073: ldstr "Hyphen" + IL_0078: stfld string Virtuoso.Hyphen.Native.PLUGININFO::ShortName + .line 219,219 : 13,76 '' + IL_007d: ldarg.0 + IL_007e: call class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + IL_0083: call uint32 Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToMirandaVersion(class [mscorlib]System.Version) + IL_0088: stfld uint32 Virtuoso.Hyphen.Native.PLUGININFO::Version + .line 220,220 : 9,10 '' + IL_008d: ret + } // end of method Loader::PopulatePluginInfo + + .method public hidebysig static class Virtuoso.Hyphen.Loader + GetInstance(class [mscorlib]System.Version requiredVersion) cil managed noinlining + { + // Code size 33 (0x21) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Loader CS$1$0000, + [1] bool CS$4$0001) + .line 236,236 : 9,10 '' + IL_0000: nop + .line 237,237 : 13,49 '' + IL_0001: ldarg.0 + IL_0002: call class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + IL_0007: call bool [mscorlib]System.Version::op_GreaterThan(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.1 + IL_0010: ldloc.1 + IL_0011: brtrue.s IL_0017 + + .line 238,238 : 17,29 '' + IL_0013: ldnull + IL_0014: stloc.0 + IL_0015: br.s IL_001f + + .line 240,240 : 17,38 '' + IL_0017: call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance() + IL_001c: stloc.0 + IL_001d: br.s IL_001f + + .line 241,241 : 9,10 '' + IL_001f: ldloc.0 + IL_0020: ret + } // end of method Loader::GetInstance + + .method public hidebysig static class Virtuoso.Hyphen.Loader + GetInstance() cil managed + { + // Code size 55 (0x37) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Loader CS$1$0000, + [1] object CS$2$0001, + [2] bool CS$4$0002) + .line 249,249 : 9,10 '' + IL_0000: nop + .line 250,250 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 251,251 : 13,14 '' + .try + { + IL_000e: nop + .line 252,252 : 17,39 '' + IL_000f: ldsfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::Singleton + IL_0014: ldnull + IL_0015: ceq + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: stloc.2 + IL_001b: ldloc.2 + IL_001c: brtrue.s IL_0024 + + .line 253,253 : 21,59 '' + IL_001e: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0023: throw + + .line 255,255 : 17,34 '' + IL_0024: ldsfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::Singleton + IL_0029: stloc.0 + IL_002a: leave.s IL_0034 + + } // end .try + finally + { + IL_002c: ldloc.1 + IL_002d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0032: nop + IL_0033: endfinally + } // end handler + IL_0034: nop + .line 257,257 : 9,10 '' + IL_0035: ldloc.0 + IL_0036: ret + } // end of method Loader::GetInstance + + .method public hidebysig instance native int + MirandaPluginInfo(uint32 version) cil managed + { + // Code size 66 (0x42) + .maxstack 2 + .locals init ([0] native int CS$1$0000, + [1] bool CS$4$0001, + [2] object CS$2$0002) + .line 271,271 : 9,10 '' + IL_0000: nop + .line 272,272 : 13,46 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance void Virtuoso.Hyphen.Loader::MirandaPluginInfoShared(uint32) + IL_0008: nop + .line 274,274 : 13,50 '' + IL_0009: ldarg.1 + IL_000a: call bool Virtuoso.Hyphen.Loader::SupportsMirandaVersion(uint32) + IL_000f: stloc.1 + IL_0010: ldloc.1 + IL_0011: brtrue.s IL_001b + + .line 275,275 : 17,45 '' + IL_0013: call native int Virtuoso.Hyphen.Loader::GetDummyPluginInfo() + IL_0018: stloc.0 + IL_0019: br.s IL_003f + + .line 277,277 : 13,14 '' + IL_001b: nop + .line 278,278 : 17,34 '' + IL_001c: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0021: dup + IL_0022: stloc.2 + IL_0023: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0028: nop + .line 279,279 : 21,52 '' + .try + { + IL_0029: ldarg.0 + IL_002a: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoHandle + IL_002f: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0034: stloc.0 + IL_0035: leave.s IL_003f + + } // end .try + finally + { + IL_0037: ldloc.2 + IL_0038: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_003d: nop + IL_003e: endfinally + } // end handler + IL_003f: nop + .line 281,281 : 9,10 '' + IL_0040: ldloc.0 + IL_0041: ret + } // end of method Loader::MirandaPluginInfo + + .method public hidebysig instance native int + MirandaPluginInfoEx(uint32 version) cil managed + { + // Code size 66 (0x42) + .maxstack 2 + .locals init ([0] native int CS$1$0000, + [1] bool CS$4$0001, + [2] object CS$2$0002) + .line 292,292 : 9,10 '' + IL_0000: nop + .line 293,293 : 13,46 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance void Virtuoso.Hyphen.Loader::MirandaPluginInfoShared(uint32) + IL_0008: nop + .line 295,295 : 13,50 '' + IL_0009: ldarg.1 + IL_000a: call bool Virtuoso.Hyphen.Loader::SupportsMirandaVersion(uint32) + IL_000f: stloc.1 + IL_0010: ldloc.1 + IL_0011: brtrue.s IL_001b + + .line 296,296 : 17,45 '' + IL_0013: call native int Virtuoso.Hyphen.Loader::GetDummyPluginInfo() + IL_0018: stloc.0 + IL_0019: br.s IL_003f + + .line 298,298 : 13,14 '' + IL_001b: nop + .line 299,299 : 17,34 '' + IL_001c: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0021: dup + IL_0022: stloc.2 + IL_0023: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0028: nop + .line 300,300 : 21,54 '' + .try + { + IL_0029: ldarg.0 + IL_002a: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoExHandle + IL_002f: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0034: stloc.0 + IL_0035: leave.s IL_003f + + } // end .try + finally + { + IL_0037: ldloc.2 + IL_0038: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_003d: nop + IL_003e: endfinally + } // end handler + IL_003f: nop + .line 302,302 : 9,10 '' + IL_0040: ldloc.0 + IL_0041: ret + } // end of method Loader::MirandaPluginInfoEx + + .method public hidebysig static native int + GetDummyPluginInfo() cil managed + { + // Code size 100 (0x64) + .maxstack 3 + .locals init ([0] native int CS$1$0000, + [1] object CS$2$0001, + [2] bool CS$4$0002) + .line 309,309 : 9,10 '' + IL_0000: nop + .line 310,310 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 311,311 : 13,14 '' + .try + { + IL_000e: nop + .line 312,312 : 17,52 '' + IL_000f: ldsfld native int Virtuoso.Hyphen.Loader::DummyPluginInfo + IL_0014: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0019: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_001e: ldc.i4.0 + IL_001f: ceq + IL_0021: stloc.2 + IL_0022: ldloc.2 + IL_0023: brtrue.s IL_0051 + + .line 313,313 : 17,18 '' + IL_0025: nop + .line 314,314 : 21,96 '' + IL_0026: ldtoken Virtuoso.Hyphen.Native.PLUGININFO + IL_002b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0030: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0035: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_003a: stsfld native int Virtuoso.Hyphen.Loader::DummyPluginInfo + .line 315,315 : 21,86 '' + IL_003f: newobj instance void Virtuoso.Hyphen.Native.PLUGININFO::.ctor() + IL_0044: ldsfld native int Virtuoso.Hyphen.Loader::DummyPluginInfo + IL_0049: ldc.i4.0 + IL_004a: call void [mscorlib]System.Runtime.InteropServices.Marshal::StructureToPtr(object, + native int, + bool) + IL_004f: nop + .line 316,316 : 17,18 '' + IL_0050: nop + .line 318,318 : 17,40 '' + IL_0051: ldsfld native int Virtuoso.Hyphen.Loader::DummyPluginInfo + IL_0056: stloc.0 + IL_0057: leave.s IL_0061 + + } // end .try + finally + { + IL_0059: ldloc.1 + IL_005a: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_005f: nop + IL_0060: endfinally + } // end handler + IL_0061: nop + .line 320,320 : 9,10 '' + IL_0062: ldloc.0 + IL_0063: ret + } // end of method Loader::GetDummyPluginInfo + + .method public hidebysig instance void + MirandaPluginInfoShared(uint32 version) cil managed + { + // Code size 32 (0x20) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 327,327 : 9,10 '' + IL_0000: nop + .line 328,328 : 13,59 '' + IL_0001: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaVersion() + IL_0006: ldnull + IL_0007: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001f + + .line 329,329 : 17,91 '' + IL_0013: ldarg.1 + IL_0014: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.Translate::FromMirandaVersion(uint32) + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaVersion(class [mscorlib]System.Version) + IL_001e: nop + .line 330,330 : 9,10 '' + IL_001f: ret + } // end of method Loader::MirandaPluginInfoShared + + .method public hidebysig static bool SupportsMirandaVersion(uint32 version) cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 333,333 : 9,10 '' + IL_0000: nop + .line 334,334 : 13,82 '' + IL_0001: ldarg.0 + IL_0002: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.Translate::FromMirandaVersion(uint32) + IL_0007: call bool Virtuoso.Hyphen.Loader::SupportsMirandaVersion(class [mscorlib]System.Version) + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 335,335 : 9,10 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method Loader::SupportsMirandaVersion + + .method public hidebysig static bool SupportsMirandaVersion(class [mscorlib]System.Version version) cil managed + { + // Code size 17 (0x11) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 338,338 : 9,10 '' + IL_0000: nop + .line 339,339 : 13,51 '' + IL_0001: ldarg.0 + IL_0002: ldsfld class [mscorlib]System.Version Virtuoso.Hyphen.Loader::MinMirandaVersion + IL_0007: call bool [mscorlib]System.Version::op_GreaterThanOrEqual(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 340,340 : 9,10 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method Loader::SupportsMirandaVersion + + .method public hidebysig instance native int + MirandaPluginInterfaces() cil managed + { + // Code size 33 (0x21) + .maxstack 2 + .locals init ([0] native int CS$1$0000, + [1] object CS$2$0001) + .line 347,347 : 9,10 '' + IL_0000: nop + .line 348,348 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 349,349 : 17,50 '' + .try + { + IL_000e: call native int Virtuoso.Miranda.Plugins.Native.UUID::get_HyphenInterfaceUUIDs() + IL_0013: stloc.0 + IL_0014: leave.s IL_001e + + } // end .try + finally + { + IL_0016: ldloc.1 + IL_0017: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_001c: nop + IL_001d: endfinally + } // end handler + IL_001e: nop + .line 350,350 : 9,10 '' + IL_001f: ldloc.0 + IL_0020: ret + } // end of method Loader::MirandaPluginInterfaces + + .method public hidebysig instance void + ModuleInducedLoad(native int pPluginLink) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 366,366 : 9,10 '' + IL_0000: nop + .line 367,367 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance int32 Virtuoso.Hyphen.Loader::Load(native int) + IL_0008: pop + .line 368,368 : 9,10 '' + IL_0009: ret + } // end of method Loader::ModuleInducedLoad + + .method public hidebysig instance int32 + Load(native int pPluginLink) cil managed + { + // Code size 182 (0xb6) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Exception e, + [1] int32 CS$1$0000, + [2] object CS$2$0001, + [3] bool CS$4$0002) + .line 376,376 : 9,10 '' + IL_0000: nop + .line 377,377 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.2 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 378,378 : 13,14 '' + .try + { + IL_000e: nop + .line 379,379 : 17,99 '' + IL_000f: ldc.i4.1 + IL_0010: call void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::set_HyphenIsLoading(bool) + IL_0015: nop + .line 382,382 : 17,18 '' + .try + { + .try + { + IL_0016: nop + .line 384,384 : 21,44 '' + IL_0017: ldarg.0 + IL_0018: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.Loader::PluginLink + IL_001d: ldnull + IL_001e: ceq + IL_0020: ldc.i4.0 + IL_0021: ceq + IL_0023: stloc.3 + IL_0024: ldloc.3 + IL_0025: brtrue.s IL_0056 + + .line 385,385 : 21,22 '' + IL_0027: nop + .line 386,386 : 25,80 '' + IL_0028: ldc.i4.0 + IL_0029: ldstr "Hyphen" + IL_002e: ldstr "Loading Hyphen..." + IL_0033: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0038: nop + .line 388,388 : 25,49 '' + IL_0039: call void Virtuoso.Hyphen.Loader::VerifyFxConfiguration() + IL_003e: nop + .line 389,389 : 25,48 '' + IL_003f: ldarg.0 + IL_0040: call instance void Virtuoso.Hyphen.Loader::EnsureSingleInstance() + IL_0045: nop + .line 391,391 : 25,63 '' + IL_0046: ldarg.0 + IL_0047: ldarg.1 + IL_0048: call instance void Virtuoso.Hyphen.Loader::InitializeRuntimeContext(native int) + IL_004d: nop + .line 392,392 : 25,45 '' + IL_004e: ldarg.0 + IL_004f: call instance void Virtuoso.Hyphen.Loader::HookRuntimeEvents() + IL_0054: nop + .line 393,393 : 21,22 '' + IL_0055: nop + .line 395,395 : 21,76 '' + IL_0056: ldc.i4.0 + IL_0057: ldstr "Hyphen" + IL_005c: ldstr "Hyphen is loaded." + IL_0061: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0066: nop + .line 396,396 : 21,51 '' + IL_0067: ldc.i4.0 + IL_0068: stloc.1 + IL_0069: leave.s IL_00b3 + + .line 398,398 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_006b: stloc.0 + .line 399,399 : 17,18 '' + IL_006c: nop + .line 400,400 : 21,98 '' + IL_006d: ldc.i4.5 + IL_006e: ldstr "Hyphen" + IL_0073: ldstr "Failed loading Hyphen - " + IL_0078: ldloc.0 + IL_0079: callvirt instance string [mscorlib]System.Object::ToString() + IL_007e: call string [mscorlib]System.String::Concat(string, + string) + IL_0083: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0088: nop + .line 401,401 : 21,77 '' + IL_0089: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_008e: ldloc.0 + IL_008f: ldnull + IL_0090: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0095: nop + .line 403,403 : 21,30 '' + IL_0096: ldarg.0 + IL_0097: call instance int32 Virtuoso.Hyphen.Loader::Unload() + IL_009c: pop + .line 404,404 : 21,51 '' + IL_009d: ldc.i4.m1 + IL_009e: stloc.1 + IL_009f: leave.s IL_00b3 + + .line 407,407 : 17,18 '' + } // end handler + } // end .try + finally + { + IL_00a1: nop + .line 408,408 : 21,104 '' + IL_00a2: ldc.i4.0 + IL_00a3: call void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::set_HyphenIsLoading(bool) + IL_00a8: nop + .line 409,409 : 17,18 '' + IL_00a9: nop + IL_00aa: endfinally + } // end handler + } // end .try + finally + { + IL_00ab: ldloc.2 + IL_00ac: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00b1: nop + IL_00b2: endfinally + } // end handler + IL_00b3: nop + .line 411,411 : 9,10 '' + IL_00b4: ldloc.1 + IL_00b5: ret + } // end of method Loader::Load + + .method private hidebysig instance void + InitializeRuntimeContext(native int pPluginLink) cil managed + { + // Code size 33 (0x21) + .maxstack 8 + .line 418,418 : 9,10 '' + IL_0000: nop + .line 420,420 : 13,47 '' + IL_0001: call void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Initialize() + IL_0006: nop + .line 423,423 : 13,69 '' + IL_0007: ldarg.0 + IL_0008: ldarg.1 + IL_0009: call class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.MirandaPluginLink::FromPointer(native int) + IL_000e: stfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.Loader::PluginLink + .line 426,426 : 13,64 '' + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.Loader::PluginLink + IL_0019: ldc.i4.1 + IL_001a: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink, + bool) + IL_001f: nop + .line 427,427 : 9,10 '' + IL_0020: ret + } // end of method Loader::InitializeRuntimeContext + + .method private hidebysig instance void + HookRuntimeEvents() cil managed + { + // Code size 85 (0x55) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor modulesLoadedEventHook, + [1] class [mscorlib]System.Exception e) + .line 433,433 : 9,10 '' + IL_0000: nop + .line 435,435 : 13,14 '' + .try + { + IL_0001: nop + .line 436,436 : 17,227 '' + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0008: ldstr "Miranda/System/ModulesLoaded" + IL_000d: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0012: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0017: ldarg.0 + IL_0018: ldftn instance int32 Virtuoso.Hyphen.Loader::CompleteInitialization(native uint, + native int) + IL_001e: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0023: ldc.i4.1 + IL_0024: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0029: stloc.0 + .line 437,437 : 17,64 '' + IL_002a: ldloc.0 + IL_002b: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0030: nop + .line 438,438 : 13,14 '' + IL_0031: nop + IL_0032: leave.s IL_0053 + + .line 439,439 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0034: stloc.1 + .line 440,440 : 13,14 '' + IL_0035: nop + .line 441,441 : 17,121 '' + IL_0036: ldc.i4.5 + IL_0037: ldstr "Hyphen" + IL_003c: ldstr "Failed hooking to the modules-loaded event. Initia" + + "lization failed." + IL_0041: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0046: nop + .line 442,442 : 17,97 '' + IL_0047: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InternalErrorOccurred() + IL_004c: ldloc.1 + IL_004d: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_0052: throw + + } // end handler + IL_0053: nop + .line 444,444 : 9,10 '' + IL_0054: ret + } // end of method Loader::HookRuntimeEvents + + .method private hidebysig instance int32 + CompleteInitialization(native uint wParam, + native int lParam) cil managed + { + // Code size 188 (0xbc) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [1] class [mscorlib]System.Exception e, + [2] int32 CS$1$0000, + [3] object CS$2$0001) + .line 452,452 : 9,10 '' + IL_0000: nop + .line 453,453 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.3 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 454,454 : 13,14 '' + .try + { + IL_000e: nop + .line 456,456 : 17,18 '' + .try + { + IL_000f: nop + .line 458,458 : 21,107 '' + IL_0010: ldarg.0 + IL_0011: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0016: ldstr "Miranda/System/ModulesLoaded" + IL_001b: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Find(string) + IL_0020: stloc.0 + .line 459,459 : 21,57 '' + IL_0021: ldloc.0 + IL_0022: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0027: nop + .line 460,460 : 21,54 '' + IL_0028: ldarg.0 + IL_0029: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_002e: ldloc.0 + IL_002f: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_0034: pop + .line 463,463 : 21,211 '' + IL_0035: ldarg.0 + IL_0036: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_003b: ldstr "Miranda/System/OkToExitEvent" + IL_0040: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0045: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_004a: ldarg.0 + IL_004b: ldftn instance int32 Virtuoso.Hyphen.Loader::UnloadOnShutdownService(native uint, + native int) + IL_0051: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0056: ldc.i4.1 + IL_0057: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_005c: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0061: nop + .line 465,465 : 21,41 '' + IL_0062: call void Virtuoso.Hyphen.Loader::InitializeUpdater() + IL_0067: nop + .line 466,466 : 21,47 '' + IL_0068: ldarg.0 + IL_0069: call instance void Virtuoso.Hyphen.Loader::InitializePluginsFolder() + IL_006e: nop + .line 467,467 : 21,38 '' + IL_006f: ldarg.0 + IL_0070: call instance void Virtuoso.Hyphen.Loader::InitializeMenu() + IL_0075: nop + .line 469,469 : 21,70 '' + IL_0076: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_007b: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::RaiseModulesLoadedEvent() + IL_0080: nop + .line 470,470 : 17,18 '' + IL_0081: nop + IL_0082: leave.s IL_00ac + + .line 471,471 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0084: stloc.1 + .line 472,472 : 17,18 '' + IL_0085: nop + .line 473,473 : 21,100 '' + IL_0086: ldc.i4.5 + IL_0087: ldstr "Hyphen" + IL_008c: ldstr "Failed initializing Loader - " + IL_0091: ldloc.1 + IL_0092: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0097: call string [mscorlib]System.String::Concat(string, + string) + IL_009c: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00a1: nop + .line 474,474 : 21,30 '' + IL_00a2: ldarg.0 + IL_00a3: call instance int32 Virtuoso.Hyphen.Loader::Unload() + IL_00a8: pop + .line 475,475 : 17,18 '' + IL_00a9: nop + IL_00aa: leave.s IL_00ac + + } // end handler + IL_00ac: nop + .line 477,477 : 17,52 '' + IL_00ad: ldc.i4.0 + IL_00ae: stloc.2 + IL_00af: leave.s IL_00b9 + + } // end .try + finally + { + IL_00b1: ldloc.3 + IL_00b2: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00b7: nop + IL_00b8: endfinally + } // end handler + IL_00b9: nop + .line 479,479 : 9,10 '' + IL_00ba: ldloc.2 + IL_00bb: ret + } // end of method Loader::CompleteInitialization + + .method private hidebysig static void InitializeUpdater() cil managed + { + // Code size 49 (0x31) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update update, + [1] bool CS$4$0000) + .line 485,485 : 9,10 '' + IL_0000: nop + .line 486,486 : 13,51 '' + IL_0001: call bool Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin::IsUpdateSupported() + IL_0006: ldc.i4.0 + IL_0007: ceq + IL_0009: stloc.1 + IL_000a: ldloc.1 + IL_000b: brtrue.s IL_0030 + + .line 487,487 : 13,14 '' + IL_000d: nop + .line 488,488 : 17,116 '' + IL_000e: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0013: ldsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenUpdateUrl + IL_0018: ldsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenVersionUrl + IL_001d: ldstr " " + IL_0022: newobj instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [System]System.Uri, + class [System]System.Uri, + string) + IL_0027: stloc.0 + .line 489,489 : 17,57 '' + IL_0028: ldloc.0 + IL_0029: call void Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin::RegisterForUpdate(class Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update) + IL_002e: nop + .line 490,490 : 13,14 '' + IL_002f: nop + .line 491,491 : 9,10 '' + IL_0030: ret + } // end of method Loader::InitializeUpdater + + .method private hidebysig instance void + InitializePluginsFolder() cil managed + { + // Code size 147 (0x93) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 497,497 : 9,10 '' + IL_0000: nop + .line 498,498 : 13,80 '' + IL_0001: call string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath() + IL_0006: call bool [mscorlib]System.IO.Directory::Exists(string) + IL_000b: stloc.0 + IL_000c: ldloc.0 + IL_000d: brtrue.s IL_001a + + .line 499,499 : 17,88 '' + IL_000f: call string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath() + IL_0014: call class [mscorlib]System.IO.DirectoryInfo [mscorlib]System.IO.Directory::CreateDirectory(string) + IL_0019: pop + .line 501,501 : 13,112 '' + IL_001a: ldarg.0 + IL_001b: call string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath() + IL_0020: ldstr "*.dll" + IL_0025: newobj instance void [System]System.IO.FileSystemWatcher::.ctor(string, + string) + IL_002a: stfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + .line 502,502 : 13,64 '' + IL_002f: ldarg.0 + IL_0030: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0035: ldc.i4.0 + IL_0036: callvirt instance void [System]System.IO.FileSystemWatcher::set_IncludeSubdirectories(bool) + IL_003b: nop + .line 503,503 : 13,73 '' + IL_003c: ldarg.0 + IL_003d: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0042: ldc.i4.s 16 + IL_0044: callvirt instance void [System]System.IO.FileSystemWatcher::set_NotifyFilter(valuetype [System]System.IO.NotifyFilters) + IL_0049: nop + .line 504,504 : 13,67 '' + IL_004a: ldarg.0 + IL_004b: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0050: ldarg.0 + IL_0051: ldftn instance void Virtuoso.Hyphen.Loader::PluginsWatcherHandler(object, + class [System]System.IO.FileSystemEventArgs) + IL_0057: newobj instance void [System]System.IO.FileSystemEventHandler::.ctor(object, + native int) + IL_005c: callvirt instance void [System]System.IO.FileSystemWatcher::add_Deleted(class [System]System.IO.FileSystemEventHandler) + IL_0061: nop + .line 505,505 : 13,67 '' + IL_0062: ldarg.0 + IL_0063: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0068: ldarg.0 + IL_0069: ldftn instance void Virtuoso.Hyphen.Loader::PluginsWatcherHandler(object, + class [System]System.IO.FileSystemEventArgs) + IL_006f: newobj instance void [System]System.IO.FileSystemEventHandler::.ctor(object, + native int) + IL_0074: callvirt instance void [System]System.IO.FileSystemWatcher::add_Changed(class [System]System.IO.FileSystemEventHandler) + IL_0079: nop + .line 506,506 : 13,67 '' + IL_007a: ldarg.0 + IL_007b: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0080: ldarg.0 + IL_0081: ldftn instance void Virtuoso.Hyphen.Loader::PluginsWatcherHandler(object, + class [System]System.IO.FileSystemEventArgs) + IL_0087: newobj instance void [System]System.IO.FileSystemEventHandler::.ctor(object, + native int) + IL_008c: callvirt instance void [System]System.IO.FileSystemWatcher::add_Created(class [System]System.IO.FileSystemEventHandler) + IL_0091: nop + .line 507,507 : 9,10 '' + IL_0092: ret + } // end of method Loader::InitializePluginsFolder + + .method private hidebysig instance void + InitializeMenu() cil managed + { + // Code size 394 (0x18a) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactList clist, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item, + [3] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute CS$0$0000) + .line 513,513 : 9,10 '' + IL_0000: nop + .line 514,514 : 13,85 '' + IL_0001: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0006: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_000b: stloc.0 + .line 515,515 : 13,68 '' + IL_000c: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0011: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList() + IL_0016: stloc.1 + .line 518,518 : 13,175 '' + IL_0017: ldarg.0 + IL_0018: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_001d: ldstr "Virtuoso.Hyphen.Loader.ServicesLoadUnloadPlugins" + IL_0022: ldloc.0 + IL_0023: ldarg.0 + IL_0024: ldftn instance int32 Virtuoso.Hyphen.Loader::LoadUnloadPluginsService(native uint, + native int) + IL_002a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_002f: ldc.i4.2 + IL_0030: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0035: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_003a: nop + .line 519,519 : 13,173 '' + IL_003b: ldarg.0 + IL_003c: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0041: ldstr "Virtuoso.Hyphen.Loader.ServicesConfigureModules" + IL_0046: ldloc.0 + IL_0047: ldarg.0 + IL_0048: ldftn instance int32 Virtuoso.Hyphen.Loader::ConfigureModulesService(native uint, + native int) + IL_004e: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0053: ldc.i4.2 + IL_0054: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0059: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_005e: nop + .line 520,520 : 13,171 '' + IL_005f: ldarg.0 + IL_0060: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0065: ldstr "Virtuoso.Hyphen.Loader.ServicesShowManagedMenu" + IL_006a: ldloc.0 + IL_006b: ldarg.0 + IL_006c: ldftn instance int32 Virtuoso.Hyphen.Loader::ShowManagedMenuService(native uint, + native int) + IL_0072: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0077: ldc.i4.2 + IL_0078: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_007d: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0082: nop + .line 521,521 : 13,167 '' + IL_0083: ldarg.0 + IL_0084: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0089: ldstr "Virtuoso.Hyphen.Loader.ServicesManagePlugins" + IL_008e: ldloc.0 + IL_008f: ldarg.0 + IL_0090: ldftn instance int32 Virtuoso.Hyphen.Loader::ManagePluginsService(native uint, + native int) + IL_0096: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_009b: ldc.i4.2 + IL_009c: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_00a1: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_00a6: nop + .line 523,523 : 13,37 '' + IL_00a7: ldarg.0 + IL_00a8: call instance void Virtuoso.Hyphen.Loader::InitializeManagedMenu() + IL_00ad: nop + .line 525,525 : 13,183 '' + IL_00ae: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_LoadUnloadPlugins() + IL_00b3: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Hyphen() + IL_00b8: ldstr "Virtuoso.Hyphen.Loader.ServicesLoadUnloadPlugins" + IL_00bd: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string) + IL_00c2: stloc.2 + .line 526,526 : 13,44 '' + IL_00c3: ldloc.2 + IL_00c4: ldc.i4.0 + IL_00c5: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem(bool) + IL_00ca: nop + .line 527,527 : 13,33 '' + IL_00cb: ldloc.2 + IL_00cc: ldc.i4.1 + IL_00cd: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon(bool) + IL_00d2: nop + .line 528,528 : 13,41 '' + IL_00d3: ldloc.2 + IL_00d4: ldc.i4.1 + IL_00d5: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon(bool) + IL_00da: nop + .line 529,529 : 13,86 '' + IL_00db: ldloc.2 + IL_00dc: ldstr "Virtuoso.Miranda.Plugins.Resources.LoadUnloadPlugi" + + "ns.ico" + IL_00e1: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID(string) + IL_00e6: nop + .line 530,530 : 13,69 '' + IL_00e7: ldloc.1 + IL_00e8: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_00ed: ldloc.2 + IL_00ee: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_00f3: nop + .line 532,532 : 13,164 '' + IL_00f4: ldarg.0 + IL_00f5: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ManagePlugins() + IL_00fa: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Hyphen() + IL_00ff: ldstr "Virtuoso.Hyphen.Loader.ServicesManagePlugins" + IL_0104: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string) + IL_0109: dup + IL_010a: stloc.3 + IL_010b: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Virtuoso.Hyphen.Loader::PluginTasksItem + IL_0110: ldloc.3 + IL_0111: stloc.2 + .line 533,533 : 13,44 '' + IL_0112: ldloc.2 + IL_0113: ldc.i4.0 + IL_0114: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem(bool) + IL_0119: nop + .line 534,534 : 13,33 '' + IL_011a: ldloc.2 + IL_011b: ldc.i4.1 + IL_011c: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon(bool) + IL_0121: nop + .line 535,535 : 13,41 '' + IL_0122: ldloc.2 + IL_0123: ldc.i4.1 + IL_0124: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon(bool) + IL_0129: nop + .line 536,536 : 13,78 '' + IL_012a: ldloc.2 + IL_012b: ldstr "Virtuoso.Miranda.Plugins.Resources.Configure.ico" + IL_0130: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID(string) + IL_0135: nop + .line 537,537 : 13,69 '' + IL_0136: ldloc.1 + IL_0137: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_013c: ldloc.2 + IL_013d: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_0142: nop + .line 539,539 : 13,162 '' + IL_0143: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ConfigureStandaloneModules() + IL_0148: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Hyphen() + IL_014d: ldstr "Virtuoso.Hyphen.Loader.ServicesConfigureModules" + IL_0152: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string) + IL_0157: stloc.2 + .line 540,540 : 13,44 '' + IL_0158: ldloc.2 + IL_0159: ldc.i4.0 + IL_015a: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem(bool) + IL_015f: nop + .line 541,541 : 13,33 '' + IL_0160: ldloc.2 + IL_0161: ldc.i4.1 + IL_0162: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon(bool) + IL_0167: nop + .line 542,542 : 13,41 '' + IL_0168: ldloc.2 + IL_0169: ldc.i4.1 + IL_016a: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon(bool) + IL_016f: nop + .line 543,543 : 13,78 '' + IL_0170: ldloc.2 + IL_0171: ldstr "Virtuoso.Miranda.Plugins.Resources.Configure.ico" + IL_0176: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID(string) + IL_017b: nop + .line 544,544 : 13,69 '' + IL_017c: ldloc.1 + IL_017d: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0182: ldloc.2 + IL_0183: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_0188: nop + .line 545,545 : 9,10 '' + IL_0189: ret + } // end of method Loader::InitializeMenu + + .method private hidebysig instance void + InitializeManagedMenu() cil managed + { + // Code size 87 (0x57) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item) + .line 551,551 : 9,10 '' + IL_0000: nop + .line 552,552 : 13,53 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::.ctor() + IL_0007: stfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu Virtuoso.Hyphen.Loader::ManagedMainMenu + .line 554,554 : 13,153 '' + IL_000c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ShowManagedMainMenu() + IL_0011: ldstr "Virtuoso.Hyphen.Loader.ServicesShowManagedMenu" + IL_0016: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string) + IL_001b: stloc.0 + .line 555,555 : 13,44 '' + IL_001c: ldloc.0 + IL_001d: ldc.i4.0 + IL_001e: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem(bool) + IL_0023: nop + .line 556,556 : 13,33 '' + IL_0024: ldloc.0 + IL_0025: ldc.i4.1 + IL_0026: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon(bool) + IL_002b: nop + .line 557,557 : 13,41 '' + IL_002c: ldloc.0 + IL_002d: ldc.i4.1 + IL_002e: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon(bool) + IL_0033: nop + .line 558,558 : 13,89 '' + IL_0034: ldloc.0 + IL_0035: ldstr "Virtuoso.Miranda.Plugins.Resources.ShowManagedMenu" + + "Items.ico" + IL_003a: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID(string) + IL_003f: nop + .line 561,561 : 13,98 '' + IL_0040: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0045: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList() + IL_004a: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_004f: ldloc.0 + IL_0050: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_0055: nop + .line 562,562 : 9,10 '' + IL_0056: ret + } // end of method Loader::InitializeManagedMenu + + .method public hidebysig instance int32 + Unload() cil managed + { + // Code size 217 (0xd9) + .maxstack 4 + .locals init ([0] bool lazy, + [1] class [mscorlib]System.Exception e, + [2] int32 CS$1$0000, + [3] object CS$2$0001, + [4] bool CS$4$0002) + .line 580,580 : 9,10 '' + IL_0000: nop + .line 581,581 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.3 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 582,582 : 13,14 '' + .try + { + IL_000e: nop + .line 584,584 : 17,18 '' + .try + { + .try + { + IL_000f: nop + .line 585,585 : 21,79 '' + IL_0010: ldc.i4.0 + IL_0011: ldstr "Hyphen" + IL_0016: ldstr "Hyphen unload begin." + IL_001b: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0020: nop + .line 587,587 : 21,34 '' + IL_0021: ldarg.0 + IL_0022: volatile. + IL_0024: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Loader::Unloaded + IL_0029: ldc.i4.0 + IL_002a: ceq + IL_002c: stloc.s CS$4$0002 + IL_002e: ldloc.s CS$4$0002 + IL_0030: brtrue.s IL_0039 + + .line 588,588 : 25,60 '' + IL_0032: ldc.i4.0 + IL_0033: stloc.2 + IL_0034: leave IL_00d6 + + .line 590,590 : 21,58 '' + IL_0039: call bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Initialized() + IL_003e: ldc.i4.0 + IL_003f: ceq + IL_0041: stloc.s CS$4$0002 + IL_0043: ldloc.s CS$4$0002 + IL_0045: brtrue.s IL_0052 + + .line 591,591 : 25,63 '' + IL_0047: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_004c: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save() + IL_0051: nop + .line 593,593 : 21,78 '' + IL_0052: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0057: callvirt instance bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_UseLazyUnload() + IL_005c: stloc.0 + .line 595,595 : 21,39 '' + IL_005d: ldarg.0 + IL_005e: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0063: ldc.i4.0 + IL_0064: ceq + IL_0066: stloc.s CS$4$0002 + IL_0068: ldloc.s CS$4$0002 + IL_006a: brtrue.s IL_0074 + + .line 596,596 : 25,45 '' + IL_006c: ldarg.0 + IL_006d: ldloc.0 + IL_006e: call instance void Virtuoso.Hyphen.Loader::UnloadPlugins(bool) + IL_0073: nop + .line 599,599 : 21,30 '' + IL_0074: ldloc.0 + IL_0075: ldc.i4.0 + IL_0076: ceq + IL_0078: stloc.s CS$4$0002 + IL_007a: ldloc.s CS$4$0002 + IL_007c: brtrue.s IL_0093 + + .line 600,600 : 21,22 '' + IL_007e: nop + .line 601,601 : 25,85 '' + IL_007f: ldc.i4.0 + IL_0080: ldstr "Hyphen" + IL_0085: ldstr "Lazy unload completed." + IL_008a: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_008f: nop + .line 602,602 : 21,22 '' + IL_0090: nop + IL_0091: br.s IL_009c + + .line 605,605 : 21,22 '' + IL_0093: nop + .line 606,606 : 25,45 '' + IL_0094: ldarg.0 + IL_0095: call instance void Virtuoso.Hyphen.Loader::PerformFullUnload() + IL_009a: nop + .line 607,607 : 21,22 '' + IL_009b: nop + .line 609,609 : 21,56 '' + IL_009c: ldc.i4.0 + IL_009d: stloc.2 + IL_009e: leave.s IL_00d6 + + .line 611,611 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_00a0: stloc.1 + .line 612,612 : 17,18 '' + IL_00a1: nop + .line 613,613 : 21,100 '' + IL_00a2: ldc.i4.5 + IL_00a3: ldstr "Hyphen" + IL_00a8: ldstr "Failed unloading Hyphen.\n" + IL_00ad: ldloc.1 + IL_00ae: callvirt instance string [mscorlib]System.Object::ToString() + IL_00b3: call string [mscorlib]System.String::Concat(string, + string) + IL_00b8: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00bd: nop + .line 614,614 : 21,56 '' + IL_00be: ldc.i4.m1 + IL_00bf: stloc.2 + IL_00c0: leave.s IL_00d6 + + .line 617,617 : 17,18 '' + } // end handler + } // end .try + finally + { + IL_00c2: nop + .line 618,618 : 21,37 '' + IL_00c3: ldarg.0 + IL_00c4: ldc.i4.1 + IL_00c5: volatile. + IL_00c7: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Loader::Unloaded + .line 619,619 : 17,18 '' + IL_00cc: nop + IL_00cd: endfinally + } // end handler + } // end .try + finally + { + IL_00ce: ldloc.3 + IL_00cf: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00d4: nop + IL_00d5: endfinally + } // end handler + IL_00d6: nop + .line 621,621 : 9,10 '' + IL_00d7: ldloc.2 + IL_00d8: ret + } // end of method Loader::Unload + + .method private hidebysig instance void + PerformFullUnload() cil managed + { + // Code size 87 (0x57) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 627,627 : 9,10 '' + IL_0000: nop + .line 628,628 : 13,37 '' + IL_0001: ldarg.0 + IL_0002: call instance void Virtuoso.Hyphen.Loader::DisposePluginsWatcher() + IL_0007: nop + .line 630,630 : 13,37 '' + IL_0008: ldarg.0 + IL_0009: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoHandle + IL_000e: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_0013: nop + .line 631,631 : 13,39 '' + IL_0014: ldarg.0 + IL_0015: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoExHandle + IL_001a: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_001f: nop + .line 633,633 : 13,41 '' + IL_0020: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Dispose() + IL_0025: nop + .line 636,636 : 13,83 '' + IL_0026: call bool Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Initialized() + IL_002b: brfalse.s IL_0039 + + IL_002d: call class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + IL_0032: callvirt instance bool Virtuoso.Hyphen.Mini.ModuleManager::get_HasModules() + IL_0037: br.s IL_003a + + IL_0039: ldc.i4.1 + IL_003a: nop + IL_003b: stloc.0 + IL_003c: ldloc.0 + IL_003d: brtrue.s IL_0045 + + .line 637,637 : 17,52 '' + IL_003f: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InvalidateCurrent() + IL_0044: nop + .line 639,639 : 13,68 '' + IL_0045: ldc.i4.0 + IL_0046: ldstr "Hyphen" + IL_004b: ldstr "Unload completed." + IL_0050: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0055: nop + .line 640,640 : 9,10 '' + IL_0056: ret + } // end of method Loader::PerformFullUnload + + .method private hidebysig instance void + DisposePluginsWatcher() cil managed + { + // Code size 27 (0x1b) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 646,646 : 9,10 '' + IL_0000: nop + .line 647,647 : 13,46 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_001a + + .line 648,648 : 17,48 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0014: callvirt instance void [System]System.ComponentModel.Component::Dispose() + IL_0019: nop + .line 649,649 : 9,10 '' + IL_001a: ret + } // end of method Loader::DisposePluginsWatcher + + .method private hidebysig instance void + DisposePluginTasksMenu() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 655,655 : 9,10 '' + IL_0000: nop + .line 658,658 : 9,10 '' + IL_0001: ret + } // end of method Loader::DisposePluginTasksMenu + + .method private hidebysig instance int32 + UnloadOnShutdownService(native uint wParam, + native int lParam) cil managed + { + // Code size 160 (0xa0) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [1] class [mscorlib]System.Exception e, + [2] int32 CS$1$0000, + [3] object CS$2$0001, + [4] bool CS$4$0002) + .line 664,664 : 9,10 '' + IL_0000: nop + .line 666,666 : 13,14 '' + .try + { + IL_0001: nop + .line 667,667 : 17,34 '' + IL_0002: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0007: dup + IL_0008: stloc.3 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 668,668 : 17,18 '' + .try + { + IL_000f: nop + .line 669,669 : 21,102 '' + IL_0010: ldarg.0 + IL_0011: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0016: ldstr "Miranda/System/OkToExitEvent" + IL_001b: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Find(string) + IL_0020: stloc.0 + .line 670,670 : 21,57 '' + IL_0021: ldloc.0 + IL_0022: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0027: nop + .line 671,671 : 21,54 '' + IL_0028: ldarg.0 + IL_0029: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_002e: ldloc.0 + IL_002f: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_0034: pop + .line 673,673 : 21,39 '' + IL_0035: ldarg.0 + IL_0036: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_003b: ldc.i4.0 + IL_003c: ceq + IL_003e: stloc.s CS$4$0002 + IL_0040: ldloc.s CS$4$0002 + IL_0042: brtrue.s IL_0062 + + .line 674,674 : 25,127 '' + IL_0044: ldarg.0 + IL_0045: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_004a: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_004f: ldnull + IL_0050: ldftn void Virtuoso.Hyphen.Loader::BroadcastBeforeMirandaExitEvent(class Virtuoso.Miranda.Plugins.PluginManagerBase, + object) + IL_0056: newobj instance void class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1::.ctor(object, + native int) + IL_005b: ldnull + IL_005c: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::DoContextCallback(class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1, + !!0) + IL_0061: nop + .line 676,676 : 21,30 '' + IL_0062: ldarg.0 + IL_0063: call instance int32 Virtuoso.Hyphen.Loader::Unload() + IL_0068: pop + .line 677,677 : 17,18 '' + IL_0069: nop + IL_006a: leave.s IL_0074 + + } // end .try + finally + { + IL_006c: ldloc.3 + IL_006d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0072: nop + IL_0073: endfinally + } // end handler + IL_0074: nop + .line 678,678 : 13,14 '' + IL_0075: nop + IL_0076: leave.s IL_0099 + + .line 679,679 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0078: stloc.1 + .line 680,680 : 13,14 '' + IL_0079: nop + .line 681,681 : 17,121 '' + IL_007a: ldc.i4.5 + IL_007b: ldstr "Hyphen" + IL_0080: ldstr "Unable to unload Hyphen from UnloadOnShutdownServi" + + "ce: " + IL_0085: ldloc.1 + IL_0086: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_008b: call string [mscorlib]System.String::Concat(string, + string) + IL_0090: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0095: nop + .line 682,682 : 13,14 '' + IL_0096: nop + IL_0097: leave.s IL_0099 + + } // end handler + IL_0099: nop + .line 684,684 : 13,22 '' + IL_009a: ldc.i4.0 + IL_009b: stloc.2 + IL_009c: br.s IL_009e + + .line 685,685 : 9,10 '' + IL_009e: ldloc.2 + IL_009f: ret + } // end of method Loader::UnloadOnShutdownService + + .method private hidebysig static void BroadcastBeforeMirandaExitEvent(class Virtuoso.Miranda.Plugins.PluginManagerBase sender, + object state) cil managed + { + // Code size 121 (0x79) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000, + [2] bool CS$4$0001) + .line 691,691 : 9,10 '' + IL_0000: nop + .line 693,693 : 13,14 '' + .try + { + IL_0001: nop + .line 694,694 : 17,77 '' + IL_0002: ldarg.0 + IL_0003: callvirt instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + IL_0008: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_000d: nop + .line 696,696 : 17,24 '' + IL_000e: nop + .line 696,696 : 57,71 '' + IL_000f: ldarg.0 + IL_0010: callvirt instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + IL_0015: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_001a: stloc.1 + .try + { + IL_001b: br.s IL_0048 + + .line 696,696 : 26,53 '' + IL_001d: ldloc.1 + IL_001e: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0023: stloc.0 + .line 697,697 : 17,18 '' + IL_0024: nop + .line 699,699 : 21,22 '' + .try + { + IL_0025: nop + .line 700,700 : 25,81 '' + IL_0026: ldloc.0 + IL_0027: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + IL_002c: nop + .line 701,701 : 25,75 '' + IL_002d: ldloc.0 + IL_002e: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0033: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforeMirandaShutdownInternal() + IL_0038: nop + .line 702,702 : 21,22 '' + IL_0039: nop + IL_003a: leave.s IL_0046 + + .line 704,704 : 21,22 '' + } // end .try + finally + { + IL_003c: nop + .line 705,705 : 25,69 '' + IL_003d: ldloc.0 + IL_003e: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0043: nop + .line 706,706 : 21,22 '' + IL_0044: nop + IL_0045: endfinally + } // end handler + IL_0046: nop + .line 707,707 : 17,18 '' + IL_0047: nop + .line 696,696 : 54,56 '' + IL_0048: ldloc.1 + IL_0049: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_004e: stloc.2 + IL_004f: ldloc.2 + IL_0050: brtrue.s IL_001d + + IL_0052: leave.s IL_0064 + + } // end .try + finally + { + IL_0054: ldloc.1 + IL_0055: ldnull + IL_0056: ceq + IL_0058: stloc.2 + IL_0059: ldloc.2 + IL_005a: brtrue.s IL_0063 + + IL_005c: ldloc.1 + IL_005d: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0062: nop + IL_0063: endfinally + } // end handler + IL_0064: nop + .line 708,708 : 13,14 '' + IL_0065: nop + IL_0066: leave.s IL_0077 + + .line 710,710 : 13,14 '' + } // end .try + finally + { + IL_0068: nop + .line 711,711 : 17,65 '' + IL_0069: ldarg.0 + IL_006a: callvirt instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + IL_006f: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0074: nop + .line 712,712 : 13,14 '' + IL_0075: nop + IL_0076: endfinally + } // end handler + IL_0077: nop + .line 713,713 : 9,10 '' + IL_0078: ret + } // end of method Loader::BroadcastBeforeMirandaExitEvent + + .method private hidebysig instance int32 + LoadUnloadPluginsService(native uint wParam, + native int lParam) cil managed + { + // Code size 110 (0x6e) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Exception e, + [1] int32 CS$1$0000, + [2] object CS$2$0001, + [3] bool CS$4$0002) + .line 731,731 : 9,10 '' + IL_0000: nop + .line 732,732 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.2 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 733,733 : 13,14 '' + .try + { + IL_000e: nop + .line 735,735 : 17,18 '' + .try + { + IL_000f: nop + .line 736,736 : 21,40 '' + IL_0010: ldarg.0 + IL_0011: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0016: stloc.3 + IL_0017: ldloc.3 + IL_0018: brtrue.s IL_0023 + + .line 737,737 : 25,39 '' + IL_001a: ldarg.0 + IL_001b: call instance void Virtuoso.Hyphen.Loader::LoadPlugins() + IL_0020: nop + IL_0021: br.s IL_0046 + + .line 738,738 : 26,215 '' + IL_0023: ldc.i4.6 + IL_0024: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_LoadUnloadPlugins_Unload() + IL_0029: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_LoadUnloadPlugins() + IL_002e: ldc.i4.4 + IL_002f: ldc.i4.s 48 + IL_0031: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0036: ceq + IL_0038: ldc.i4.0 + IL_0039: ceq + IL_003b: stloc.3 + IL_003c: ldloc.3 + IL_003d: brtrue.s IL_0046 + + .line 739,739 : 25,41 '' + IL_003f: ldarg.0 + IL_0040: call instance void Virtuoso.Hyphen.Loader::UnloadPlugins() + IL_0045: nop + .line 740,740 : 17,18 '' + IL_0046: nop + IL_0047: leave.s IL_005b + + .line 741,741 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0049: stloc.0 + .line 742,742 : 17,18 '' + IL_004a: nop + .line 743,743 : 21,77 '' + IL_004b: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0050: ldloc.0 + IL_0051: ldnull + IL_0052: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0057: nop + .line 744,744 : 17,18 '' + IL_0058: nop + IL_0059: leave.s IL_005b + + } // end handler + IL_005b: nop + .line 745,745 : 13,14 '' + IL_005c: nop + IL_005d: leave.s IL_0067 + + } // end .try + finally + { + IL_005f: ldloc.2 + IL_0060: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0065: nop + IL_0066: endfinally + } // end handler + IL_0067: nop + .line 747,747 : 13,48 '' + IL_0068: ldc.i4.0 + IL_0069: stloc.1 + IL_006a: br.s IL_006c + + .line 748,748 : 9,10 '' + IL_006c: ldloc.1 + IL_006d: ret + } // end of method Loader::LoadUnloadPluginsService + + .method private hidebysig instance void + ReloadPlugins() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 754,754 : 9,10 '' + IL_0000: nop + .line 755,755 : 13,29 '' + IL_0001: ldarg.0 + IL_0002: call instance void Virtuoso.Hyphen.Loader::UnloadPlugins() + IL_0007: nop + .line 756,756 : 13,27 '' + IL_0008: ldarg.0 + IL_0009: call instance void Virtuoso.Hyphen.Loader::LoadPlugins() + IL_000e: nop + .line 757,757 : 9,10 '' + IL_000f: ret + } // end of method Loader::ReloadPlugins + + .method private hidebysig instance void + LoadPlugins() cil managed + { + // Code size 77 (0x4d) + .maxstack 2 + .locals init ([0] object CS$2$0000, + [1] bool CS$4$0001) + .line 763,763 : 9,10 '' + IL_0000: nop + .line 764,764 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 765,765 : 13,14 '' + .try + { + IL_000e: nop + .line 766,766 : 17,35 '' + IL_000f: ldarg.0 + IL_0010: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0015: ldc.i4.0 + IL_0016: ceq + IL_0018: stloc.1 + IL_0019: ldloc.1 + IL_001a: brtrue.s IL_0027 + + .line 767,767 : 21,107 '' + IL_001c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InternalErrorOccurred() + IL_0021: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0026: throw + + .line 769,769 : 17,45 '' + IL_0027: ldarg.0 + IL_0028: call instance void Virtuoso.Hyphen.Loader::InitializePluginTasksMenu() + IL_002d: nop + .line 772,772 : 17,62 '' + IL_002e: ldarg.0 + IL_002f: ldftn instance void Virtuoso.Hyphen.Loader::StartFusion() + IL_0035: newobj instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate::.ctor(object, + native int) + IL_003a: call void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::ShowDialog(class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate) + IL_003f: nop + .line 773,773 : 13,14 '' + IL_0040: nop + IL_0041: leave.s IL_004b + + } // end .try + finally + { + IL_0043: ldloc.0 + IL_0044: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0049: nop + IL_004a: endfinally + } // end handler + IL_004b: nop + .line 774,774 : 9,10 '' + IL_004c: ret + } // end of method Loader::LoadPlugins + + .method private hidebysig instance void + StartFusion() cil managed + { + // Code size 95 (0x5f) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Exception e) + .line 780,780 : 9,10 '' + IL_0000: nop + .line 781,781 : 13,69 '' + IL_0001: ldc.i4.0 + IL_0002: ldstr "Hyphen" + IL_0007: ldstr "Loading plugins..." + IL_000c: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0011: nop + .line 783,783 : 13,33 '' + IL_0012: ldarg.0 + IL_0013: call instance void Virtuoso.Hyphen.Loader::InitializeSandbox() + IL_0018: nop + .line 784,784 : 13,39 '' + IL_0019: ldarg.0 + IL_001a: call instance void Virtuoso.Hyphen.Loader::InitializeFusionContext() + IL_001f: nop + .line 786,786 : 13,33 '' + IL_0020: ldarg.0 + IL_0021: call instance void Virtuoso.Hyphen.Loader::LoadPluginManager() + IL_0026: nop + .line 789,789 : 13,14 '' + .try + { + IL_0027: nop + .line 790,790 : 17,75 '' + IL_0028: ldarg.0 + IL_0029: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_002e: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_0033: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::FindAndLoadPlugins() + IL_0038: nop + .line 791,791 : 17,44 '' + IL_0039: call void Virtuoso.Hyphen.Loader::ClearStringResolverCache() + IL_003e: nop + .line 792,792 : 13,14 '' + IL_003f: nop + IL_0040: leave.s IL_005d + + .line 793,793 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0042: stloc.0 + .line 794,794 : 13,14 '' + IL_0043: nop + .line 795,795 : 17,33 '' + IL_0044: ldarg.0 + IL_0045: call instance void Virtuoso.Hyphen.Loader::UnloadPlugins() + IL_004a: nop + .line 796,796 : 17,89 '' + IL_004b: ldarg.0 + IL_004c: ldarg.0 + IL_004d: ldloc.0 + IL_004e: ldc.i4.0 + IL_004f: newobj instance void [mscorlib]System.UnhandledExceptionEventArgs::.ctor(object, + bool) + IL_0054: call instance void Virtuoso.Hyphen.Loader::TrapUnhandledException(object, + class [mscorlib]System.UnhandledExceptionEventArgs) + IL_0059: nop + .line 797,797 : 13,14 '' + IL_005a: nop + IL_005b: leave.s IL_005d + + } // end handler + IL_005d: nop + .line 798,798 : 9,10 '' + IL_005e: ret + } // end of method Loader::StartFusion + + .method private hidebysig instance void + InitializeSandbox() cil managed + { + // Code size 49 (0x31) + .maxstack 8 + .line 804,804 : 9,10 '' + IL_0000: nop + .line 805,805 : 13,59 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void Virtuoso.Hyphen.PluginsSandbox::.ctor() + IL_0007: stfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + .line 806,806 : 13,89 '' + IL_000c: ldarg.0 + IL_000d: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0012: ldarg.0 + IL_0013: ldftn instance void Virtuoso.Hyphen.Loader::TrapUnhandledException(object, + class [mscorlib]System.UnhandledExceptionEventArgs) + IL_0019: newobj instance void [mscorlib]System.UnhandledExceptionEventHandler::.ctor(object, + native int) + IL_001e: callvirt instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::SetUnhandledExceptionHandler(class [mscorlib]System.UnhandledExceptionEventHandler) + IL_0023: nop + .line 807,807 : 13,56 '' + IL_0024: ldarg.0 + IL_0025: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_002a: callvirt instance void Virtuoso.Hyphen.PluginsSandbox::LoadAssemblyProbe() + IL_002f: nop + .line 808,808 : 9,10 '' + IL_0030: ret + } // end of method Loader::InitializeSandbox + + .method private hidebysig instance void + InitializeFusionContext() cil managed + { + // Code size 36 (0x24) + .maxstack 8 + .line 814,814 : 9,10 '' + IL_0000: nop + .line 815,815 : 13,123 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldarg.0 + IL_0004: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0009: callvirt instance class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.PluginsSandbox::get_AssemblyProbe() + IL_000e: ldarg.0 + IL_000f: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.Loader::PluginLink + IL_0014: callvirt instance native int Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLinkPtr() + IL_0019: newobj instance void Virtuoso.Hyphen.FusionContext::.ctor(class Virtuoso.Hyphen.Loader, + class Virtuoso.Miranda.Plugins.AssemblyProbe, + native int) + IL_001e: stfld class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.Loader::FusionContext + .line 816,816 : 9,10 '' + IL_0023: ret + } // end of method Loader::InitializeFusionContext + + .method private hidebysig instance void + LoadPluginManager() cil managed + { + // Code size 89 (0x59) + .maxstack 3 + .line 822,822 : 9,10 '' + IL_0000: nop + .line 823,823 : 13,69 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0007: ldarg.0 + IL_0008: ldfld class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.Loader::FusionContext + IL_000d: callvirt instance void Virtuoso.Hyphen.PluginsSandbox::LoadPluginManager(class Virtuoso.Hyphen.FusionContext) + IL_0012: nop + .line 826,826 : 13,97 '' + IL_0013: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0018: ldarg.0 + IL_0019: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_001e: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_0023: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::AssociatePluginManager(class Virtuoso.Miranda.Plugins.PluginManagerBase) + IL_0028: nop + .line 828,832 : 13,15 '' + IL_0029: ldarg.0 + IL_002a: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_002f: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_0034: ldarg.0 + IL_0035: ldftn instance void Virtuoso.Hyphen.Loader::'b__0'(object, + class [mscorlib]System.EventArgs) + IL_003b: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0040: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::add_FusionCompleted(class [mscorlib]System.EventHandler) + IL_0045: nop + .line 834,834 : 13,83 '' + IL_0046: ldarg.0 + IL_0047: ldarg.0 + IL_0048: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_004d: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_0052: call instance void Virtuoso.Hyphen.Loader::PromoteManagedMenuIntoAppDomain(class Virtuoso.Miranda.Plugins.PluginManagerBase) + IL_0057: nop + .line 835,835 : 9,10 '' + IL_0058: ret + } // end of method Loader::LoadPluginManager + + .method public hidebysig instance void + InitializePluginTasksMenu() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 841,841 : 9,10 '' + IL_0000: nop + .line 844,844 : 9,10 '' + IL_0001: ret + } // end of method Loader::InitializePluginTasksMenu + + .method private hidebysig instance void + InitializeUISyncContext() cil managed + { + // Code size 38 (0x26) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 854,854 : 9,10 '' + IL_0000: nop + .line 855,855 : 13,45 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Threading.SynchronizationContext Virtuoso.Hyphen.Loader::UIThreadSyncContext + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.0 + IL_000e: ldloc.0 + IL_000f: brtrue.s IL_0025 + + .line 856,856 : 17,102 '' + IL_0011: ldarg.0 + IL_0012: call class [mscorlib]System.Threading.SynchronizationContext [mscorlib]System.Threading.SynchronizationContext::get_Current() + IL_0017: dup + IL_0018: brtrue.s IL_0020 + + IL_001a: pop + IL_001b: newobj instance void [mscorlib]System.Threading.SynchronizationContext::.ctor() + IL_0020: stfld class [mscorlib]System.Threading.SynchronizationContext Virtuoso.Hyphen.Loader::UIThreadSyncContext + .line 857,857 : 9,10 '' + IL_0025: ret + } // end of method Loader::InitializeUISyncContext + + .method public hidebysig instance void + PromoteManagedMenuIntoAppDomain(class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager) cil managed + { + // Code size 83 (0x53) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 864,864 : 9,10 '' + IL_0000: nop + .line 865,865 : 13,39 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 866,866 : 17,66 '' + IL_000c: ldstr "pluginManager" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 868,868 : 13,41 '' + IL_0017: ldarg.0 + IL_0018: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu Virtuoso.Hyphen.Loader::ManagedMainMenu + IL_001d: ldnull + IL_001e: ceq + IL_0020: stloc.0 + IL_0021: ldloc.0 + IL_0022: brtrue.s IL_0052 + + .line 869,869 : 13,14 '' + IL_0024: nop + .line 870,873 : 17,37 '' + IL_0025: ldarg.1 + IL_0026: ldsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_002b: brtrue.s IL_0040 + + IL_002d: ldnull + IL_002e: ldftn void Virtuoso.Hyphen.Loader::'b__1'(class Virtuoso.Miranda.Plugins.PluginManagerBase, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu) + IL_0034: newobj instance void class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1::.ctor(object, + native int) + IL_0039: stsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_003e: br.s IL_0040 + + IL_0040: ldsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_0045: ldarg.0 + IL_0046: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu Virtuoso.Hyphen.Loader::ManagedMainMenu + IL_004b: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::DoContextCallback(class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1, + !!0) + IL_0050: nop + .line 874,874 : 13,14 '' + IL_0051: nop + .line 875,875 : 9,10 '' + IL_0052: ret + } // end of method Loader::PromoteManagedMenuIntoAppDomain + + .method private hidebysig static void ClearStringResolverCache() cil managed + { + // Code size 35 (0x23) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache cache, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache CS$2$0000) + .line 881,881 : 9,10 '' + IL_0000: nop + .line 882,882 : 13,71 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::get_Singleton() + IL_0006: stloc.0 + .line 884,884 : 13,25 '' + IL_0007: ldloc.0 + IL_0008: dup + IL_0009: stloc.1 + IL_000a: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000f: nop + .line 885,885 : 17,31 '' + .try + { + IL_0010: ldloc.0 + IL_0011: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + IL_0016: nop + IL_0017: leave.s IL_0021 + + } // end .try + finally + { + IL_0019: ldloc.1 + IL_001a: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_001f: nop + IL_0020: endfinally + } // end handler + IL_0021: nop + .line 886,886 : 9,10 '' + IL_0022: ret + } // end of method Loader::ClearStringResolverCache + + .method private hidebysig instance int32 + ShowManagedMenuService(native uint wParam, + native int lParam) cil managed + { + // Code size 111 (0x6f) + .maxstack 3 + .locals init ([0] int32 CS$1$0000, + [1] object CS$2$0001, + [2] bool CS$4$0002) + .line 898,898 : 9,10 '' + IL_0000: nop + .line 899,899 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 900,900 : 13,14 '' + .try + { + IL_000e: nop + .line 902,902 : 17,75 '' + IL_000f: call class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + IL_0014: callvirt instance bool Virtuoso.Hyphen.Mini.ModuleManager::get_HasModules() + IL_0019: brtrue.s IL_0023 + + IL_001b: ldarg.0 + IL_001c: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0021: br.s IL_0024 + + IL_0023: ldc.i4.1 + IL_0024: nop + IL_0025: stloc.2 + IL_0026: ldloc.2 + IL_0027: brtrue.s IL_0044 + + .line 903,903 : 17,18 '' + IL_0029: nop + .line 905,905 : 21,35 '' + IL_002a: ldarg.0 + IL_002b: call instance void Virtuoso.Hyphen.Loader::LoadPlugins() + IL_0030: nop + .line 906,906 : 21,62 '' + IL_0031: ldarg.0 + IL_0032: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Hyphen.Loader::PluginsLoadedEvent + IL_0037: ldc.i4 0x2710 + IL_003c: ldc.i4.0 + IL_003d: callvirt instance bool [mscorlib]System.Threading.WaitHandle::WaitOne(int32, + bool) + IL_0042: pop + .line 907,907 : 17,18 '' + IL_0043: nop + .line 909,909 : 17,45 '' + IL_0044: ldarg.0 + IL_0045: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu Virtuoso.Hyphen.Loader::ManagedMainMenu + IL_004a: ldnull + IL_004b: ceq + IL_004d: stloc.2 + IL_004e: ldloc.2 + IL_004f: brtrue.s IL_005d + + .line 910,910 : 21,55 '' + IL_0051: ldarg.0 + IL_0052: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu Virtuoso.Hyphen.Loader::ManagedMainMenu + IL_0057: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ShowUnderCursor() + IL_005c: nop + .line 911,911 : 13,14 '' + IL_005d: nop + IL_005e: leave.s IL_0068 + + } // end .try + finally + { + IL_0060: ldloc.1 + IL_0061: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0066: nop + IL_0067: endfinally + } // end handler + IL_0068: nop + .line 913,913 : 13,48 '' + IL_0069: ldc.i4.0 + IL_006a: stloc.0 + IL_006b: br.s IL_006d + + .line 914,914 : 9,10 '' + IL_006d: ldloc.0 + IL_006e: ret + } // end of method Loader::ShowManagedMenuService + + .method private hidebysig instance int32 + ConfigureModulesService(native uint wParam, + native int lParam) cil managed + { + // Code size 14 (0xe) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 920,920 : 9,10 '' + IL_0000: nop + .line 921,921 : 13,48 '' + IL_0001: ldc.i4.0 + IL_0002: call void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present(bool) + IL_0007: nop + .line 922,922 : 13,48 '' + IL_0008: ldc.i4.0 + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + .line 923,923 : 9,10 '' + IL_000c: ldloc.0 + IL_000d: ret + } // end of method Loader::ConfigureModulesService + + .method private hidebysig instance int32 + ManagePluginsService(native uint wParam, + native int lParam) cil managed + { + // Code size 45 (0x2d) + .maxstack 4 + .locals init ([0] int32 CS$1$0000, + [1] bool CS$4$0001) + .line 929,929 : 9,10 '' + IL_0000: nop + .line 930,930 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: brtrue.s IL_0020 + + .line 931,931 : 17,168 '' + IL_000b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_NoPluginsLoaded() + IL_0010: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_NoPluginsLoaded() + IL_0015: ldc.i4.0 + IL_0016: ldc.i4.s 48 + IL_0018: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_001d: pop + IL_001e: br.s IL_0027 + + .line 933,933 : 17,33 '' + IL_0020: ldarg.0 + IL_0021: call instance void Virtuoso.Hyphen.Loader::ManagePlugins() + IL_0026: nop + .line 935,935 : 13,43 '' + IL_0027: ldc.i4.0 + IL_0028: stloc.0 + IL_0029: br.s IL_002b + + .line 936,936 : 9,10 '' + IL_002b: ldloc.0 + IL_002c: ret + } // end of method Loader::ManagePluginsService + + .method public hidebysig instance void + ManagePlugins() cil managed + { + // Code size 65 (0x41) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 942,942 : 9,10 '' + IL_0000: nop + .line 943,943 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0040 + + .line 944,944 : 13,14 '' + IL_000e: nop + .line 945,948 : 17,26 '' + IL_000f: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0014: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_0019: ldsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate4' + IL_001e: brtrue.s IL_0033 + + IL_0020: ldnull + IL_0021: ldftn void Virtuoso.Hyphen.Loader::'b__3'(class Virtuoso.Miranda.Plugins.PluginManagerBase, + object) + IL_0027: newobj instance void class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1::.ctor(object, + native int) + IL_002c: stsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate4' + IL_0031: br.s IL_0033 + + IL_0033: ldsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate4' + IL_0038: ldnull + IL_0039: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::DoContextCallback(class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1, + !!0) + IL_003e: nop + .line 949,949 : 13,14 '' + IL_003f: nop + .line 950,950 : 9,10 '' + IL_0040: ret + } // end of method Loader::ManagePlugins + + .method private hidebysig instance void + PluginsWatcherHandler(object sender, + class [System]System.IO.FileSystemEventArgs e) cil managed + { + // Code size 186 (0xba) + .maxstack 7 + .locals init ([0] class [mscorlib]System.Exception ex, + [1] object CS$2$0000, + [2] bool CS$4$0001) + .line 956,956 : 9,10 '' + IL_0000: nop + .line 957,957 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 958,958 : 13,14 '' + .try + { + IL_000e: nop + .line 960,960 : 17,18 '' + .try + { + IL_000f: nop + .line 961,961 : 21,40 '' + IL_0010: ldarg.0 + IL_0011: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0016: stloc.2 + IL_0017: ldloc.2 + IL_0018: brtrue.s IL_001f + + .line 962,962 : 25,32 '' + IL_001a: leave IL_00b8 + + .line 964,964 : 21,266 '' + IL_001f: ldc.i4.6 + IL_0020: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_PluginUpdated() + IL_0025: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Caption_PluginUpdated() + IL_002a: ldarg.2 + IL_002b: callvirt instance string [System]System.IO.FileSystemEventArgs::get_Name() + IL_0030: ldc.i4.0 + IL_0031: ldarg.2 + IL_0032: callvirt instance string [System]System.IO.FileSystemEventArgs::get_Name() + IL_0037: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_003c: ldc.i4.4 + IL_003d: sub + IL_003e: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_0043: call string [mscorlib]System.String::Format(string, + object) + IL_0048: ldc.i4.4 + IL_0049: ldc.i4.s 64 + IL_004b: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0050: ceq + IL_0052: ldc.i4.0 + IL_0053: ceq + IL_0055: stloc.2 + IL_0056: ldloc.2 + IL_0057: brtrue.s IL_0087 + + .line 965,965 : 21,22 '' + IL_0059: nop + .line 967,967 : 25,41 '' + IL_005a: ldarg.0 + IL_005b: call instance void Virtuoso.Hyphen.Loader::ReloadPlugins() + IL_0060: nop + .line 968,968 : 25,66 '' + IL_0061: ldarg.0 + IL_0062: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Hyphen.Loader::PluginsLoadedEvent + IL_0067: ldc.i4 0x2710 + IL_006c: ldc.i4.0 + IL_006d: callvirt instance bool [mscorlib]System.Threading.WaitHandle::WaitOne(int32, + bool) + IL_0072: pop + .line 970,970 : 25,190 '' + IL_0073: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_PluginReloadComplete() + IL_0078: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_PluginReloadComplete() + IL_007d: ldc.i4.0 + IL_007e: ldc.i4.s 64 + IL_0080: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0085: pop + .line 971,971 : 21,22 '' + IL_0086: nop + .line 972,972 : 17,18 '' + IL_0087: nop + IL_0088: leave.s IL_00ab + + .line 973,973 : 17,37 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_008a: stloc.0 + .line 974,974 : 17,18 '' + IL_008b: nop + .line 975,975 : 21,97 '' + IL_008c: ldc.i4.0 + IL_008d: ldstr "Hyphen" + IL_0092: ldstr "Plugin reload failed: " + IL_0097: ldloc.0 + IL_0098: callvirt instance string [mscorlib]System.Object::ToString() + IL_009d: call string [mscorlib]System.String::Concat(string, + string) + IL_00a2: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00a7: nop + .line 976,976 : 17,18 '' + IL_00a8: nop + IL_00a9: leave.s IL_00ab + + } // end handler + IL_00ab: nop + .line 977,977 : 13,14 '' + IL_00ac: nop + IL_00ad: leave.s IL_00b7 + + } // end .try + finally + { + IL_00af: ldloc.1 + IL_00b0: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00b5: nop + IL_00b6: endfinally + } // end handler + IL_00b7: nop + IL_00b8: nop + .line 978,978 : 9,10 '' + IL_00b9: ret + } // end of method Loader::PluginsWatcherHandler + + .method public hidebysig instance void + UnloadPlugins() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 988,988 : 9,10 '' + IL_0000: nop + .line 989,989 : 13,34 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: call instance void Virtuoso.Hyphen.Loader::UnloadPlugins(bool) + IL_0008: nop + .line 990,990 : 9,10 '' + IL_0009: ret + } // end of method Loader::UnloadPlugins + + .method public hidebysig instance void + UnloadPlugins(bool lazy) cil managed + { + // Code size 134 (0x86) + .maxstack 2 + .locals init ([0] object CS$2$0000, + [1] bool CS$4$0001) + .line 997,997 : 9,10 '' + IL_0000: nop + .line 998,998 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 999,999 : 13,14 '' + .try + { + IL_000e: nop + .line 1000,1000 : 17,36 '' + IL_000f: ldarg.0 + IL_0010: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0015: stloc.1 + IL_0016: ldloc.1 + IL_0017: brtrue.s IL_0024 + + .line 1001,1001 : 21,107 '' + IL_0019: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InternalErrorOccurred() + IL_001e: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0023: throw + + .line 1003,1003 : 17,42 '' + IL_0024: ldarg.0 + IL_0025: call instance void Virtuoso.Hyphen.Loader::DisposePluginTasksMenu() + IL_002a: nop + .line 1005,1005 : 17,66 '' + IL_002b: ldarg.0 + IL_002c: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0031: ldc.i4.0 + IL_0032: callvirt instance void [System]System.IO.FileSystemWatcher::set_EnableRaisingEvents(bool) + IL_0037: nop + .line 1006,1006 : 17,44 '' + IL_0038: ldarg.0 + IL_0039: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Hyphen.Loader::PluginsLoadedEvent + IL_003e: callvirt instance bool [mscorlib]System.Threading.EventWaitHandle::Reset() + IL_0043: pop + .line 1008,1008 : 17,62 '' + IL_0044: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0049: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::DetachPluginManager() + IL_004e: nop + .line 1009,1009 : 17,69 '' + IL_004f: ldarg.0 + IL_0050: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0055: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_005a: ldarg.1 + IL_005b: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::Shutdown(bool) + IL_0060: nop + .line 1011,1011 : 17,27 '' + IL_0061: ldarg.1 + IL_0062: stloc.1 + IL_0063: ldloc.1 + IL_0064: brtrue.s IL_0072 + + .line 1012,1012 : 21,60 '' + IL_0066: ldarg.0 + IL_0067: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_006c: call void Virtuoso.Miranda.Plugins.Helpers.Sandbox::Unload(class Virtuoso.Miranda.Plugins.Helpers.Sandbox) + IL_0071: nop + .line 1014,1014 : 17,47 '' + IL_0072: ldarg.0 + IL_0073: ldnull + IL_0074: stfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + .line 1015,1015 : 13,14 '' + IL_0079: nop + IL_007a: leave.s IL_0084 + + } // end .try + finally + { + IL_007c: ldloc.0 + IL_007d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0082: nop + IL_0083: endfinally + } // end handler + IL_0084: nop + .line 1016,1016 : 9,10 '' + IL_0085: ret + } // end of method Loader::UnloadPlugins + + .method private hidebysig instance void + TrapUnhandledException(object sender, + class [mscorlib]System.UnhandledExceptionEventArgs e) cil managed + { + // Code size 25 (0x19) + .maxstack 8 + .line 1028,1028 : 9,10 '' + IL_0000: nop + .line 1029,1029 : 13,96 '' + IL_0001: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0006: ldarg.2 + IL_0007: callvirt instance object [mscorlib]System.UnhandledExceptionEventArgs::get_ExceptionObject() + IL_000c: castclass [mscorlib]System.Exception + IL_0011: ldnull + IL_0012: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0017: nop + .line 1030,1030 : 9,10 '' + IL_0018: ret + } // end of method Loader::TrapUnhandledException + + .method private hidebysig instance void + TrapUnhandledException(object sender, + class [System]System.Threading.ThreadExceptionEventArgs e) cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 1036,1036 : 9,10 '' + IL_0000: nop + .line 1037,1037 : 13,97 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: callvirt instance class [mscorlib]System.Exception [System]System.Threading.ThreadExceptionEventArgs::get_Exception() + IL_0009: ldc.i4.0 + IL_000a: newobj instance void [mscorlib]System.UnhandledExceptionEventArgs::.ctor(object, + bool) + IL_000f: call instance void Virtuoso.Hyphen.Loader::TrapUnhandledException(object, + class [mscorlib]System.UnhandledExceptionEventArgs) + IL_0014: nop + .line 1038,1038 : 9,10 '' + IL_0015: ret + } // end of method Loader::TrapUnhandledException + + .method private hidebysig static void VerifyFxConfiguration() cil managed + { + // Code size 150 (0x96) + .maxstack 4 + .locals init ([0] string configFileName, + [1] class [mscorlib]System.IO.StreamReader reader, + [2] class [mscorlib]System.IO.StreamWriter writer, + [3] bool CS$4$0000) + .line 1044,1044 : 9,10 '' + IL_0000: nop + .line 1045,1045 : 13,96 '' + IL_0001: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0006: callvirt instance class [mscorlib]System.AppDomainSetup [mscorlib]System.AppDomain::get_SetupInformation() + IL_000b: callvirt instance string [mscorlib]System.AppDomainSetup::get_ConfigurationFile() + IL_0010: stloc.0 + .line 1047,1047 : 13,86 '' + IL_0011: ldloc.0 + IL_0012: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0017: brtrue.s IL_0021 + + IL_0019: ldloc.0 + IL_001a: call bool [mscorlib]System.IO.File::Exists(string) + IL_001f: br.s IL_0022 + + IL_0021: ldc.i4.0 + IL_0022: nop + IL_0023: stloc.3 + IL_0024: ldloc.3 + IL_0025: brtrue.s IL_0095 + + .line 1048,1048 : 13,14 '' + IL_0027: nop + .line 1049,1049 : 24,180 '' + IL_0028: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetExecutingAssembly() + IL_002d: ldstr "Virtuoso.Miranda.Plugins.Resources.miranda32.exe.c" + + "onfig" + IL_0032: callvirt instance class [mscorlib]System.IO.Stream [mscorlib]System.Reflection.Assembly::GetManifestResourceStream(string) + IL_0037: newobj instance void [mscorlib]System.IO.StreamReader::.ctor(class [mscorlib]System.IO.Stream) + IL_003c: stloc.1 + .line 1050,1050 : 24,78 '' + .try + { + IL_003d: ldloc.0 + IL_003e: newobj instance void [mscorlib]System.IO.StreamWriter::.ctor(string) + IL_0043: stloc.2 + .line 1051,1051 : 21,54 '' + .try + { + IL_0044: ldloc.2 + IL_0045: ldloc.1 + IL_0046: callvirt instance string [mscorlib]System.IO.TextReader::ReadToEnd() + IL_004b: callvirt instance void [mscorlib]System.IO.TextWriter::Write(string) + IL_0050: nop + IL_0051: leave.s IL_0063 + + } // end .try + finally + { + IL_0053: ldloc.2 + IL_0054: ldnull + IL_0055: ceq + IL_0057: stloc.3 + IL_0058: ldloc.3 + IL_0059: brtrue.s IL_0062 + + IL_005b: ldloc.2 + IL_005c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0061: nop + IL_0062: endfinally + } // end handler + IL_0063: nop + IL_0064: leave.s IL_0076 + + } // end .try + finally + { + IL_0066: ldloc.1 + IL_0067: ldnull + IL_0068: ceq + IL_006a: stloc.3 + IL_006b: ldloc.3 + IL_006c: brtrue.s IL_0075 + + IL_006e: ldloc.1 + IL_006f: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0074: nop + IL_0075: endfinally + } // end handler + IL_0076: nop + .line 1053,1053 : 17,180 '' + IL_0077: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_MirandaRestartRequired() + IL_007c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaRestartRequired() + IL_0081: ldc.i4.0 + IL_0082: ldc.i4.s 48 + IL_0084: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0089: pop + .line 1054,1054 : 17,95 '' + IL_008a: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaRestartRequired() + IL_008f: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0094: throw + + .line 1056,1056 : 9,10 '' + IL_0095: ret + } // end of method Loader::VerifyFxConfiguration + + .method private hidebysig instance void + EnsureSingleInstance() cil managed + { + // Code size 39 (0x27) + .maxstack 4 + .locals init ([0] bool acquired, + [1] bool CS$4$0000) + .line 1062,1062 : 9,10 '' + IL_0000: nop + .line 1063,1063 : 13,35 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + .line 1064,1064 : 13,90 '' + IL_0003: ldarg.0 + IL_0004: ldc.i4.1 + IL_0005: call string Virtuoso.Hyphen.Loader::GetSingletonMutexName() + IL_000a: ldloca.s acquired + IL_000c: newobj instance void [mscorlib]System.Threading.Mutex::.ctor(bool, + string, + bool&) + IL_0011: stfld class [mscorlib]System.Threading.Mutex Virtuoso.Hyphen.Loader::SingleInstanceMutex + .line 1066,1066 : 13,27 '' + IL_0016: ldloc.0 + IL_0017: stloc.1 + IL_0018: ldloc.1 + IL_0019: brtrue.s IL_0026 + + .line 1067,1067 : 17,99 '' + IL_001b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_HyphenSxSNotSupported() + IL_0020: newobj instance void [mscorlib]System.NotSupportedException::.ctor(string) + IL_0025: throw + + .line 1068,1068 : 9,10 '' + IL_0026: ret + } // end of method Loader::EnsureSingleInstance + + .method private hidebysig static string + GetSingletonMutexName() cil managed + { + // Code size 34 (0x22) + .maxstack 2 + .locals init ([0] string CS$1$0000, + [1] int32 CS$0$0001) + .line 1075,1075 : 9,10 '' + IL_0000: nop + .line 1076,1076 : 13,92 '' + IL_0001: ldstr "{0}::Hyphen" + IL_0006: call class [System]System.Diagnostics.Process [System]System.Diagnostics.Process::GetCurrentProcess() + IL_000b: callvirt instance int32 [System]System.Diagnostics.Process::get_Id() + IL_0010: stloc.1 + IL_0011: ldloca.s CS$0$0001 + IL_0013: call instance string [mscorlib]System.Int32::ToString() + IL_0018: call string [mscorlib]System.String::Format(string, + object) + IL_001d: stloc.0 + IL_001e: br.s IL_0020 + + .line 1077,1077 : 9,10 '' + IL_0020: ldloc.0 + IL_0021: ret + } // end of method Loader::GetSingletonMutexName + + .method public hidebysig instance object + DoContextCallback(class [mscorlib]System.Delegate del, + object[] args) cil managed + { + .param [2] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 35 (0x23) + .maxstack 2 + .locals init ([0] object CS$1$0000, + [1] bool CS$4$0001) + .line 1086,1086 : 9,10 '' + IL_0000: nop + .line 1087,1087 : 13,29 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 1088,1088 : 17,56 '' + IL_000c: ldstr "del" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 1090,1090 : 13,44 '' + IL_0017: ldarg.1 + IL_0018: ldarg.2 + IL_0019: callvirt instance object [mscorlib]System.Delegate::DynamicInvoke(object[]) + IL_001e: stloc.0 + IL_001f: br.s IL_0021 + + .line 1091,1091 : 9,10 '' + IL_0021: ldloc.0 + IL_0022: ret + } // end of method Loader::DoContextCallback + + .method public hidebysig static void VerifyDefaultDomain() cil managed + { + // Code size 27 (0x1b) + .maxstack 1 + .locals init ([0] bool CS$4$0000) + .line 1098,1098 : 9,10 '' + IL_0000: nop + .line 1099,1099 : 13,63 '' + IL_0001: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0006: callvirt instance bool [mscorlib]System.AppDomain::IsDefaultAppDomain() + IL_000b: stloc.0 + IL_000c: ldloc.0 + IL_000d: brtrue.s IL_001a + + .line 1100,1100 : 17,105 '' + IL_000f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_FeatureNotAvailableInDomain() + IL_0014: newobj instance void [mscorlib]System.NotSupportedException::.ctor(string) + IL_0019: throw + + .line 1101,1101 : 9,10 '' + IL_001a: ret + } // end of method Loader::VerifyDefaultDomain + + .method private hidebysig instance void + 'b__0'(object param0, + class [mscorlib]System.EventArgs param1) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 27 (0x1b) + .maxstack 8 + .line 829,829 : 13,14 '' + IL_0000: nop + .line 830,830 : 17,42 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Hyphen.Loader::PluginsLoadedEvent + IL_0007: callvirt instance bool [mscorlib]System.Threading.EventWaitHandle::Set() + IL_000c: pop + .line 831,831 : 17,65 '' + IL_000d: ldarg.0 + IL_000e: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0013: ldc.i4.1 + IL_0014: callvirt instance void [System]System.IO.FileSystemWatcher::set_EnableRaisingEvents(bool) + IL_0019: nop + IL_001a: ret + } // end of method Loader::'b__0' + + .method private hidebysig static void 'b__1'(class Virtuoso.Miranda.Plugins.PluginManagerBase _sender, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu _menu) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 9 (0x9) + .maxstack 8 + .line 871,871 : 17,18 '' + IL_0000: nop + .line 872,872 : 21,65 '' + IL_0001: ldarg.1 + IL_0002: call void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::RegisterInterceptors(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu) + IL_0007: nop + IL_0008: ret + } // end of method Loader::'b__1' + + .method private hidebysig static void 'b__3'(class Virtuoso.Miranda.Plugins.PluginManagerBase param0, + object param1) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 29 (0x1d) + .maxstack 8 + .line 946,946 : 17,18 '' + IL_0000: nop + .line 947,947 : 21,188 '' + IL_0001: ldc.i4.0 + IL_0002: call class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Singleton() + IL_0007: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management() + IL_000c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins() + IL_0011: call string Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreatePath(class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + string, + string) + IL_0016: call void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present(bool, + string) + IL_001b: nop + IL_001c: ret + } // end of method Loader::'b__3' + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 70 (0x46) + .maxstack 4 + .line 54,54 : 9,153 '' + IL_0000: ldstr "http://virtuosity.aspone.cz/files/miranda/developm" + + "ent/hyphen/updates/hyphen_update.zip" + IL_0005: newobj instance void [System]System.Uri::.ctor(string) + IL_000a: stsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenUpdateUrl + .line 55,55 : 13,138 '' + IL_000f: ldstr "http://virtuosity.aspone.cz/files/miranda/developm" + + "ent/hyphen/updates/hyphen_update_version.txt" + IL_0014: newobj instance void [System]System.Uri::.ctor(string) + IL_0019: stsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenVersionUrl + .line 56,56 : 13,72 '' + IL_001e: ldstr "http://virtuosity.aspone.cz" + IL_0023: newobj instance void [System]System.Uri::.ctor(string) + IL_0028: stsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenHomepageUrl + .line 58,58 : 9,85 '' + IL_002d: ldc.i4.0 + IL_002e: ldc.i4.7 + IL_002f: ldc.i4.0 + IL_0030: ldc.i4.0 + IL_0031: newobj instance void [mscorlib]System.Version::.ctor(int32, + int32, + int32, + int32) + IL_0036: stsfld class [mscorlib]System.Version Virtuoso.Hyphen.Loader::MinMirandaVersion + .line 76,76 : 9,66 '' + IL_003b: newobj instance void [mscorlib]System.Object::.ctor() + IL_0040: stsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0045: ret + } // end of method Loader::.cctor + + .property class [mscorlib]System.Version + HyphenVersion() + { + .get class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + } // end of property Loader::HyphenVersion + .property instance bool PluginsLoaded() + { + .get instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + } // end of property Loader::PluginsLoaded + .property instance class Virtuoso.Hyphen.Native.PLUGININFO + PluginInfo() + { + .get instance class Virtuoso.Hyphen.Native.PLUGININFO Virtuoso.Hyphen.Loader::get_PluginInfo() + } // end of property Loader::PluginInfo +} // end of class Virtuoso.Hyphen.Loader + +.class private sequential ansi sealed beforefieldinit Virtuoso.Hyphen.Native.NativePluginLink + extends [mscorlib]System.Object +{ + .pack 4 + .size 0 + .custom instance void [mscorlib]System.Security.SuppressUnmanagedCodeSecurityAttribute::.ctor() = ( 01 00 00 00 ) + .field public initonly class Virtuoso.Hyphen.Native.CreateHookableEventPrototype CreateHookableEvent + .field public initonly class Virtuoso.Hyphen.Native.DestroyHookableEventPrototype DestroyHookableEvent + .field public initonly class Virtuoso.Hyphen.Native.NotifyEventHooksPrototype NotifyEventHooks + .field public initonly class Virtuoso.Hyphen.Native.HookEventPrototype HookEvent + .field public initonly class Virtuoso.Hyphen.Native.HookEventMessagePrototype HookEventMessage + .field public initonly class Virtuoso.Hyphen.Native.UnhookEventPrototype UnhookEvent + .field public initonly class Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype CreateServiceFunction + .field public initonly class Virtuoso.Hyphen.Native.CreateTransientServiceFunctionPrototype CreateTransientServiceFunction + .field public initonly class Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype DestroyServiceFunction + .field public initonly class Virtuoso.Hyphen.Native.CallServicePrototype CallService + .field public initonly class Virtuoso.Hyphen.Native.ServiceExistsPrototype ServiceExists + .field public initonly class Virtuoso.Hyphen.Native.CallServiceSyncPrototype CallServiceSync + .field public initonly class Virtuoso.Hyphen.Native.CallFunctionAsyncPrototype CallFunctionAsync + .field public initonly class Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype SetHookDefaultForHookableEvent + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method NativePluginLink::.ctor + +} // end of class Virtuoso.Hyphen.Native.NativePluginLink + +.class public auto ansi sealed Virtuoso.Hyphen.Native.AsyncFunctionCall + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 03 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method AsyncFunctionCall::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(native int ptr) runtime managed + { + } // end of method AsyncFunctionCall::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int ptr, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method AsyncFunctionCall::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method AsyncFunctionCall::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.AsyncFunctionCall + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CreateHookableEventPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CreateHookableEventPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(string marshal( lpstr) name) runtime managed + { + } // end of method CreateHookableEventPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CreateHookableEventPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CreateHookableEventPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CreateHookableEventPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.DestroyHookableEventPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method DestroyHookableEventPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int handle) runtime managed + { + } // end of method DestroyHookableEventPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int handle, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method DestroyHookableEventPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method DestroyHookableEventPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.DestroyHookableEventPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.NotifyEventHooksPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method NotifyEventHooksPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int handle, + native uint wParam, + native int lParam) runtime managed + { + } // end of method NotifyEventHooksPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int handle, + native uint wParam, + native int lParam, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method NotifyEventHooksPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method NotifyEventHooksPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.NotifyEventHooksPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.HookEventPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method HookEventPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback hook) runtime managed + { + } // end of method HookEventPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback hook, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method HookEventPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method HookEventPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.HookEventPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.HookEventMessagePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method HookEventMessagePrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(string marshal( lpstr) name, + native int hwnd, + uint32 msg) runtime managed + { + } // end of method HookEventMessagePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + native int hwnd, + uint32 msg, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method HookEventMessagePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method HookEventMessagePrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.HookEventMessagePrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.UnhookEventPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method UnhookEventPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int handle) runtime managed + { + } // end of method UnhookEventPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int handle, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method UnhookEventPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method UnhookEventPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.UnhookEventPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CreateServiceFunctionPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback service) runtime managed + { + } // end of method CreateServiceFunctionPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback service, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CreateServiceFunctionPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CreateServiceFunctionPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CreateTransientServiceFunctionPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CreateTransientServiceFunctionPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback service) runtime managed + { + } // end of method CreateTransientServiceFunctionPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback service, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CreateTransientServiceFunctionPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CreateTransientServiceFunctionPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CreateTransientServiceFunctionPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method DestroyServiceFunctionPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int handle) runtime managed + { + } // end of method DestroyServiceFunctionPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int handle, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method DestroyServiceFunctionPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method DestroyServiceFunctionPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CallServicePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CallServicePrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) name, + native uint wParam, + native int lParam) runtime managed + { + } // end of method CallServicePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + native uint wParam, + native int lParam, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CallServicePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CallServicePrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CallServicePrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CallServiceUnsafePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CallServiceUnsafePrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) serviceName, + void* wParam, + void* lParam) runtime managed + { + } // end of method CallServiceUnsafePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) serviceName, + void* wParam, + void* lParam, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CallServiceUnsafePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CallServiceUnsafePrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CallServiceUnsafePrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.ServiceExistsPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method ServiceExistsPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) name) runtime managed + { + } // end of method ServiceExistsPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method ServiceExistsPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method ServiceExistsPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.ServiceExistsPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CallServiceSyncPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CallServiceSyncPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) name, + native uint wParam, + native int lParam) runtime managed + { + } // end of method CallServiceSyncPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + native uint wParam, + native int lParam, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CallServiceSyncPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CallServiceSyncPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CallServiceSyncPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CallFunctionAsyncPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CallFunctionAsyncPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(class Virtuoso.Hyphen.Native.AsyncFunctionCall function, + native int ptr) runtime managed + { + } // end of method CallFunctionAsyncPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class Virtuoso.Hyphen.Native.AsyncFunctionCall function, + native int ptr, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CallFunctionAsyncPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CallFunctionAsyncPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CallFunctionAsyncPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method SetHookDefaultForHookableEventPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int handle, + class Virtuoso.Miranda.Plugins.Callback hook) runtime managed + { + } // end of method SetHookDefaultForHookableEventPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int handle, + class Virtuoso.Miranda.Plugins.Callback hook, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method SetHookDefaultForHookableEventPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method SetHookDefaultForHookableEventPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu + extends [System.Windows.Forms]System.Windows.Forms.ContextMenuStrip +{ + .class auto ansi sealed nested private AddMainMenuItemInvoker + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method AddMainMenuItemInvoker::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem item) runtime managed + { + } // end of method AddMainMenuItemInvoker::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem item, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method AddMainMenuItemInvoker::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method AddMainMenuItemInvoker::EndInvoke + + } // end of class AddMainMenuItemInvoker + + .class auto ansi sealed nested private ModifyMenuItemInvoker + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method ModifyMenuItemInvoker::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM& itemData, + string handle) runtime managed + { + } // end of method ModifyMenuItemInvoker::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM& itemData, + string handle, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method ModifyMenuItemInvoker::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM& itemData, + class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method ModifyMenuItemInvoker::EndInvoke + + } // end of class ModifyMenuItemInvoker + + .field private static initonly class [mscorlib]System.Random HandleGenerator + .field private static initonly class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker AddMainMenuItemDelegate + .field private static initonly class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker ModifyMenuItemDelegate + .field private static initonly class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem EmptyItem + .field private initonly int32 EmptyItemIndex + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 74 (0x4a) + .maxstack 2 + .line 43,43 : 9,71 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\ManagedMainMenu.cs' + IL_0000: newobj instance void [mscorlib]System.Random::.ctor() + IL_0005: stsfld class [mscorlib]System.Random Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::HandleGenerator + .line 45,45 : 9,126 '' + IL_000a: ldnull + IL_000b: ldftn void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItem(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem) + IL_0011: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker::.ctor(object, + native int) + IL_0016: stsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItemDelegate + .line 46,46 : 9,122 '' + IL_001b: ldnull + IL_001c: ldftn void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItem(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu, + valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM&, + string) + IL_0022: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker::.ctor(object, + native int) + IL_0027: stsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItemDelegate + .line 56,56 : 9,10 '' + IL_002c: nop + .line 57,57 : 13,77 '' + IL_002d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Empty() + IL_0032: newobj instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::.ctor(string) + IL_0037: stsfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItem + .line 58,58 : 13,39 '' + IL_003c: ldsfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItem + IL_0041: ldc.i4.0 + IL_0042: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Visible(bool) + IL_0047: nop + .line 59,59 : 9,10 '' + IL_0048: nop + IL_0049: ret + } // end of method ManagedMainMenu::.cctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 40 (0x28) + .maxstack 8 + .line 61,61 : 9,35 '' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.ContextMenuStrip::.ctor() + IL_0006: nop + .line 62,62 : 9,10 '' + IL_0007: nop + .line 63,63 : 13,53 '' + IL_0008: ldarg.0 + IL_0009: ldc.i4.1 + IL_000a: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStrip::set_RenderMode(valuetype [System.Windows.Forms]System.Windows.Forms.ToolStripRenderMode) + IL_000f: nop + .line 64,64 : 13,51 '' + IL_0010: ldarg.0 + IL_0011: ldarg.0 + IL_0012: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0017: ldsfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItem + IL_001c: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_0021: stfld int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItemIndex + .line 65,65 : 9,10 '' + IL_0026: nop + IL_0027: ret + } // end of method ManagedMainMenu::.ctor + + .method public hidebysig virtual instance object + InitializeLifetimeService() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] object CS$1$0000) + .line 74,74 : 9,10 '' + IL_0000: nop + .line 75,75 : 13,25 '' + IL_0001: ldnull + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 76,76 : 9,10 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method ManagedMainMenu::InitializeLifetimeService + + .method assembly hidebysig instance void + ShowUnderCursor() cil managed + { + // Code size 85 (0x55) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 83,83 : 9,10 '' + IL_0000: nop + .line 84,84 : 13,34 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0007: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.Layout.ArrangedElementCollection::get_Count() + IL_000c: ldc.i4.1 + IL_000d: ceq + IL_000f: ldc.i4.0 + IL_0010: ceq + IL_0012: stloc.0 + IL_0013: ldloc.0 + IL_0014: brtrue.s IL_0030 + + .line 85,85 : 17,54 '' + IL_0016: ldarg.0 + IL_0017: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_001c: ldarg.0 + IL_001d: ldfld int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItemIndex + IL_0022: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::get_Item(int32) + IL_0027: ldc.i4.1 + IL_0028: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Visible(bool) + IL_002d: nop + IL_002e: br.s IL_0048 + + .line 87,87 : 17,55 '' + IL_0030: ldarg.0 + IL_0031: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0036: ldarg.0 + IL_0037: ldfld int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItemIndex + IL_003c: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::get_Item(int32) + IL_0041: ldc.i4.0 + IL_0042: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Visible(bool) + IL_0047: nop + .line 89,89 : 13,35 '' + IL_0048: ldarg.0 + IL_0049: call valuetype [System.Drawing]System.Drawing.Point [System.Windows.Forms]System.Windows.Forms.Cursor::get_Position() + IL_004e: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStripDropDown::Show(valuetype [System.Drawing]System.Drawing.Point) + IL_0053: nop + .line 90,90 : 9,10 '' + IL_0054: ret + } // end of method ManagedMainMenu::ShowUnderCursor + + .method assembly hidebysig static void + RegisterInterceptors(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu) cil managed + { + // Code size 66 (0x42) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) + .line 104,104 : 9,10 '' + IL_0000: nop + .line 105,105 : 13,61 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: stloc.0 + .line 107,107 : 13,136 '' + IL_0007: ldloc.0 + IL_0008: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors() + IL_000d: ldstr "CList/AddMainMenuItem" + IL_0012: ldarg.0 + IL_0013: ldftn instance int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItemServiceInterceptor(native uint, + native int) + IL_0019: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001e: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Register(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0023: nop + .line 108,108 : 13,127 '' + IL_0024: ldloc.0 + IL_0025: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors() + IL_002a: ldstr "CList/ModifyMenuItem" + IL_002f: ldarg.0 + IL_0030: ldftn instance int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItemInterceptor(native uint, + native int) + IL_0036: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_003b: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Register(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0040: nop + .line 109,109 : 9,10 '' + IL_0041: ret + } // end of method ManagedMainMenu::RegisterInterceptors + + .method assembly hidebysig static void + UnregisterInterceptors(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu) cil managed + { + // Code size 42 (0x2a) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) + .line 112,112 : 9,10 '' + IL_0000: nop + .line 113,113 : 13,61 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: stloc.0 + .line 115,115 : 13,98 '' + IL_0007: ldloc.0 + IL_0008: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors() + IL_000d: ldstr "CList/AddMainMenuItem" + IL_0012: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Unregister(string) + IL_0017: nop + .line 116,116 : 13,97 '' + IL_0018: ldloc.0 + IL_0019: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors() + IL_001e: ldstr "CList/ModifyMenuItem" + IL_0023: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Unregister(string) + IL_0028: nop + .line 117,117 : 9,10 '' + IL_0029: ret + } // end of method ManagedMainMenu::UnregisterInterceptors + + .method private hidebysig instance int32 + AddMainMenuItemServiceInterceptor(native uint wParam, + native int lParam) cil managed + { + // Code size 172 (0xac) + .maxstack 5 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM itemData, + [1] class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem menuItem, + [2] class [System.Drawing]System.Drawing.Image itemImage, + [3] int32 CS$1$0000, + [4] bool CS$4$0001, + [5] object[] CS$0$0002) + .line 120,120 : 9,10 '' + IL_0000: nop + .line 121,121 : 13,107 '' + IL_0001: ldarg.2 + IL_0002: ldtoken Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_0007: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000c: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_0011: unbox.any Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_0016: stloc.0 + .line 122,122 : 13,49 '' + IL_0017: ldnull + IL_0018: stloc.1 + .line 123,123 : 13,36 '' + IL_0019: ldnull + IL_001a: stloc.2 + .line 125,125 : 13,46 '' + IL_001b: ldloca.s itemData + IL_001d: ldfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + IL_0022: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0027: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_002c: ldc.i4.0 + IL_002d: ceq + IL_002f: stloc.s CS$4$0001 + IL_0031: ldloc.s CS$4$0001 + IL_0033: brtrue.s IL_0047 + + .line 126,126 : 17,82 '' + IL_0035: call class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::get_Singleton() + IL_003a: ldloca.s itemData + IL_003c: ldfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + IL_0041: callvirt instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Native.IconImageCache::GetIconImage(native int) + IL_0046: stloc.2 + .line 128,128 : 13,112 '' + IL_0047: ldloca.s itemData + IL_0049: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Text + IL_004e: ldloca.s itemData + IL_0050: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + IL_0055: ldloca.s itemData + IL_0057: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Service + IL_005c: ldloc.2 + IL_005d: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::.ctor(string, + string, + string, + class [System.Drawing]System.Drawing.Image) + IL_0062: stloc.1 + .line 130,130 : 13,32 '' + IL_0063: ldarg.0 + IL_0064: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_InvokeRequired() + IL_0069: ldc.i4.0 + IL_006a: ceq + IL_006c: stloc.s CS$4$0001 + IL_006e: ldloc.s CS$4$0001 + IL_0070: brtrue.s IL_0094 + + .line 131,131 : 17,65 '' + IL_0072: ldarg.0 + IL_0073: ldsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItemDelegate + IL_0078: ldc.i4.2 + IL_0079: newarr [mscorlib]System.Object + IL_007e: stloc.s CS$0$0002 + IL_0080: ldloc.s CS$0$0002 + IL_0082: ldc.i4.0 + IL_0083: ldarg.0 + IL_0084: stelem.ref + IL_0085: ldloc.s CS$0$0002 + IL_0087: ldc.i4.1 + IL_0088: ldloc.1 + IL_0089: stelem.ref + IL_008a: ldloc.s CS$0$0002 + IL_008c: call instance object [System.Windows.Forms]System.Windows.Forms.Control::Invoke(class [mscorlib]System.Delegate, + object[]) + IL_0091: pop + IL_0092: br.s IL_00a1 + + .line 133,133 : 17,57 '' + IL_0094: ldsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItemDelegate + IL_0099: ldarg.0 + IL_009a: ldloc.1 + IL_009b: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker::Invoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem) + IL_00a0: nop + .line 135,135 : 13,36 '' + IL_00a1: ldloc.1 + IL_00a2: callvirt instance int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_Handle() + IL_00a7: stloc.3 + IL_00a8: br.s IL_00aa + + .line 136,136 : 9,10 '' + IL_00aa: ldloc.3 + IL_00ab: ret + } // end of method ManagedMainMenu::AddMainMenuItemServiceInterceptor + + .method private hidebysig static void AddMainMenuItem(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem item) cil managed + { + // Code size 124 (0x7c) + .maxstack 3 + .locals init ([0] string popupName, + [1] class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem popupItem, + [2] class [System.Windows.Forms]System.Windows.Forms.ToolStripItem[] popupItems, + [3] bool CS$4$0000) + .line 139,139 : 9,10 '' + IL_0000: nop + .line 140,140 : 13,55 '' + IL_0001: ldarg.1 + IL_0002: callvirt instance string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_PopUpMenu() + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: stloc.3 + IL_000d: ldloc.3 + IL_000e: brtrue.s IL_006e + + .line 141,141 : 13,14 '' + IL_0010: nop + .line 142,142 : 17,51 '' + IL_0011: ldarg.1 + IL_0012: callvirt instance string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_PopUpMenu() + IL_0017: stloc.0 + .line 143,143 : 17,52 '' + IL_0018: ldnull + IL_0019: stloc.1 + .line 145,145 : 17,80 '' + IL_001a: ldarg.0 + IL_001b: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0020: ldloc.0 + IL_0021: ldc.i4.0 + IL_0022: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem[] [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Find(string, + bool) + IL_0027: stloc.2 + .line 147,147 : 17,43 '' + IL_0028: ldloc.2 + IL_0029: ldlen + IL_002a: conv.i4 + IL_002b: ldc.i4.0 + IL_002c: cgt + IL_002e: ldc.i4.0 + IL_002f: ceq + IL_0031: stloc.3 + IL_0032: ldloc.3 + IL_0033: brtrue.s IL_0040 + + .line 148,148 : 21,66 '' + IL_0035: ldloc.2 + IL_0036: ldc.i4.0 + IL_0037: ldelem.ref + IL_0038: castclass [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem + IL_003d: stloc.1 + IL_003e: br.s IL_005e + + .line 150,150 : 17,18 '' + IL_0040: nop + .line 151,151 : 21,66 '' + IL_0041: ldloc.0 + IL_0042: newobj instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::.ctor(string) + IL_0047: stloc.1 + .line 152,152 : 21,48 '' + IL_0048: ldloc.1 + IL_0049: ldloc.0 + IL_004a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Name(string) + IL_004f: nop + .line 154,154 : 21,47 '' + IL_0050: ldarg.0 + IL_0051: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0056: ldloc.1 + IL_0057: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_005c: pop + .line 155,155 : 17,18 '' + IL_005d: nop + .line 157,157 : 17,51 '' + IL_005e: ldloc.1 + IL_005f: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStripDropDownItem::get_DropDownItems() + IL_0064: ldarg.1 + IL_0065: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_006a: pop + .line 158,158 : 13,14 '' + IL_006b: nop + IL_006c: br.s IL_007b + + .line 160,160 : 17,38 '' + IL_006e: ldarg.0 + IL_006f: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0074: ldarg.1 + IL_0075: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_007a: pop + .line 161,161 : 9,10 '' + IL_007b: ret + } // end of method ManagedMainMenu::AddMainMenuItem + + .method private hidebysig instance int32 + ModifyMenuItemInterceptor(native uint wParam, + native int lParam) cil managed + { + // Code size 238 (0xee) + .maxstack 5 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM itemData, + [1] string handle, + [2] int32 CS$1$0000, + [3] bool CS$4$0001, + [4] object[] CS$0$0002) + .line 164,164 : 9,10 '' + IL_0000: nop + .line 166,166 : 13,14 '' + .try + { + IL_0001: nop + .line 167,167 : 17,111 '' + IL_0002: ldarg.2 + IL_0003: ldtoken Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_0008: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000d: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_0012: unbox.any Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_0017: stloc.0 + .line 168,168 : 17,51 '' + IL_0018: ldarga.s wParam + IL_001a: constrained. [mscorlib]System.UIntPtr + IL_0020: callvirt instance string [mscorlib]System.Object::ToString() + IL_0025: stloc.1 + .line 170,170 : 17,48 '' + IL_0026: ldarg.0 + IL_0027: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_002c: ldloc.1 + IL_002d: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::ContainsKey(string) + IL_0032: stloc.3 + IL_0033: ldloc.3 + IL_0034: brtrue.s IL_0099 + + .line 171,171 : 17,18 '' + IL_0036: nop + .line 172,174 : 21,107 '' + IL_0037: ldloca.s itemData + IL_0039: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + IL_003e: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0043: brtrue.s IL_007d + + IL_0045: ldarg.0 + IL_0046: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_004b: ldloca.s itemData + IL_004d: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + IL_0052: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::ContainsKey(string) + IL_0057: brfalse.s IL_007d + + IL_0059: ldarg.0 + IL_005a: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_005f: ldloca.s itemData + IL_0061: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + IL_0066: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::get_Item(string) + IL_006b: castclass [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem + IL_0070: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStripDropDownItem::get_DropDownItems() + IL_0075: ldloc.1 + IL_0076: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::ContainsKey(string) + IL_007b: br.s IL_007e + + IL_007d: ldc.i4.0 + IL_007e: nop + IL_007f: stloc.3 + IL_0080: ldloc.3 + IL_0081: brtrue.s IL_0098 + + .line 175,175 : 29,134 '' + IL_0083: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0088: ldstr "CList/ModifyMenuItem" + IL_008d: ldarg.1 + IL_008e: ldarg.2 + IL_008f: ldc.i4.1 + IL_0090: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int, + bool) + IL_0095: stloc.2 + IL_0096: leave.s IL_00eb + + .line 176,176 : 17,18 '' + IL_0098: nop + .line 178,178 : 17,36 '' + IL_0099: ldarg.0 + IL_009a: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_InvokeRequired() + IL_009f: ldc.i4.0 + IL_00a0: ceq + IL_00a2: stloc.3 + IL_00a3: ldloc.3 + IL_00a4: brtrue.s IL_00d2 + + .line 179,179 : 21,76 '' + IL_00a6: ldarg.0 + IL_00a7: ldsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItemDelegate + IL_00ac: ldc.i4.3 + IL_00ad: newarr [mscorlib]System.Object + IL_00b2: stloc.s CS$0$0002 + IL_00b4: ldloc.s CS$0$0002 + IL_00b6: ldc.i4.0 + IL_00b7: ldarg.0 + IL_00b8: stelem.ref + IL_00b9: ldloc.s CS$0$0002 + IL_00bb: ldc.i4.1 + IL_00bc: ldloc.0 + IL_00bd: box Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_00c2: stelem.ref + IL_00c3: ldloc.s CS$0$0002 + IL_00c5: ldc.i4.2 + IL_00c6: ldloc.1 + IL_00c7: stelem.ref + IL_00c8: ldloc.s CS$0$0002 + IL_00ca: call instance object [System.Windows.Forms]System.Windows.Forms.Control::Invoke(class [mscorlib]System.Delegate, + object[]) + IL_00cf: pop + IL_00d0: br.s IL_00e1 + + .line 181,181 : 21,72 '' + IL_00d2: ldsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItemDelegate + IL_00d7: ldarg.0 + IL_00d8: ldloca.s itemData + IL_00da: ldloc.1 + IL_00db: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker::Invoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu, + valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM&, + string) + IL_00e0: nop + .line 183,183 : 17,26 '' + IL_00e1: ldc.i4.0 + IL_00e2: stloc.2 + IL_00e3: leave.s IL_00eb + + .line 185,185 : 13,18 '' + } // end .try + catch [mscorlib]System.Object + { + IL_00e5: pop + .line 186,186 : 13,14 '' + IL_00e6: nop + .line 187,187 : 17,27 '' + IL_00e7: ldc.i4.m1 + IL_00e8: stloc.2 + IL_00e9: leave.s IL_00eb + + } // end handler + IL_00eb: nop + .line 189,189 : 9,10 '' + IL_00ec: ldloc.2 + IL_00ed: ret + } // end of method ManagedMainMenu::ModifyMenuItemInterceptor + + .method private hidebysig static void ModifyMenuItem(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM& itemData, + string handle) cil managed + { + // Code size 377 (0x179) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem item, + [1] valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags 'flags', + [2] valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties itemFlags, + [3] class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem popupItem, + [4] bool CS$4$0000, + [5] valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties CS$4$0001) + .line 192,192 : 9,10 '' + IL_0000: nop + .line 193,193 : 13,116 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0007: ldarg.2 + IL_0008: ldarg.1 + IL_0009: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + IL_000e: ldnull + IL_000f: ceq + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem[] [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Find(string, + bool) + IL_0019: ldc.i4.0 + IL_001a: ldelem.ref + IL_001b: castclass Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem + IL_0020: stloc.0 + .line 194,194 : 13,77 '' + IL_0021: ldarg.1 + IL_0022: ldfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Flags + IL_0027: stloc.1 + .line 196,196 : 13,90 '' + IL_0028: ldloc.1 + IL_0029: ldc.i4 0x80000000 + IL_002e: and + IL_002f: ldc.i4 0x80000000 + IL_0034: ceq + IL_0036: ldc.i4.0 + IL_0037: ceq + IL_0039: stloc.s CS$4$0000 + IL_003b: ldloc.s CS$4$0000 + IL_003d: brtrue.s IL_004c + + .line 197,197 : 17,43 '' + IL_003f: ldloc.0 + IL_0040: ldarg.1 + IL_0041: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Text + IL_0046: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Text(string) + IL_004b: nop + .line 199,199 : 13,90 '' + IL_004c: ldloc.1 + IL_004d: ldc.i4 0x20000000 + IL_0052: and + IL_0053: ldc.i4 0x20000000 + IL_0058: ceq + IL_005a: ldc.i4.0 + IL_005b: ceq + IL_005d: stloc.s CS$4$0000 + IL_005f: ldloc.s CS$4$0000 + IL_0061: brtrue.s IL_007a + + .line 200,200 : 17,83 '' + IL_0063: ldloc.0 + IL_0064: call class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::get_Singleton() + IL_0069: ldarg.1 + IL_006a: ldfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + IL_006f: callvirt instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Native.IconImageCache::GetIconImage(native int) + IL_0074: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0079: nop + .line 202,202 : 13,94 '' + IL_007a: ldloc.1 + IL_007b: ldc.i4 0x10000000 + IL_0080: and + IL_0081: ldc.i4 0x10000000 + IL_0086: ceq + IL_0088: ldc.i4.0 + IL_0089: ceq + IL_008b: stloc.s CS$4$0000 + IL_008d: ldloc.s CS$4$0000 + IL_008f: brtrue.s IL_009e + + .line 203,203 : 17,59 '' + IL_0091: ldloc.0 + IL_0092: ldarg.1 + IL_0093: ldfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::HotKey + IL_0098: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::set_ShortcutKeys(valuetype [System.Windows.Forms]System.Windows.Forms.Keys) + IL_009d: nop + .line 205,205 : 13,92 '' + IL_009e: ldloc.1 + IL_009f: ldc.i4 0x40000000 + IL_00a4: and + IL_00a5: ldc.i4 0x40000000 + IL_00aa: ceq + IL_00ac: ldc.i4.0 + IL_00ad: ceq + IL_00af: stloc.s CS$4$0000 + IL_00b1: ldloc.s CS$4$0000 + IL_00b3: brtrue IL_0178 + + .line 206,206 : 13,14 '' + IL_00b8: nop + .line 207,207 : 17,108 '' + IL_00b9: ldloc.1 + IL_00ba: ldc.i4 0xfffffff + IL_00bf: and + IL_00c0: stloc.2 + .line 209,209 : 17,35 '' + IL_00c1: ldloc.2 + IL_00c2: stloc.s CS$4$0001 + IL_00c4: ldloc.s CS$4$0001 + IL_00c6: switch ( + IL_015d, + IL_00e4, + IL_0153, + IL_0177, + IL_00f1) + IL_00df: br IL_0177 + + .line 212,212 : 25,46 '' + IL_00e4: ldloc.0 + IL_00e5: ldc.i4.0 + IL_00e6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Enabled(bool) + IL_00eb: nop + .line 213,213 : 25,31 '' + IL_00ec: br IL_0177 + + .line 215,215 : 25,52 '' + IL_00f1: ldloc.0 + IL_00f2: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem [System.Windows.Forms]System.Windows.Forms.ToolStripItem::get_OwnerItem() + IL_00f7: ldnull + IL_00f8: ceq + IL_00fa: ldc.i4.0 + IL_00fb: ceq + IL_00fd: stloc.s CS$4$0000 + IL_00ff: ldloc.s CS$4$0000 + IL_0101: brtrue.s IL_0112 + + .line 216,216 : 29,53 '' + IL_0103: ldarg.0 + IL_0104: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0109: ldloc.0 + IL_010a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Remove(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_010f: nop + IL_0110: br.s IL_0151 + + .line 218,218 : 25,26 '' + IL_0112: nop + .line 219,219 : 29,93 '' + IL_0113: ldloc.0 + IL_0114: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem [System.Windows.Forms]System.Windows.Forms.ToolStripItem::get_OwnerItem() + IL_0119: castclass [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem + IL_011e: stloc.3 + .line 220,220 : 29,66 '' + IL_011f: ldloc.3 + IL_0120: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStripDropDownItem::get_DropDownItems() + IL_0125: ldloc.0 + IL_0126: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Remove(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_012b: nop + .line 222,222 : 29,68 '' + IL_012c: ldloc.3 + IL_012d: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStripDropDownItem::get_DropDownItems() + IL_0132: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.Layout.ArrangedElementCollection::get_Count() + IL_0137: ldc.i4.0 + IL_0138: ceq + IL_013a: ldc.i4.0 + IL_013b: ceq + IL_013d: stloc.s CS$4$0000 + IL_013f: ldloc.s CS$4$0000 + IL_0141: brtrue.s IL_0150 + + .line 223,223 : 33,62 '' + IL_0143: ldarg.0 + IL_0144: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0149: ldloc.3 + IL_014a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Remove(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_014f: nop + .line 224,224 : 25,26 '' + IL_0150: nop + .line 225,225 : 25,31 '' + IL_0151: br.s IL_0177 + + .line 227,227 : 25,45 '' + IL_0153: ldloc.0 + IL_0154: ldc.i4.1 + IL_0155: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::set_Checked(bool) + IL_015a: nop + .line 228,228 : 25,31 '' + IL_015b: br.s IL_0177 + + .line 230,230 : 25,45 '' + IL_015d: ldloc.0 + IL_015e: ldc.i4.1 + IL_015f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Enabled(bool) + IL_0164: nop + .line 231,231 : 25,45 '' + IL_0165: ldloc.0 + IL_0166: ldc.i4.1 + IL_0167: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Visible(bool) + IL_016c: nop + .line 232,232 : 25,46 '' + IL_016d: ldloc.0 + IL_016e: ldc.i4.0 + IL_016f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::set_Checked(bool) + IL_0174: nop + .line 233,233 : 25,31 '' + IL_0175: br.s IL_0177 + + .line 235,235 : 13,14 '' + IL_0177: nop + .line 236,236 : 9,10 '' + IL_0178: ret + } // end of method ManagedMainMenu::ModifyMenuItem + +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.CCSDATA + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public initonly native int ContactHandle + .field public native int ServiceNamePtr + .field public native uint WParam + .field public native int LParam + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + string serviceName) cil managed + { + // Code size 57 (0x39) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle CS$0$0000) + .line 42,42 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\CCSDATA.cs' + IL_0000: nop + .line 43,43 : 13,56 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0008: stfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ContactHandle + .line 44,44 : 13,102 '' + IL_000d: ldarg.0 + IL_000e: ldarg.2 + IL_000f: ldc.i4.0 + IL_0010: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0015: stloc.0 + IL_0016: ldloca.s CS$0$0000 + IL_0018: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_001d: stfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ServiceNamePtr + .line 46,46 : 13,40 '' + IL_0022: ldarg.0 + IL_0023: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0028: stfld native uint Virtuoso.Miranda.Plugins.Native.CCSDATA::WParam + .line 47,47 : 13,39 '' + IL_002d: ldarg.0 + IL_002e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0033: stfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::LParam + .line 48,48 : 9,10 '' + IL_0038: ret + } // end of method CCSDATA::.ctor + + .method public hidebysig instance void + Free() cil managed + { + // Code size 37 (0x25) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 51,51 : 9,10 '' + IL_0000: nop + .line 52,52 : 13,47 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ServiceNamePtr + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: stloc.0 + IL_0015: ldloc.0 + IL_0016: brtrue.s IL_0024 + + .line 53,53 : 17,53 '' + IL_0018: ldarg.0 + IL_0019: ldfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ServiceNamePtr + IL_001e: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_0023: nop + .line 54,54 : 9,10 '' + IL_0024: ret + } // end of method CCSDATA::Free + +} // end of class Virtuoso.Miranda.Plugins.Native.CCSDATA + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public native int Module + .field public native int Name + .field public valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Value + .method public hidebysig static object + ExtractValue(native int pDbWriteSetting) cil managed + { + // Code size 276 (0x114) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING dbWriteSetting, + [1] object CS$1$0000, + [2] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType CS$4$0001) + .line 39,39 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\DBCONTACTSETTING.cs' + IL_0000: nop + .line 40,40 : 13,105 '' + IL_0001: ldarga.s pDbWriteSetting + IL_0003: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0008: ldobj Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + IL_000d: stloc.0 + .line 42,42 : 13,68 '' + IL_000e: ldloca.s dbWriteSetting + IL_0010: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0015: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + IL_001a: stloc.2 + IL_001b: ldloc.2 + IL_001c: switch ( + IL_0103, + IL_008e, + IL_00a7, + IL_0107, + IL_00c0) + IL_0035: ldloc.2 + IL_0036: ldc.i4 0xfc + IL_003b: sub + IL_003c: switch ( + IL_0072, + IL_0072, + IL_00d9, + IL_0056) + IL_0051: br IL_0107 + + .line 45,45 : 21,87 '' + IL_0056: ldloca.s dbWriteSetting + IL_0058: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_005d: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0062: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + IL_0067: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringAnsi(native int) + IL_006c: stloc.1 + IL_006d: br IL_0112 + + .line 48,48 : 21,86 '' + IL_0072: ldloca.s dbWriteSetting + IL_0074: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0079: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_007e: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + IL_0083: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringUni(native int) + IL_0088: stloc.1 + IL_0089: br IL_0112 + + .line 50,50 : 21,65 '' + IL_008e: ldloca.s dbWriteSetting + IL_0090: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0095: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_009a: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Byte + IL_009f: box [mscorlib]System.Byte + IL_00a4: stloc.1 + IL_00a5: br.s IL_0112 + + .line 52,52 : 21,65 '' + IL_00a7: ldloca.s dbWriteSetting + IL_00a9: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00ae: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_00b3: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Word + IL_00b8: box [mscorlib]System.UInt16 + IL_00bd: stloc.1 + IL_00be: br.s IL_0112 + + .line 54,54 : 21,66 '' + IL_00c0: ldloca.s dbWriteSetting + IL_00c2: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00c7: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_00cc: ldfld uint32 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::DWord + IL_00d1: box [mscorlib]System.UInt32 + IL_00d6: stloc.1 + IL_00d7: br.s IL_0112 + + .line 56,56 : 21,112 '' + IL_00d9: ldloca.s dbWriteSetting + IL_00db: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00e0: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB Virtuoso.Miranda.Plugins.Native.DBVARIANT::Blob + IL_00e5: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB::BlobPtr + IL_00ea: ldloca.s dbWriteSetting + IL_00ec: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00f1: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB Virtuoso.Miranda.Plugins.Native.DBVARIANT::Blob + IL_00f6: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB::Size + IL_00fb: call uint8[] Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToBlob(native int, + int32) + IL_0100: stloc.1 + IL_0101: br.s IL_0112 + + .line 58,58 : 21,33 '' + IL_0103: ldnull + IL_0104: stloc.1 + IL_0105: br.s IL_0112 + + .line 60,60 : 21,57 '' + IL_0107: ldloc.0 + IL_0108: call void Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::LogUnsupportedValue(valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING) + IL_010d: nop + .line 61,61 : 21,33 '' + IL_010e: ldnull + IL_010f: stloc.1 + IL_0110: br.s IL_0112 + + .line 63,63 : 9,10 '' + IL_0112: ldloc.1 + IL_0113: ret + } // end of method DBCONTACTWRITESETTING::ExtractValue + + .method private hidebysig static void LogUnsupportedValue(valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING dbWriteSetting) cil managed + { + // Code size 101 (0x65) + .maxstack 6 + .locals init ([0] string name, + [1] string module, + [2] string[] CS$0$0000) + .line 66,66 : 9,10 '' + IL_0000: nop + .line 67,67 : 13,33 '' + IL_0001: ldstr "N/A" + IL_0006: stloc.0 + .line 68,68 : 13,35 '' + IL_0007: ldstr "N/A" + IL_000c: stloc.1 + .line 71,71 : 13,14 '' + .try + { + IL_000d: nop + .line 72,72 : 17,85 '' + IL_000e: ldarga.s dbWriteSetting + IL_0010: ldfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Name + IL_0015: ldc.i4.0 + IL_0016: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_001b: stloc.0 + .line 73,73 : 17,89 '' + IL_001c: ldarga.s dbWriteSetting + IL_001e: ldfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Module + IL_0023: ldc.i4.0 + IL_0024: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0029: stloc.1 + .line 74,74 : 13,14 '' + IL_002a: nop + IL_002b: leave.s IL_0032 + + .line 75,75 : 13,30 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_002d: pop + .line 76,76 : 13,14 '' + IL_002e: nop + .line 76,76 : 15,16 '' + IL_002f: nop + IL_0030: leave.s IL_0032 + + } // end handler + IL_0032: nop + .line 78,79 : 13,80 '' + IL_0033: ldstr "Attempted to extract an unsupported DB contact set" + + "ting {0}:{1} of type {1}" + IL_0038: ldloc.1 + IL_0039: ldc.i4.2 + IL_003a: newarr [mscorlib]System.String + IL_003f: stloc.2 + IL_0040: ldloc.2 + IL_0041: ldc.i4.0 + IL_0042: ldloc.0 + IL_0043: stelem.ref + IL_0044: ldloc.2 + IL_0045: ldc.i4.1 + IL_0046: ldarga.s dbWriteSetting + IL_0048: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_004d: ldflda uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + IL_0052: ldstr "X" + IL_0057: call instance string [mscorlib]System.Byte::ToString(string) + IL_005c: stelem.ref + IL_005d: ldloc.2 + IL_005e: call void Virtuoso.Miranda.Plugins.Log::Warning(string, + string, + string[]) + IL_0063: nop + .line 80,80 : 9,10 '' + IL_0064: ret + } // end of method DBCONTACTWRITESETTING::LogUnsupportedValue + +} // end of class Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public string Module + .field public string Name + .field public native int DbVariantPtr +} // end of class Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Native.DbVariantValue + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname uint8 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_DELETED = uint8(0x00) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_BYTE = uint8(0x01) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_WORD = uint8(0x02) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_DWORD = uint8(0x04) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_ASCIIZ = uint8(0xFF) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_BLOB = uint8(0xFE) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_UTF8 = uint8(0xFD) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_WCHAR = uint8(0xFC) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVTF_VARIABLELENGTH = uint8(0x80) +} // end of class Virtuoso.Miranda.Plugins.Native.DbVariantValue + +.class private explicit ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBVARIANT + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 12 + .field [0] public uint8 Type + .field [4] public valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Primitives + .field [4] public valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Text + .field [4] public valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB Blob +} // end of class Virtuoso.Miranda.Plugins.Native.DBVARIANT + +.class private explicit ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field [0] public uint8 Byte + .field [0] public char Char + .field [0] public uint16 Word + .field [0] public int16 Short + .field [0] public uint32 DWord + .field [0] public int32 Integer +} // end of class Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE + +.class private explicit ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field [0] public native int TextPtr + .field [4] public uint16 TextBufferSize +} // end of class Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT + +.class private explicit ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field [0] public uint16 Size + .field [2] public native int BlobPtr +} // end of class Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB + +.class private sequential ansi beforefieldinit Virtuoso.Hyphen.Native.PLUGININFO + extends [mscorlib]System.Object +{ + .pack 4 + .size 0 + .field public int32 Size + .field public marshal( lpstr) string ShortName + .field public uint32 Version + .field public marshal( lpstr) string Description + .field public marshal( lpstr) string Author + .field public marshal( lpstr) string AuthorEmail + .field public marshal( lpstr) string Copyright + .field public marshal( lpstr) string HomePage + .field public uint8 Flags + .field public int32 ReplacesDefaultModule + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method PLUGININFO::.ctor + +} // end of class Virtuoso.Hyphen.Native.PLUGININFO + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.IconImageCache + extends [mscorlib]System.Object +{ + .field private static class Virtuoso.Miranda.Plugins.Native.IconImageCache singleton + .field private initonly class [mscorlib]System.Collections.Generic.Dictionary`2 IconCache + .field private initonly class [mscorlib]System.Collections.Generic.Dictionary`2 StreamedIconCache + .field private initonly class [mscorlib]System.Collections.Generic.Dictionary`2 ImageCache + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed synchronized + { + // Code size 46 (0x2e) + .maxstack 8 + .line 41,42 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\IconImageCache.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 43,43 : 9,10 '' + IL_0007: nop + .line 44,44 : 13,57 '' + IL_0008: ldarg.0 + IL_0009: ldc.i4.1 + IL_000a: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_000f: stfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + .line 45,45 : 13,62 '' + IL_0014: ldarg.0 + IL_0015: ldc.i4.1 + IL_0016: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_001b: stfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + .line 46,46 : 13,57 '' + IL_0020: ldarg.0 + IL_0021: ldc.i4.1 + IL_0022: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0027: stfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + .line 47,47 : 9,10 '' + IL_002c: nop + IL_002d: ret + } // end of method IconImageCache::.ctor + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Native.IconImageCache + get_Singleton() cil managed + { + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.IconImageCache CS$1$0000) + .line 56,56 : 13,14 '' + IL_0000: nop + .line 57,57 : 17,72 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::singleton + IL_0006: dup + IL_0007: brtrue.s IL_0015 + + IL_0009: pop + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Native.IconImageCache::.ctor() + IL_000f: dup + IL_0010: stsfld class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::singleton + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 58,58 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method IconImageCache::get_Singleton + + .method public hidebysig instance class [System.Drawing]System.Drawing.Icon + GetIcon(native int handle) cil managed + { + // Code size 92 (0x5c) + .maxstack 4 + .locals init ([0] class [System.Drawing]System.Drawing.Icon icon, + [1] native int key, + [2] class [System.Drawing]System.Drawing.Icon CS$1$0000, + [3] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001, + [4] bool CS$4$0002) + .line 66,66 : 9,10 '' + IL_0000: nop + .line 67,67 : 13,29 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0007: dup + IL_0008: stloc.3 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 68,68 : 13,14 '' + .try + { + IL_000f: nop + .line 69,69 : 17,34 '' + IL_0010: ldnull + IL_0011: stloc.0 + .line 70,70 : 17,37 '' + IL_0012: ldarg.1 + IL_0013: stloc.1 + .line 72,72 : 17,48 '' + IL_0014: ldarg.0 + IL_0015: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_001a: ldloc.1 + IL_001b: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0020: ldc.i4.0 + IL_0021: ceq + IL_0023: stloc.s CS$4$0002 + IL_0025: ldloc.s CS$4$0002 + IL_0027: brtrue.s IL_0038 + + .line 73,73 : 21,43 '' + IL_0029: ldarg.0 + IL_002a: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_002f: ldloc.1 + IL_0030: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0035: stloc.0 + IL_0036: br.s IL_004d + + .line 75,75 : 21,69 '' + IL_0038: ldarg.0 + IL_0039: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_003e: ldloc.1 + IL_003f: ldarg.1 + IL_0040: call class [System.Drawing]System.Drawing.Icon [System.Drawing]System.Drawing.Icon::FromHandle(native int) + IL_0045: dup + IL_0046: stloc.0 + IL_0047: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + IL_004c: nop + .line 77,77 : 17,29 '' + IL_004d: ldloc.0 + IL_004e: stloc.2 + IL_004f: leave.s IL_0059 + + } // end .try + finally + { + IL_0051: ldloc.3 + IL_0052: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0057: nop + IL_0058: endfinally + } // end handler + IL_0059: nop + .line 79,79 : 9,10 '' + IL_005a: ldloc.2 + IL_005b: ret + } // end of method IconImageCache::GetIcon + + .method public hidebysig instance class [System.Drawing]System.Drawing.Icon + GetStreamedIcon(class [mscorlib]System.IO.Stream 'stream') cil managed + { + // Code size 162 (0xa2) + .maxstack 3 + .locals init ([0] int32 streamHandle, + [1] class [System.Drawing]System.Drawing.Icon icon, + [2] class [System.Drawing]System.Drawing.Icon CS$1$0000, + [3] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001, + [4] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0002, + [5] bool CS$4$0003) + .line 82,82 : 9,10 '' + IL_0000: nop + .line 83,83 : 13,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0007: dup + IL_0008: stloc.3 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 84,84 : 13,14 '' + .try + { + IL_000f: nop + .line 85,85 : 17,33 '' + IL_0010: ldarg.0 + IL_0011: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0016: dup + IL_0017: stloc.s CS$2$0002 + IL_0019: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_001e: nop + .line 86,86 : 17,18 '' + .try + { + IL_001f: nop + .line 87,87 : 21,68 '' + IL_0020: ldarg.1 + IL_0021: call int32 Virtuoso.Miranda.Plugins.Native.IconImageCache::ComputeStreamHandle(class [mscorlib]System.IO.Stream) + IL_0026: stloc.0 + .line 89,89 : 21,69 '' + IL_0027: ldarg.0 + IL_0028: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_002d: ldloc.0 + IL_002e: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0033: ldc.i4.0 + IL_0034: ceq + IL_0036: stloc.s CS$4$0003 + IL_0038: ldloc.s CS$4$0003 + IL_003a: brtrue.s IL_004b + + .line 90,90 : 25,64 '' + IL_003c: ldarg.0 + IL_003d: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0042: ldloc.0 + IL_0043: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0048: stloc.2 + IL_0049: leave.s IL_009f + + .line 92,92 : 21,50 '' + IL_004b: ldarg.1 + IL_004c: newobj instance void [System.Drawing]System.Drawing.Icon::.ctor(class [mscorlib]System.IO.Stream) + IL_0051: stloc.1 + .line 94,94 : 21,60 '' + IL_0052: ldarg.0 + IL_0053: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0058: ldloc.0 + IL_0059: ldloc.1 + IL_005a: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + IL_005f: nop + .line 96,96 : 21,61 '' + IL_0060: ldarg.0 + IL_0061: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0066: ldloc.1 + IL_0067: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_006c: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0071: stloc.s CS$4$0003 + IL_0073: ldloc.s CS$4$0003 + IL_0075: brtrue.s IL_008a + + .line 97,97 : 25,55 '' + IL_0077: ldarg.0 + IL_0078: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_007d: ldloc.1 + IL_007e: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_0083: ldloc.1 + IL_0084: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + IL_0089: nop + .line 99,99 : 21,33 '' + IL_008a: ldloc.1 + IL_008b: stloc.2 + IL_008c: leave.s IL_009f + + } // end .try + finally + { + IL_008e: ldloc.s CS$2$0002 + IL_0090: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0095: nop + IL_0096: endfinally + } // end handler + } // end .try + finally + { + IL_0097: ldloc.3 + IL_0098: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_009d: nop + IL_009e: endfinally + } // end handler + IL_009f: nop + .line 102,102 : 9,10 '' + IL_00a0: ldloc.2 + IL_00a1: ret + } // end of method IconImageCache::GetStreamedIcon + + .method private hidebysig static int32 + ComputeStreamHandle(class [mscorlib]System.IO.Stream 'stream') cil managed + { + // Code size 81 (0x51) + .maxstack 2 + .locals init ([0] int32 streamHandle, + [1] int32 result, + [2] int64 prevPosition, + [3] int32 CS$1$0000, + [4] class [mscorlib]System.IO.Stream CS$2$0001, + [5] bool CS$4$0002) + .line 105,105 : 9,10 '' + IL_0000: nop + .line 106,106 : 13,26 '' + IL_0001: ldarg.0 + IL_0002: dup + IL_0003: stloc.s CS$2$0001 + IL_0005: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000a: nop + .line 107,107 : 13,14 '' + .try + { + IL_000b: nop + .line 108,108 : 17,38 '' + IL_000c: ldc.i4.0 + IL_000d: stloc.0 + .line 110,110 : 17,53 '' + IL_000e: ldarg.0 + IL_000f: callvirt instance int64 [mscorlib]System.IO.Stream::get_Position() + IL_0014: stloc.2 + .line 111,111 : 17,37 '' + IL_0015: ldarg.0 + IL_0016: ldc.i4.0 + IL_0017: conv.i8 + IL_0018: callvirt instance void [mscorlib]System.IO.Stream::set_Position(int64) + IL_001d: nop + IL_001e: br.s IL_0025 + + .line 114,114 : 21,50 '' + IL_0020: ldloc.0 + IL_0021: ldloc.1 + IL_0022: conv.u1 + IL_0023: add + IL_0024: stloc.0 + .line 113,113 : 17,59 '' + IL_0025: ldarg.0 + IL_0026: callvirt instance int32 [mscorlib]System.IO.Stream::ReadByte() + IL_002b: dup + IL_002c: stloc.1 + IL_002d: ldc.i4.m1 + IL_002e: ceq + IL_0030: ldc.i4.0 + IL_0031: ceq + IL_0033: stloc.s CS$4$0002 + IL_0035: ldloc.s CS$4$0002 + IL_0037: brtrue.s IL_0020 + + .line 116,116 : 17,48 '' + IL_0039: ldarg.0 + IL_003a: ldloc.2 + IL_003b: callvirt instance void [mscorlib]System.IO.Stream::set_Position(int64) + IL_0040: nop + .line 117,117 : 17,37 '' + IL_0041: ldloc.0 + IL_0042: stloc.3 + IL_0043: leave.s IL_004e + + } // end .try + finally + { + IL_0045: ldloc.s CS$2$0001 + IL_0047: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_004c: nop + IL_004d: endfinally + } // end handler + IL_004e: nop + .line 119,119 : 9,10 '' + IL_004f: ldloc.3 + IL_0050: ret + } // end of method IconImageCache::ComputeStreamHandle + + .method public hidebysig instance class [System.Drawing]System.Drawing.Image + GetIconImage(native int handle) cil managed + { + // Code size 98 (0x62) + .maxstack 4 + .locals init ([0] class [System.Drawing]System.Drawing.Image image, + [1] class [System.Drawing]System.Drawing.Icon icon, + [2] class [System.Drawing]System.Drawing.Image CS$1$0000, + [3] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001, + [4] bool CS$4$0002) + .line 122,122 : 9,10 '' + IL_0000: nop + .line 123,123 : 13,32 '' + IL_0001: ldnull + IL_0002: stloc.0 + .line 124,124 : 13,41 '' + IL_0003: ldarg.0 + IL_0004: ldarg.1 + IL_0005: call instance class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Native.IconImageCache::GetIcon(native int) + IL_000a: stloc.1 + .line 126,126 : 13,30 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_0011: dup + IL_0012: stloc.3 + IL_0013: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0018: nop + .line 127,127 : 13,14 '' + .try + { + IL_0019: nop + .line 128,128 : 17,50 '' + IL_001a: ldarg.0 + IL_001b: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_0020: ldloc.1 + IL_0021: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0026: ldc.i4.0 + IL_0027: ceq + IL_0029: stloc.s CS$4$0002 + IL_002b: ldloc.s CS$4$0002 + IL_002d: brtrue.s IL_003e + + .line 129,129 : 21,46 '' + IL_002f: ldarg.0 + IL_0030: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_0035: ldloc.1 + IL_0036: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_003b: stloc.0 + IL_003c: br.s IL_0053 + + .line 131,131 : 21,64 '' + IL_003e: ldarg.0 + IL_003f: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_0044: ldloc.1 + IL_0045: ldloc.1 + IL_0046: callvirt instance class [System.Drawing]System.Drawing.Bitmap [System.Drawing]System.Drawing.Icon::ToBitmap() + IL_004b: dup + IL_004c: stloc.0 + IL_004d: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + IL_0052: nop + .line 133,133 : 17,30 '' + IL_0053: ldloc.0 + IL_0054: stloc.2 + IL_0055: leave.s IL_005f + + } // end .try + finally + { + IL_0057: ldloc.3 + IL_0058: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_005d: nop + IL_005e: endfinally + } // end handler + IL_005f: nop + .line 135,135 : 9,10 '' + IL_0060: ldloc.2 + IL_0061: ret + } // end of method IconImageCache::GetIconImage + + .method public hidebysig instance bool + IsCached(native int handle) cil managed + { + // Code size 41 (0x29) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 138,138 : 9,10 '' + IL_0000: nop + .line 139,139 : 13,29 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0007: dup + IL_0008: stloc.1 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 140,140 : 17,54 '' + .try + { + IL_000f: ldarg.0 + IL_0010: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0015: ldarg.1 + IL_0016: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_001b: stloc.0 + IL_001c: leave.s IL_0026 + + } // end .try + finally + { + IL_001e: ldloc.1 + IL_001f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0024: nop + IL_0025: endfinally + } // end handler + IL_0026: nop + .line 141,141 : 9,10 '' + IL_0027: ldloc.0 + IL_0028: ret + } // end of method IconImageCache::IsCached + + .method public hidebysig instance bool + IsCached(class [mscorlib]System.IO.Stream 'stream') cil managed + { + // Code size 46 (0x2e) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 144,144 : 9,10 '' + IL_0000: nop + .line 145,145 : 13,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0007: dup + IL_0008: stloc.1 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 146,146 : 17,83 '' + .try + { + IL_000f: ldarg.0 + IL_0010: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0015: ldarg.1 + IL_0016: call int32 Virtuoso.Miranda.Plugins.Native.IconImageCache::ComputeStreamHandle(class [mscorlib]System.IO.Stream) + IL_001b: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0020: stloc.0 + IL_0021: leave.s IL_002b + + } // end .try + finally + { + IL_0023: ldloc.1 + IL_0024: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0029: nop + IL_002a: endfinally + } // end handler + IL_002b: nop + .line 147,147 : 9,10 '' + IL_002c: ldloc.0 + IL_002d: ret + } // end of method IconImageCache::IsCached + + .method public hidebysig instance void + Dispose() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 154,154 : 9,10 '' + IL_0000: nop + .line 155,155 : 13,27 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Native.IconImageCache::Dispose(bool) + IL_0008: nop + .line 156,156 : 9,10 '' + IL_0009: ret + } // end of method IconImageCache::Dispose + + .method private hidebysig instance void + Dispose(bool disposing) cil managed synchronized + { + // Code size 344 (0x158) + .maxstack 2 + .locals init ([0] class [System.Drawing]System.Drawing.Icon icon, + [1] class [System.Drawing]System.Drawing.Image image, + [2] bool CS$4$0000, + [3] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001, + [4] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0002, + [5] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0003, + [6] valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator CS$5$0004, + [7] valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator CS$5$0005, + [8] valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator CS$5$0006) + .line 160,160 : 9,10 '' + IL_0000: nop + .line 161,161 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: call void [mscorlib]System.GC::SuppressFinalize(object) + IL_0007: nop + .line 163,163 : 13,27 '' + IL_0008: ldarg.1 + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: stloc.2 + IL_000d: ldloc.2 + IL_000e: brtrue IL_0157 + + .line 164,164 : 13,14 '' + IL_0013: nop + .line 165,165 : 17,33 '' + IL_0014: ldarg.0 + IL_0015: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_001a: dup + IL_001b: stloc.3 + IL_001c: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0021: nop + .line 166,166 : 17,18 '' + .try + { + IL_0022: nop + .line 167,167 : 21,38 '' + IL_0023: ldarg.0 + IL_0024: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_0029: dup + IL_002a: stloc.s CS$2$0002 + IL_002c: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0031: nop + .line 168,168 : 21,22 '' + .try + { + IL_0032: nop + .line 169,169 : 25,49 '' + IL_0033: ldarg.0 + IL_0034: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0039: dup + IL_003a: stloc.s CS$2$0003 + IL_003c: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0041: nop + .line 170,170 : 25,26 '' + .try + { + IL_0042: nop + .line 171,171 : 29,36 '' + IL_0043: nop + .line 171,171 : 51,67 '' + IL_0044: ldarg.0 + IL_0045: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_004a: callvirt instance class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection class [mscorlib]System.Collections.Generic.Dictionary`2::get_Values() + IL_004f: callvirt instance valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection::GetEnumerator() + IL_0054: stloc.s CS$5$0004 + .try + { + IL_0056: br.s IL_0067 + + .line 171,171 : 38,47 '' + IL_0058: ldloca.s CS$5$0004 + IL_005a: call instance !1 valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::get_Current() + IL_005f: stloc.0 + .line 172,172 : 33,48 '' + IL_0060: ldloc.0 + IL_0061: callvirt instance void [System.Drawing]System.Drawing.Icon::Dispose() + IL_0066: nop + .line 171,171 : 48,50 '' + IL_0067: ldloca.s CS$5$0004 + IL_0069: call instance bool valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::MoveNext() + IL_006e: stloc.2 + IL_006f: ldloc.2 + IL_0070: brtrue.s IL_0058 + + IL_0072: leave.s IL_0083 + + } // end .try + finally + { + IL_0074: ldloca.s CS$5$0004 + IL_0076: constrained. valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator + IL_007c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0081: nop + IL_0082: endfinally + } // end handler + IL_0083: nop + .line 174,174 : 29,36 '' + IL_0084: nop + .line 174,174 : 51,75 '' + IL_0085: ldarg.0 + IL_0086: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_008b: callvirt instance class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection class [mscorlib]System.Collections.Generic.Dictionary`2::get_Values() + IL_0090: callvirt instance valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection::GetEnumerator() + IL_0095: stloc.s CS$5$0005 + .try + { + IL_0097: br.s IL_00a8 + + .line 174,174 : 38,47 '' + IL_0099: ldloca.s CS$5$0005 + IL_009b: call instance !1 valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::get_Current() + IL_00a0: stloc.0 + .line 175,175 : 33,48 '' + IL_00a1: ldloc.0 + IL_00a2: callvirt instance void [System.Drawing]System.Drawing.Icon::Dispose() + IL_00a7: nop + .line 174,174 : 48,50 '' + IL_00a8: ldloca.s CS$5$0005 + IL_00aa: call instance bool valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::MoveNext() + IL_00af: stloc.2 + IL_00b0: ldloc.2 + IL_00b1: brtrue.s IL_0099 + + IL_00b3: leave.s IL_00c4 + + } // end .try + finally + { + IL_00b5: ldloca.s CS$5$0005 + IL_00b7: constrained. valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator + IL_00bd: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_00c2: nop + IL_00c3: endfinally + } // end handler + IL_00c4: nop + .line 177,177 : 29,36 '' + IL_00c5: nop + .line 177,177 : 53,70 '' + IL_00c6: ldarg.0 + IL_00c7: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_00cc: callvirt instance class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection class [mscorlib]System.Collections.Generic.Dictionary`2::get_Values() + IL_00d1: callvirt instance valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection::GetEnumerator() + IL_00d6: stloc.s CS$5$0006 + .try + { + IL_00d8: br.s IL_00e9 + + .line 177,177 : 38,49 '' + IL_00da: ldloca.s CS$5$0006 + IL_00dc: call instance !1 valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::get_Current() + IL_00e1: stloc.1 + .line 178,178 : 33,49 '' + IL_00e2: ldloc.1 + IL_00e3: callvirt instance void [System.Drawing]System.Drawing.Image::Dispose() + IL_00e8: nop + .line 177,177 : 50,52 '' + IL_00e9: ldloca.s CS$5$0006 + IL_00eb: call instance bool valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::MoveNext() + IL_00f0: stloc.2 + IL_00f1: ldloc.2 + IL_00f2: brtrue.s IL_00da + + IL_00f4: leave.s IL_0105 + + } // end .try + finally + { + IL_00f6: ldloca.s CS$5$0006 + IL_00f8: constrained. valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator + IL_00fe: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0103: nop + IL_0104: endfinally + } // end handler + IL_0105: nop + .line 180,180 : 29,47 '' + IL_0106: ldarg.0 + IL_0107: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_010c: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + IL_0111: nop + .line 181,181 : 29,55 '' + IL_0112: ldarg.0 + IL_0113: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0118: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + IL_011d: nop + .line 182,182 : 29,48 '' + IL_011e: ldarg.0 + IL_011f: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_0124: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + IL_0129: nop + .line 184,184 : 29,46 '' + IL_012a: ldnull + IL_012b: stsfld class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::singleton + .line 185,185 : 25,26 '' + IL_0130: nop + IL_0131: leave.s IL_013c + + } // end .try + finally + { + IL_0133: ldloc.s CS$2$0003 + IL_0135: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_013a: nop + IL_013b: endfinally + } // end handler + IL_013c: nop + .line 186,186 : 21,22 '' + IL_013d: nop + IL_013e: leave.s IL_0149 + + } // end .try + finally + { + IL_0140: ldloc.s CS$2$0002 + IL_0142: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0147: nop + IL_0148: endfinally + } // end handler + IL_0149: nop + .line 187,187 : 17,18 '' + IL_014a: nop + IL_014b: leave.s IL_0155 + + } // end .try + finally + { + IL_014d: ldloc.3 + IL_014e: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0153: nop + IL_0154: endfinally + } // end handler + IL_0155: nop + .line 188,188 : 13,14 '' + IL_0156: nop + .line 189,189 : 9,10 '' + IL_0157: ret + } // end of method IconImageCache::Dispose + + .property class Virtuoso.Miranda.Plugins.Native.IconImageCache + Singleton() + { + .get class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::get_Singleton() + } // end of property IconImageCache::Singleton +} // end of class Virtuoso.Miranda.Plugins.Native.IconImageCache + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle + implements [mscorlib]System.IDisposable +{ + .method public hidebysig newslot specialname abstract virtual + instance native int get_IntPtr() cil managed + { + } // end of method IUnmanagedMemoryHandle::get_IntPtr + + .method public hidebysig newslot abstract virtual + instance void Free() cil managed + { + } // end of method IUnmanagedMemoryHandle::Free + + .property instance native int IntPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle::get_IntPtr() + } // end of property IUnmanagedMemoryHandle::IntPtr +} // end of class Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.InteropBuffer + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle, + [mscorlib]System.IDisposable +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field private static literal string LogCategory = "Hyphen::InteropBuffer" + .field private initonly int32 size + .field private native int sizeAsIntPtr + .field private native uint sizeAsUIntPtr + .field private initonly object SyncObject + .field private native int intPtr + .field private int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Owner + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) reserved + .method assembly hidebysig specialname rtspecialname + instance void .ctor(int32 size) cil managed + { + // Code size 109 (0x6d) + .maxstack 5 + .locals init ([0] bool CS$4$0000) + .line 53,53 : 9,41 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\InteropBuffer.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 54,54 : 9,10 '' + IL_0007: nop + .line 55,55 : 13,27 '' + IL_0008: ldarg.1 + IL_0009: ldc.i4.0 + IL_000a: cgt + IL_000c: stloc.0 + IL_000d: ldloc.0 + IL_000e: brtrue.s IL_001b + + .line 55,55 : 28,74 '' + IL_0010: ldstr "size" + IL_0015: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_001a: throw + + .line 57,57 : 13,39 '' + IL_001b: ldarg.0 + IL_001c: newobj instance void [mscorlib]System.Object::.ctor() + IL_0021: stfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + .line 58,58 : 13,87 '' + IL_0026: ldc.i4.0 + IL_0027: ldstr "Hyphen::InteropBuffer" + IL_002c: ldstr "InteropBuffer SyncObject initialized" + IL_0031: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0036: nop + .line 60,60 : 13,30 '' + IL_0037: ldarg.0 + IL_0038: ldarg.1 + IL_0039: stfld int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::size + .line 62,62 : 13,49 '' + IL_003e: ldarg.0 + IL_003f: ldarg.1 + IL_0040: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_0045: stfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + .line 63,63 : 13,98 '' + IL_004a: ldc.i4.0 + IL_004b: ldstr "Hyphen::InteropBuffer" + IL_0050: ldstr "InteropBuffer memory allocated (" + IL_0055: ldarg.1 + IL_0056: box [mscorlib]System.Int32 + IL_005b: ldstr " B)" + IL_0060: call string [mscorlib]System.String::Concat(object, + object, + object) + IL_0065: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_006a: nop + .line 64,64 : 9,10 '' + IL_006b: nop + IL_006c: ret + } // end of method InteropBuffer::.ctor + + .method family hidebysig virtual instance void + Finalize() cil managed + { + // Code size 22 (0x16) + .maxstack 2 + .line 67,67 : 9,10 '' + .try + { + IL_0000: nop + .line 68,68 : 13,28 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose(bool) + IL_0008: nop + .line 69,69 : 9,10 '' + IL_0009: nop + IL_000a: leave.s IL_0014 + + .line 69,69 : 9,10 '' + } // end .try + finally + { + IL_000c: ldarg.0 + IL_000d: call instance void [mscorlib]System.Object::Finalize() + IL_0012: nop + IL_0013: endfinally + } // end handler + IL_0014: nop + .line 69,69 : 9,10 '' + IL_0015: ret + } // end of method InteropBuffer::Finalize + + .method private hidebysig instance void + CheckLock() cil managed + { + // Code size 31 (0x1f) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 72,72 : 9,10 '' + IL_0000: nop + .line 73,73 : 13,28 '' + IL_0001: ldarg.0 + IL_0002: volatile. + IL_0004: ldfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 73,73 : 29,116 '' + IL_0013: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InteropBufferNotLocked() + IL_0018: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001d: throw + + .line 74,74 : 9,10 '' + IL_001e: ret + } // end of method InteropBuffer::CheckLock + + .method public hidebysig newslot specialname virtual final + instance native int get_IntPtr() cil managed + { + // Code size 77 (0x4d) + .maxstack 2 + .locals init ([0] native int CS$1$0000, + [1] object CS$2$0001, + [2] bool CS$4$0002) + .line 83,83 : 13,14 '' + IL_0000: nop + .line 84,84 : 17,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + IL_0007: dup + IL_0008: stloc.1 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 85,85 : 17,18 '' + .try + { + IL_000f: nop + .line 87,87 : 21,33 '' + IL_0010: ldarg.0 + IL_0011: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::CheckLock() + IL_0016: nop + .line 89,89 : 21,47 '' + IL_0017: ldarg.0 + IL_0018: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_001d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0022: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0027: ldc.i4.0 + IL_0028: ceq + IL_002a: stloc.2 + IL_002b: ldloc.2 + IL_002c: brtrue.s IL_0039 + + .line 90,90 : 25,76 '' + IL_002e: ldstr "InteropBuffer" + IL_0033: newobj instance void [mscorlib]System.ObjectDisposedException::.ctor(string) + IL_0038: throw + + .line 92,92 : 21,35 '' + IL_0039: ldarg.0 + IL_003a: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_003f: stloc.0 + IL_0040: leave.s IL_004a + + } // end .try + finally + { + IL_0042: ldloc.1 + IL_0043: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0048: nop + IL_0049: endfinally + } // end handler + IL_004a: nop + .line 94,94 : 13,14 '' + IL_004b: ldloc.0 + IL_004c: ret + } // end of method InteropBuffer::get_IntPtr + + .method private hidebysig newslot virtual final + instance void Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle.Free() cil managed + { + .override Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle::Free + // Code size 44 (0x2c) + .maxstack 2 + .locals init ([0] object CS$2$0000) + .line 98,98 : 9,10 '' + IL_0000: nop + .line 99,99 : 13,30 '' + IL_0001: ldarg.0 + IL_0002: ldfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + IL_0007: dup + IL_0008: stloc.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 100,100 : 13,14 '' + .try + { + IL_000f: nop + .line 101,101 : 17,29 '' + IL_0010: ldarg.0 + IL_0011: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::CheckLock() + IL_0016: nop + .line 102,102 : 17,31 '' + IL_0017: ldarg.0 + IL_0018: ldc.i4.1 + IL_0019: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose(bool) + IL_001e: nop + .line 103,103 : 13,14 '' + IL_001f: nop + IL_0020: leave.s IL_002a + + } // end .try + finally + { + IL_0022: ldloc.0 + IL_0023: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0028: nop + IL_0029: endfinally + } // end handler + IL_002a: nop + .line 104,104 : 9,10 '' + IL_002b: ret + } // end of method InteropBuffer::Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle.Free + + .method private hidebysig newslot virtual final + instance void System.IDisposable.Dispose() cil managed + { + .override [mscorlib]System.IDisposable::Dispose + // Code size 9 (0x9) + .maxstack 8 + .line 111,111 : 9,10 '' + IL_0000: nop + .line 112,112 : 13,51 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle::Free() + IL_0007: nop + .line 113,113 : 9,10 '' + IL_0008: ret + } // end of method InteropBuffer::System.IDisposable.Dispose + + .method assembly hidebysig instance void + Dispose(bool disposing) cil managed + { + // Code size 74 (0x4a) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 116,116 : 9,10 '' + IL_0000: nop + .line 117,117 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: call void [mscorlib]System.GC::SuppressFinalize(object) + IL_0007: nop + .line 119,119 : 13,39 '' + IL_0008: ldarg.0 + IL_0009: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_000e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0013: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: stloc.0 + IL_001c: ldloc.0 + IL_001d: brtrue.s IL_0049 + + .line 120,120 : 13,14 '' + IL_001f: nop + .line 121,121 : 17,45 '' + IL_0020: ldarg.0 + IL_0021: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_0026: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_002b: nop + .line 122,122 : 17,38 '' + IL_002c: ldarg.0 + IL_002d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0032: stfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + .line 124,124 : 17,84 '' + IL_0037: ldc.i4.0 + IL_0038: ldstr "Hyphen::InteropBuffer" + IL_003d: ldstr "InteropBuffer memory released" + IL_0042: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0047: nop + .line 125,125 : 13,14 '' + IL_0048: nop + .line 126,126 : 9,10 '' + IL_0049: ret + } // end of method InteropBuffer::Dispose + + .method public hidebysig specialname instance bool + get_Locked() cil managed + { + // Code size 20 (0x14) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 135,135 : 13,14 '' + IL_0000: nop + .line 136,136 : 17,35 '' + IL_0001: ldarg.0 + IL_0002: volatile. + IL_0004: ldfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: br.s IL_0012 + + .line 137,137 : 13,14 '' + IL_0012: ldloc.0 + IL_0013: ret + } // end of method InteropBuffer::get_Locked + + .method public hidebysig specialname instance int32 + get_Size() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 143,143 : 13,14 '' + IL_0000: nop + .line 144,144 : 17,29 '' + IL_0001: ldarg.0 + IL_0002: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::size + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 145,145 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method InteropBuffer::get_Size + + .method public hidebysig specialname instance native int + get_SizeAsIntPtr() cil managed + { + // Code size 52 (0x34) + .maxstack 2 + .locals init ([0] native int CS$1$0000, + [1] bool CS$4$0001) + .line 151,151 : 13,14 '' + IL_0000: nop + .line 152,152 : 17,49 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsIntPtr + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: stloc.1 + IL_0015: ldloc.1 + IL_0016: brtrue.s IL_0029 + + .line 153,153 : 21,53 '' + IL_0018: ldarg.0 + IL_0019: ldarg.0 + IL_001a: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::size + IL_001f: newobj instance void [mscorlib]System.IntPtr::.ctor(int32) + IL_0024: stfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsIntPtr + .line 155,155 : 17,37 '' + IL_0029: ldarg.0 + IL_002a: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsIntPtr + IL_002f: stloc.0 + IL_0030: br.s IL_0032 + + .line 156,156 : 13,14 '' + IL_0032: ldloc.0 + IL_0033: ret + } // end of method InteropBuffer::get_SizeAsIntPtr + + .method public hidebysig specialname instance native uint + get_SizeAsUIntPtr() cil managed + { + // Code size 53 (0x35) + .maxstack 2 + .locals init ([0] native uint CS$1$0000, + [1] bool CS$4$0001) + .line 162,162 : 13,14 '' + IL_0000: nop + .line 163,163 : 17,51 '' + IL_0001: ldarg.0 + IL_0002: ldfld native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsUIntPtr + IL_0007: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_000c: call bool [mscorlib]System.UIntPtr::op_Equality(native uint, + native uint) + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: stloc.1 + IL_0015: ldloc.1 + IL_0016: brtrue.s IL_002a + + .line 164,164 : 21,58 '' + IL_0018: ldarg.0 + IL_0019: ldarg.0 + IL_001a: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::size + IL_001f: conv.i8 + IL_0020: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint64) + IL_0025: stfld native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsUIntPtr + .line 166,166 : 17,38 '' + IL_002a: ldarg.0 + IL_002b: ldfld native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsUIntPtr + IL_0030: stloc.0 + IL_0031: br.s IL_0033 + + .line 167,167 : 13,14 '' + IL_0033: ldloc.0 + IL_0034: ret + } // end of method InteropBuffer::get_SizeAsUIntPtr + + .method assembly hidebysig specialname + instance bool get_Reserved() cil managed + { + // Code size 14 (0xe) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 173,173 : 13,14 '' + IL_0000: nop + .line 174,174 : 17,33 '' + IL_0001: ldarg.0 + IL_0002: volatile. + IL_0004: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::reserved + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + .line 175,175 : 13,14 '' + IL_000c: ldloc.0 + IL_000d: ret + } // end of method InteropBuffer::get_Reserved + + .method assembly hidebysig specialname + instance void set_Reserved(bool 'value') cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 177,177 : 13,14 '' + IL_0000: nop + .line 178,178 : 17,34 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: volatile. + IL_0005: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::reserved + .line 179,179 : 13,14 '' + IL_000a: ret + } // end of method InteropBuffer::set_Reserved + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 23 (0x17) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 187,187 : 9,10 '' + IL_0000: nop + .line 188,188 : 13,41 '' + IL_0001: ldarg.0 + IL_0002: ldflda native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_0007: constrained. [mscorlib]System.IntPtr + IL_000d: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0012: stloc.0 + IL_0013: br.s IL_0015 + + .line 189,189 : 9,10 '' + IL_0015: ldloc.0 + IL_0016: ret + } // end of method InteropBuffer::GetHashCode + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 57 (0x39) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer other, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 192,192 : 9,10 '' + IL_0000: nop + .line 193,193 : 13,29 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0010 + + .line 193,193 : 30,43 '' + IL_000c: ldc.i4.0 + IL_000d: stloc.1 + IL_000e: br.s IL_0037 + + .line 195,195 : 13,56 '' + IL_0010: ldarg.1 + IL_0011: isinst Virtuoso.Miranda.Plugins.Native.InteropBuffer + IL_0016: stloc.0 + .line 196,196 : 13,31 '' + IL_0017: ldloc.0 + IL_0018: ldnull + IL_0019: ceq + IL_001b: ldc.i4.0 + IL_001c: ceq + IL_001e: stloc.2 + IL_001f: ldloc.2 + IL_0020: brtrue.s IL_0026 + + .line 196,196 : 32,45 '' + IL_0022: ldc.i4.0 + IL_0023: stloc.1 + IL_0024: br.s IL_0037 + + .line 198,198 : 13,59 '' + IL_0026: ldarg.0 + IL_0027: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_002c: ldloc.0 + IL_002d: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0032: ceq + IL_0034: stloc.1 + IL_0035: br.s IL_0037 + + .line 199,199 : 9,10 '' + IL_0037: ldloc.1 + IL_0038: ret + } // end of method InteropBuffer::Equals + + .method public hidebysig instance void + Lock() cil managed + { + // Code size 104 (0x68) + .maxstack 4 + .line 202,202 : 9,10 '' + IL_0000: nop + .line 203,203 : 13,137 '' + IL_0001: ldc.i4.0 + IL_0002: ldstr "Hyphen::InteropBuffer" + IL_0007: ldstr "Attempting to lock InteropBuffer for thread id " + IL_000c: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0011: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_0016: box [mscorlib]System.Int32 + IL_001b: call string [mscorlib]System.String::Concat(object, + object) + IL_0020: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0025: nop + .line 205,205 : 13,39 '' + IL_0026: ldarg.0 + IL_0027: ldfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + IL_002c: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0031: nop + .line 206,206 : 13,58 '' + IL_0032: ldarg.0 + IL_0033: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0038: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_003d: volatile. + IL_003f: stfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + .line 208,208 : 13,94 '' + IL_0044: ldc.i4.0 + IL_0045: ldstr "Hyphen::InteropBuffer" + IL_004a: ldstr "InteropBuffer locked for thread id " + IL_004f: ldarg.0 + IL_0050: volatile. + IL_0052: ldfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + IL_0057: box [mscorlib]System.Int32 + IL_005c: call string [mscorlib]System.String::Concat(object, + object) + IL_0061: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0066: nop + .line 209,209 : 9,10 '' + IL_0067: ret + } // end of method InteropBuffer::Lock + + .method public hidebysig instance void + Unlock() cil managed + { + // Code size 144 (0x90) + .maxstack 4 + .locals init ([0] bool CS$4$0000) + .line 212,212 : 9,10 '' + IL_0000: nop + .line 213,213 : 13,138 '' + IL_0001: ldc.i4.0 + IL_0002: ldstr "Hyphen::InteropBuffer" + IL_0007: ldstr "Attempting to unlock InteropBuffer of thread id " + IL_000c: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0011: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_0016: box [mscorlib]System.Int32 + IL_001b: call string [mscorlib]System.String::Concat(object, + object) + IL_0020: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0025: nop + .line 214,214 : 13,25 '' + IL_0026: ldarg.0 + IL_0027: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::CheckLock() + IL_002c: nop + .line 216,216 : 13,63 '' + IL_002d: ldarg.0 + IL_002e: volatile. + IL_0030: ldfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + IL_0035: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_003a: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_003f: ceq + IL_0041: ldc.i4.0 + IL_0042: ceq + IL_0044: stloc.0 + IL_0045: ldloc.0 + IL_0046: brtrue.s IL_0084 + + .line 217,217 : 13,14 '' + IL_0048: nop + .line 218,218 : 17,42 '' + IL_0049: ldarg.0 + IL_004a: ldfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + IL_004f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0054: nop + .line 220,220 : 17,104 '' + IL_0055: ldc.i4.0 + IL_0056: ldstr "Hyphen::InteropBuffer" + IL_005b: ldstr "InteropBuffer unlocked by thread id " + IL_0060: ldarg.0 + IL_0061: volatile. + IL_0063: ldfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + IL_0068: box [mscorlib]System.Int32 + IL_006d: call string [mscorlib]System.String::Concat(object, + object) + IL_0072: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0077: nop + .line 221,221 : 17,27 '' + IL_0078: ldarg.0 + IL_0079: ldc.i4.0 + IL_007a: volatile. + IL_007c: stfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + .line 222,222 : 13,14 '' + IL_0081: nop + IL_0082: br.s IL_008f + + .line 224,224 : 17,119 '' + IL_0084: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidCrossThreadInteropBufferUnlock() + IL_0089: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_008e: throw + + .line 225,225 : 9,10 '' + IL_008f: ret + } // end of method InteropBuffer::Unlock + + .method public hidebysig instance void + Zero() cil managed + { + // Code size 71 (0x47) + .maxstack 3 + .locals init ([0] int32 i, + [1] object CS$2$0000, + [2] bool CS$4$0001) + .line 228,228 : 9,10 '' + IL_0000: nop + .line 229,229 : 13,30 '' + IL_0001: ldarg.0 + IL_0002: ldfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + IL_0007: dup + IL_0008: stloc.1 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 230,230 : 13,14 '' + .try + { + IL_000f: nop + .line 232,232 : 17,29 '' + IL_0010: ldarg.0 + IL_0011: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::CheckLock() + IL_0016: nop + .line 234,234 : 22,32 '' + IL_0017: ldc.i4.0 + IL_0018: stloc.0 + IL_0019: br.s IL_002d + + .line 235,235 : 21,53 '' + IL_001b: ldarg.0 + IL_001c: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_0021: ldloc.0 + IL_0022: ldc.i4.0 + IL_0023: call void [mscorlib]System.Runtime.InteropServices.Marshal::WriteByte(native int, + int32, + uint8) + IL_0028: nop + .line 234,234 : 43,46 '' + IL_0029: ldloc.0 + IL_002a: ldc.i4.1 + IL_002b: add + IL_002c: stloc.0 + .line 234,234 : 33,41 '' + IL_002d: ldloc.0 + IL_002e: ldarg.0 + IL_002f: call instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_0034: clt + IL_0036: stloc.2 + IL_0037: ldloc.2 + IL_0038: brtrue.s IL_001b + + .line 236,236 : 13,14 '' + IL_003a: nop + IL_003b: leave.s IL_0045 + + } // end .try + finally + { + IL_003d: ldloc.1 + IL_003e: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0043: nop + IL_0044: endfinally + } // end handler + IL_0045: nop + .line 237,237 : 9,10 '' + IL_0046: ret + } // end of method InteropBuffer::Zero + + .method public hidebysig specialname static + native int op_Implicit(class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer) cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 240,240 : 9,10 '' + IL_0000: nop + .line 241,241 : 13,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 242,242 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method InteropBuffer::op_Implicit + + .property instance native int IntPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + } // end of property InteropBuffer::IntPtr + .property instance bool Locked() + { + .get instance bool Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Locked() + } // end of property InteropBuffer::Locked + .property instance int32 Size() + { + .get instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + } // end of property InteropBuffer::Size + .property instance native int SizeAsIntPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsIntPtr() + } // end of property InteropBuffer::SizeAsIntPtr + .property instance native uint SizeAsUIntPtr() + { + .get instance native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsUIntPtr() + } // end of property InteropBuffer::SizeAsUIntPtr + .property instance bool Reserved() + { + .set instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::set_Reserved(bool) + .get instance bool Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Reserved() + } // end of property InteropBuffer::Reserved +} // end of class Virtuoso.Miranda.Plugins.Native.InteropBuffer + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.InteropBufferPool + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass2' + extends [mscorlib]System.Object + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field public int32 size + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method '<>c__DisplayClass2'::.ctor + + .method public hidebysig instance bool + 'b__0'(class Virtuoso.Miranda.Plugins.Native.InteropBuffer _buffer) cil managed + { + // Code size 29 (0x1d) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 126,126 : 21,22 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\InteropBufferPool.cs' + IL_0000: nop + .line 127,127 : 25,50 '' + IL_0001: ldarg.1 + IL_0002: callvirt instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_0007: ldarg.0 + IL_0008: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + IL_000d: clt + IL_000f: stloc.1 + IL_0010: ldloc.1 + IL_0011: brtrue.s IL_0017 + + .line 128,128 : 29,41 '' + IL_0013: ldc.i4.1 + IL_0014: stloc.0 + IL_0015: br.s IL_001b + + .line 130,130 : 29,42 '' + IL_0017: ldc.i4.0 + IL_0018: stloc.0 + IL_0019: br.s IL_001b + + IL_001b: ldloc.0 + IL_001c: ret + } // end of method '<>c__DisplayClass2'::'b__0' + + } // end of class '<>c__DisplayClass2' + + .field public static literal int32 DefaultMaximumAvailableBufferSize = int32(0x00000104) + .field private static literal int32 DefaultBuffersCount = int32(0x00000002) + .field private static int32 maximumAvailableBufferSize + .field private static int32 NextAvailableBufferIndex + .field private static class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Buffers + .field private static bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Disposed + .method public hidebysig specialname static + int32 get_MaximumAvailableBufferSize() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 39,39 : 17,18 '' + IL_0000: nop + .line 39,39 : 19,71 '' + IL_0001: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 39,39 : 72,73 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method InteropBufferPool::get_MaximumAvailableBufferSize + + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 51,51 : 9,36 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 51,51 : 37,38 '' + IL_0007: nop + .line 51,51 : 39,40 '' + IL_0008: nop + IL_0009: ret + } // end of method InteropBufferPool::.ctor + + .method assembly hidebysig static void + Dispose() cil managed + { + // Code size 122 (0x7a) + .maxstack 3 + .locals init ([0] int32 i, + [1] bool CS$4$0000, + [2] class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] CS$2$0001) + .line 58,58 : 9,10 '' + IL_0000: nop + .line 59,59 : 13,45 '' + IL_0001: volatile. + IL_0003: ldsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Disposed + IL_0008: brtrue.s IL_0017 + + IL_000a: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_000f: ldnull + IL_0010: ceq + IL_0012: ldc.i4.0 + IL_0013: ceq + IL_0015: br.s IL_0018 + + IL_0017: ldc.i4.0 + IL_0018: nop + IL_0019: stloc.1 + IL_001a: ldloc.1 + IL_001b: brtrue.s IL_001f + + .line 60,60 : 17,24 '' + IL_001d: br.s IL_0079 + + .line 62,62 : 13,27 '' + IL_001f: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0024: dup + IL_0025: stloc.2 + IL_0026: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_002b: nop + .line 63,63 : 13,14 '' + .try + { + IL_002c: nop + .line 64,64 : 17,33 '' + IL_002d: ldc.i4.1 + IL_002e: volatile. + IL_0030: stsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Disposed + .line 66,66 : 22,32 '' + IL_0035: ldc.i4.0 + IL_0036: stloc.0 + IL_0037: br.s IL_005f + + .line 67,67 : 17,18 '' + IL_0039: nop + .line 69,69 : 21,22 '' + .try + { + IL_003a: nop + .line 70,70 : 25,50 '' + IL_003b: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0040: ldloc.0 + IL_0041: ldelem.ref + IL_0042: ldc.i4.1 + IL_0043: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose(bool) + IL_0048: nop + .line 71,71 : 25,43 '' + IL_0049: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_004e: ldloc.0 + IL_004f: ldnull + IL_0050: stelem.ref + .line 72,72 : 21,22 '' + IL_0051: nop + IL_0052: leave.s IL_0059 + + .line 73,73 : 21,26 '' + } // end .try + catch [mscorlib]System.Object + { + IL_0054: pop + .line 73,73 : 27,28 '' + IL_0055: nop + .line 73,73 : 29,30 '' + IL_0056: nop + IL_0057: leave.s IL_0059 + + } // end handler + IL_0059: nop + .line 74,74 : 17,18 '' + IL_005a: nop + .line 66,66 : 53,56 '' + IL_005b: ldloc.0 + IL_005c: ldc.i4.1 + IL_005d: add + IL_005e: stloc.0 + .line 66,66 : 33,51 '' + IL_005f: ldloc.0 + IL_0060: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0065: ldlen + IL_0066: conv.i4 + IL_0067: clt + IL_0069: stloc.1 + IL_006a: ldloc.1 + IL_006b: brtrue.s IL_0039 + + .line 75,75 : 13,14 '' + IL_006d: nop + IL_006e: leave.s IL_0078 + + } // end .try + finally + { + IL_0070: ldloc.2 + IL_0071: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0076: nop + IL_0077: endfinally + } // end handler + IL_0078: nop + .line 76,76 : 9,10 '' + IL_0079: ret + } // end of method InteropBufferPool::Dispose + + .method assembly hidebysig static void + Refresh() cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .line 79,79 : 9,10 '' + IL_0000: nop + .line 80,80 : 13,23 '' + IL_0001: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Dispose() + IL_0006: nop + .line 82,82 : 13,28 '' + IL_0007: ldnull + IL_0008: stsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + .line 83,83 : 13,30 '' + IL_000d: ldc.i4.0 + IL_000e: volatile. + IL_0010: stsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Disposed + .line 85,85 : 13,37 '' + IL_0015: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::VerifyPoolConsistency() + IL_001a: nop + .line 86,86 : 9,10 '' + IL_001b: ret + } // end of method InteropBufferPool::Refresh + + .method private hidebysig static void VerifyPoolConsistency() cil managed + { + // Code size 104 (0x68) + .maxstack 3 + .locals init ([0] int32 i, + [1] bool CS$4$0000) + .line 89,89 : 9,10 '' + IL_0000: nop + .line 90,90 : 13,26 '' + IL_0001: volatile. + IL_0003: ldsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Disposed + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.1 + IL_000c: ldloc.1 + IL_000d: brtrue.s IL_001a + + .line 91,91 : 17,72 '' + IL_000f: ldstr "InteropBufferPool" + IL_0014: newobj instance void [mscorlib]System.ObjectDisposedException::.ctor(string) + IL_0019: throw + + .line 93,93 : 13,33 '' + IL_001a: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_001f: ldnull + IL_0020: ceq + IL_0022: ldc.i4.0 + IL_0023: ceq + IL_0025: stloc.1 + IL_0026: ldloc.1 + IL_0027: brtrue.s IL_0067 + + .line 94,94 : 13,14 '' + IL_0029: nop + .line 95,95 : 17,46 '' + IL_002a: ldc.i4.0 + IL_002b: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + .line 96,96 : 17,80 '' + IL_0030: ldc.i4 0x104 + IL_0035: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + .line 98,98 : 17,66 '' + IL_003a: ldc.i4.2 + IL_003b: newarr Virtuoso.Miranda.Plugins.Native.InteropBuffer + IL_0040: stsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + .line 100,100 : 22,32 '' + IL_0045: ldc.i4.0 + IL_0046: stloc.0 + IL_0047: br.s IL_005e + + .line 101,101 : 21,80 '' + IL_0049: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_004e: ldloc.0 + IL_004f: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_0054: newobj instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::.ctor(int32) + IL_0059: stelem.ref + .line 100,100 : 58,61 '' + IL_005a: ldloc.0 + IL_005b: ldc.i4.1 + IL_005c: add + IL_005d: stloc.0 + .line 100,100 : 33,56 '' + IL_005e: ldloc.0 + IL_005f: ldc.i4.2 + IL_0060: clt + IL_0062: stloc.1 + IL_0063: ldloc.1 + IL_0064: brtrue.s IL_0049 + + .line 102,102 : 13,14 '' + IL_0066: nop + .line 103,103 : 9,10 '' + IL_0067: ret + } // end of method InteropBufferPool::VerifyPoolConsistency + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Native.InteropBuffer + AcquireBuffer() cil managed + { + // Code size 16 (0x10) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer CS$1$0000) + .line 106,106 : 9,10 '' + IL_0000: nop + .line 107,107 : 13,62 '' + IL_0001: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_0006: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer(int32) + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + .line 108,108 : 9,10 '' + IL_000e: ldloc.0 + IL_000f: ret + } // end of method InteropBufferPool::AcquireBuffer + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Native.InteropBuffer + AcquireBuffer(int32 size) cil managed + { + // Code size 240 (0xf0) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] int32 index, + [2] class [mscorlib]System.Predicate`1 'CS$<>9__CachedAnonymousMethodDelegate1', + [3] class Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2' 'CS$<>8__locals3', + [4] class Virtuoso.Miranda.Plugins.Native.InteropBuffer CS$1$0000, + [5] bool CS$4$0001, + [6] class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] CS$2$0002) + IL_0000: ldnull + IL_0001: stloc.2 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::.ctor() + IL_0007: stloc.3 + IL_0008: ldloc.3 + IL_0009: ldarg.0 + IL_000a: stfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + .line 111,111 : 9,10 '' + IL_000f: nop + .line 112,112 : 13,27 '' + IL_0010: ldloc.3 + IL_0011: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + IL_0016: ldc.i4.0 + IL_0017: cgt + IL_0019: stloc.s CS$4$0001 + IL_001b: ldloc.s CS$4$0001 + IL_001d: brtrue.s IL_002a + + .line 113,113 : 17,63 '' + IL_001f: ldstr "size" + IL_0024: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0029: throw + + .line 115,115 : 13,37 '' + IL_002a: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::VerifyPoolConsistency() + IL_002f: nop + .line 117,117 : 13,27 '' + IL_0030: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0035: dup + IL_0036: stloc.s CS$2$0002 + IL_0038: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_003d: nop + .line 118,118 : 13,14 '' + .try + { + IL_003e: nop + .line 119,119 : 17,45 '' + IL_003f: ldnull + IL_0040: stloc.0 + .line 121,121 : 17,104 '' + IL_0041: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_0046: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_004b: ldlen + IL_004c: conv.i4 + IL_004d: ldc.i4.1 + IL_004e: sub + IL_004f: bgt.s IL_0063 + + IL_0051: ldloc.3 + IL_0052: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + IL_0057: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_005c: cgt + IL_005e: ldc.i4.0 + IL_005f: ceq + IL_0061: br.s IL_0064 + + IL_0063: ldc.i4.0 + IL_0064: nop + IL_0065: stloc.s CS$4$0001 + IL_0067: ldloc.s CS$4$0001 + IL_0069: brtrue.s IL_0079 + + .line 122,122 : 21,54 '' + IL_006b: ldloc.3 + IL_006c: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + IL_0071: newobj instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::.ctor(int32) + IL_0076: stloc.0 + IL_0077: br.s IL_00d6 + + .line 124,124 : 17,18 '' + IL_0079: nop + .line 125,131 : 21,24 '' + IL_007a: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_007f: ldloc.2 + IL_0080: brtrue.s IL_0091 + + IL_0082: ldloc.3 + IL_0083: ldftn instance bool Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::'b__0'(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_0089: newobj instance void class [mscorlib]System.Predicate`1::.ctor(object, + native int) + IL_008e: stloc.2 + IL_008f: br.s IL_0091 + + IL_0091: ldloc.2 + IL_0092: call int32 [mscorlib]System.Array::FindIndex(!!0[], + class [mscorlib]System.Predicate`1) + IL_0097: stloc.1 + .line 133,133 : 21,73 '' + IL_0098: ldloc.1 + IL_0099: ldc.i4.m1 + IL_009a: beq.s IL_00a9 + + IL_009c: ldloc.1 + IL_009d: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_00a2: clt + IL_00a4: ldc.i4.0 + IL_00a5: ceq + IL_00a7: br.s IL_00aa + + IL_00a9: ldc.i4.0 + IL_00aa: nop + IL_00ab: stloc.s CS$4$0001 + IL_00ad: ldloc.s CS$4$0001 + IL_00af: brtrue.s IL_00bf + + .line 134,134 : 25,58 '' + IL_00b1: ldloc.3 + IL_00b2: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + IL_00b7: newobj instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::.ctor(int32) + IL_00bc: stloc.0 + IL_00bd: br.s IL_00d5 + + .line 136,136 : 21,22 '' + IL_00bf: nop + .line 137,137 : 25,49 '' + IL_00c0: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_00c5: ldloc.1 + IL_00c6: ldelem.ref + IL_00c7: stloc.0 + .line 138,138 : 25,52 '' + IL_00c8: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_00cd: ldc.i4.1 + IL_00ce: add + IL_00cf: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + .line 139,139 : 21,22 '' + IL_00d4: nop + .line 140,140 : 17,18 '' + IL_00d5: nop + .line 142,142 : 17,40 '' + IL_00d6: ldloc.0 + IL_00d7: ldc.i4.1 + IL_00d8: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::set_Reserved(bool) + IL_00dd: nop + .line 143,143 : 17,31 '' + IL_00de: ldloc.0 + IL_00df: stloc.s CS$1$0000 + IL_00e1: leave.s IL_00ec + + } // end .try + finally + { + IL_00e3: ldloc.s CS$2$0002 + IL_00e5: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00ea: nop + IL_00eb: endfinally + } // end handler + IL_00ec: nop + .line 145,145 : 9,10 '' + IL_00ed: ldloc.s CS$1$0000 + IL_00ef: ret + } // end of method InteropBufferPool::AcquireBuffer + + .method public hidebysig static void ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer) cil managed + { + // Code size 230 (0xe6) + .maxstack 3 + .locals init ([0] bool CS$4$0000, + [1] class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] CS$2$0001) + .line 148,148 : 9,10 '' + IL_0000: nop + .line 149,149 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0011 + + .line 150,150 : 17,24 '' + IL_000c: br IL_00e5 + + .line 152,152 : 13,31 '' + IL_0011: ldarg.0 + IL_0012: callvirt instance bool Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Locked() + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: stloc.0 + IL_001b: ldloc.0 + IL_001c: brtrue.s IL_0029 + + .line 153,153 : 17,106 '' + IL_001e: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InteropBufferNotUnlocked() + IL_0023: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0028: throw + + .line 155,155 : 13,34 '' + IL_0029: ldarg.0 + IL_002a: callvirt instance bool Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Reserved() + IL_002f: stloc.0 + IL_0030: ldloc.0 + IL_0031: brtrue.s IL_0039 + + .line 156,156 : 17,47 '' + IL_0033: newobj instance void [mscorlib]System.ArgumentException::.ctor() + IL_0038: throw + + .line 158,158 : 13,37 '' + IL_0039: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::VerifyPoolConsistency() + IL_003e: nop + .line 160,160 : 13,27 '' + IL_003f: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0044: dup + IL_0045: stloc.1 + IL_0046: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_004b: nop + .line 161,161 : 13,14 '' + .try + { + IL_004c: nop + .line 162,162 : 17,58 '' + IL_004d: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0052: ldarg.0 + IL_0053: call int32 [mscorlib]System.Array::IndexOf(!!0[], + !!0) + IL_0058: ldc.i4.m1 + IL_0059: ceq + IL_005b: ldc.i4.0 + IL_005c: ceq + IL_005e: stloc.0 + IL_005f: ldloc.0 + IL_0060: brtrue.s IL_00c5 + + .line 163,163 : 17,18 '' + IL_0062: nop + .line 164,164 : 21,66 '' + IL_0063: ldarg.0 + IL_0064: callvirt instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_0069: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_006e: cgt + IL_0070: ldc.i4.0 + IL_0071: ceq + IL_0073: stloc.0 + IL_0074: ldloc.0 + IL_0075: brtrue.s IL_00ba + + .line 165,165 : 21,22 '' + IL_0077: nop + .line 166,166 : 25,76 '' + IL_0078: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_007d: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0082: ldlen + IL_0083: conv.i4 + IL_0084: ldc.i4.1 + IL_0085: sub + IL_0086: cgt + IL_0088: stloc.0 + IL_0089: ldloc.0 + IL_008a: brtrue.s IL_00b7 + + .line 167,167 : 25,26 '' + IL_008c: nop + .line 168,168 : 29,77 '' + IL_008d: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0092: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_0097: ldelem.ref + IL_0098: ldc.i4.1 + IL_0099: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose(bool) + IL_009e: nop + .line 169,169 : 29,72 '' + IL_009f: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_00a4: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_00a9: ldarg.0 + IL_00aa: stelem.ref + .line 171,171 : 29,70 '' + IL_00ab: ldarg.0 + IL_00ac: callvirt instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_00b1: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + .line 172,172 : 25,26 '' + IL_00b6: nop + .line 173,173 : 21,22 '' + IL_00b7: nop + IL_00b8: br.s IL_00c2 + + .line 175,175 : 25,46 '' + IL_00ba: ldarg.0 + IL_00bb: ldc.i4.1 + IL_00bc: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose(bool) + IL_00c1: nop + .line 176,176 : 17,18 '' + IL_00c2: nop + IL_00c3: br.s IL_00d1 + + .line 178,178 : 21,48 '' + IL_00c5: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_00ca: ldc.i4.1 + IL_00cb: sub + IL_00cc: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + .line 180,180 : 17,41 '' + IL_00d1: ldarg.0 + IL_00d2: ldc.i4.0 + IL_00d3: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::set_Reserved(bool) + IL_00d8: nop + .line 181,181 : 13,14 '' + IL_00d9: nop + IL_00da: leave.s IL_00e4 + + } // end .try + finally + { + IL_00dc: ldloc.1 + IL_00dd: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00e2: nop + IL_00e3: endfinally + } // end handler + IL_00e4: nop + .line 182,182 : 9,10 '' + IL_00e5: ret + } // end of method InteropBufferPool::ReleaseBuffer + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 35,35 : 9,91 '' + IL_0000: ldc.i4 0x104 + IL_0005: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_000a: ret + } // end of method InteropBufferPool::.cctor + + .property int32 MaximumAvailableBufferSize() + { + .get int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::get_MaximumAvailableBufferSize() + } // end of property InteropBufferPool::MaximumAvailableBufferSize +} // end of class Virtuoso.Miranda.Plugins.Native.InteropBufferPool + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.EventHandleCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 30,30 : 9,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\EventHandleCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.3 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0007: nop + .line 30,30 : 52,53 '' + IL_0008: nop + .line 30,30 : 54,55 '' + IL_0009: nop + IL_000a: ret + } // end of method EventHandleCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection + +.class interface private abstract auto ansi Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 +{ + .method public hidebysig newslot abstract virtual + instance !T Find(string tag) cil managed + { + } // end of method ITagSearchable`1::Find + +} // end of class Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + extends class [mscorlib]System.Collections.Generic.List`1 + implements class Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 29,29 : 9,52 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\HookDescriptorCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.3 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0007: nop + .line 29,29 : 53,54 '' + IL_0008: nop + .line 29,29 : 55,56 '' + IL_0009: nop + IL_000a: ret + } // end of method HookDescriptorCollection::.ctor + + .method public hidebysig instance void + Add(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor item) cil managed + { + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 36,36 : 9,10 '' + IL_0000: nop + .line 37,37 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance bool class [mscorlib]System.Collections.Generic.List`1::Contains(!0) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.0 + IL_000c: ldloc.0 + IL_000d: brtrue.s IL_0011 + + .line 37,37 : 33,40 '' + IL_000f: br.s IL_0019 + + .line 38,38 : 13,28 '' + IL_0011: ldarg.0 + IL_0012: ldarg.1 + IL_0013: call instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0018: nop + .line 39,39 : 9,10 '' + IL_0019: ret + } // end of method HookDescriptorCollection::Add + + .method public hidebysig newslot virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + Find(string name) cil managed + { + // Code size 100 (0x64) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor CS$1$0000, + [2] bool CS$4$0001, + [3] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0002) + .line 42,42 : 9,10 '' + IL_0000: nop + .line 43,43 : 13,30 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 44,44 : 17,57 '' + IL_000c: ldstr "name" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 46,46 : 13,20 '' + IL_0017: nop + .line 46,46 : 51,55 '' + IL_0018: ldarg.0 + IL_0019: call instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_001e: stloc.3 + .try + { + IL_001f: br.s IL_0040 + + .line 46,46 : 22,47 '' + IL_0021: ldloca.s CS$5$0002 + IL_0023: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0028: stloc.0 + .line 47,47 : 17,45 '' + IL_0029: ldloc.0 + IL_002a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_002f: ldarg.1 + IL_0030: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0035: ldc.i4.0 + IL_0036: ceq + IL_0038: stloc.2 + IL_0039: ldloc.2 + IL_003a: brtrue.s IL_0040 + + .line 48,48 : 21,39 '' + IL_003c: ldloc.0 + IL_003d: stloc.1 + IL_003e: leave.s IL_0061 + + .line 46,46 : 48,50 '' + IL_0040: ldloca.s CS$5$0002 + IL_0042: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0047: stloc.2 + IL_0048: ldloc.2 + IL_0049: brtrue.s IL_0021 + + IL_004b: leave.s IL_005c + + } // end .try + finally + { + IL_004d: ldloca.s CS$5$0002 + IL_004f: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0055: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_005a: nop + IL_005b: endfinally + } // end handler + IL_005c: nop + .line 50,50 : 13,25 '' + IL_005d: ldnull + IL_005e: stloc.1 + IL_005f: br.s IL_0061 + + IL_0061: nop + .line 51,51 : 9,10 '' + IL_0062: ldloc.1 + IL_0063: ret + } // end of method HookDescriptorCollection::Find + +} // end of class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher + extends [mscorlib]System.Object +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 26,26 : 9,34 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\EventPublisher.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 26,26 : 35,36 '' + IL_0007: nop + .line 26,26 : 37,38 '' + IL_0008: nop + IL_0009: ret + } // end of method EventPublisher::.ctor + + .method family hidebysig instance bool + InvokeChainCancelable<(Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs) TEventArgs>(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'handler', + !!TEventArgs eventArgs) cil managed + { + // Code size 14 (0xe) + .maxstack 3 + .locals init ([0] bool CS$1$0000) + .line 29,29 : 9,10 '' + IL_0000: nop + .line 30,30 : 13,80 '' + IL_0001: ldarg.1 + IL_0002: ldarg.0 + IL_0003: ldarg.2 + IL_0004: call bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + object, + !!0) + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + .line 31,31 : 9,10 '' + IL_000c: ldloc.0 + IL_000d: ret + } // end of method EventPublisher::InvokeChainCancelable + + .method public hidebysig static bool InvokeChainCancelable<(Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs) TEventArgs>(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'handler', + object sender, + !!TEventArgs eventArgs) cil managed + { + // Code size 83 (0x53) + .maxstack 3 + .locals init ([0] bool retValue, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 del, + [2] bool CS$1$0000, + [3] bool CS$4$0001, + [4] class [mscorlib]System.Delegate[] CS$6$0002, + [5] int32 CS$7$0003) + .line 34,34 : 9,10 '' + IL_0000: nop + .line 35,35 : 13,58 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + .line 37,37 : 13,33 '' + IL_0003: ldarg.0 + IL_0004: ldnull + IL_0005: ceq + IL_0007: stloc.3 + IL_0008: ldloc.3 + IL_0009: brtrue.s IL_004d + + .line 38,38 : 13,14 '' + IL_000b: nop + .line 39,39 : 17,24 '' + IL_000c: nop + .line 39,39 : 65,92 '' + IL_000d: ldarg.0 + IL_000e: callvirt instance class [mscorlib]System.Delegate[] [mscorlib]System.Delegate::GetInvocationList() + IL_0013: stloc.s CS$6$0002 + IL_0015: ldc.i4.0 + IL_0016: stloc.s CS$7$0003 + IL_0018: br.s IL_0040 + + .line 39,39 : 26,61 '' + IL_001a: ldloc.s CS$6$0002 + IL_001c: ldloc.s CS$7$0003 + IL_001e: ldelem.ref + IL_001f: castclass class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 + IL_0024: stloc.1 + .line 40,40 : 17,18 '' + IL_0025: nop + .line 41,41 : 21,92 '' + IL_0026: ldloc.1 + IL_0027: ldarg.1 + IL_0028: ldarg.2 + IL_0029: callvirt instance bool class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1::Invoke(object, + !0) + IL_002e: dup + IL_002f: stloc.0 + IL_0030: ldc.i4.0 + IL_0031: ceq + IL_0033: stloc.3 + IL_0034: ldloc.3 + IL_0035: brtrue.s IL_0039 + + .line 42,42 : 25,31 '' + IL_0037: br.s IL_004c + + .line 43,43 : 17,18 '' + IL_0039: nop + IL_003a: ldloc.s CS$7$0003 + IL_003c: ldc.i4.1 + IL_003d: add + IL_003e: stloc.s CS$7$0003 + .line 39,39 : 62,64 '' + IL_0040: ldloc.s CS$7$0003 + IL_0042: ldloc.s CS$6$0002 + IL_0044: ldlen + IL_0045: conv.i4 + IL_0046: clt + IL_0048: stloc.3 + IL_0049: ldloc.3 + IL_004a: brtrue.s IL_001a + + .line 44,44 : 13,14 '' + IL_004c: nop + .line 46,46 : 13,29 '' + IL_004d: ldloc.0 + IL_004e: stloc.2 + IL_004f: br.s IL_0051 + + .line 47,47 : 9,10 '' + IL_0051: ldloc.2 + IL_0052: ret + } // end of method EventPublisher::InvokeChainCancelable + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContactList + extends Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher +{ + .field private static literal string ME_CLC_SHOWINFOTIP = "CLC/ShowInfoTip" + .field private static literal string ME_CLC_HIDEINFOTIP = "CLC/HideInfoTip" + .field private static literal string MS_CLC_SETINFOTIPHOVERTIME = "CLC/SetInfoTipHoverTime" + .field private static literal string MS_CLC_GETINFOTIPHOVERTIME = "CLC/GetInfoTipHoverTime" + .field private static literal string ME_CLIST_STATUSMODECHANGE = "CList/StatusModeChange" + .field private static literal string ME_CLIST_PREBUILDCONTACTMENU = "CList/PreBuildContactMenu" + .field private static literal string ME_CLIST_DOUBLECLICKED = "CList/DoubleClicked" + .field private static literal string MS_CLIST_ADDEVENT = "CList/AddEvent" + .field private static literal string MS_CLIST_REMOVEEVENT = "Clist/RemoveEvent" + .field private static initonly object SyncObject + .field private class [mscorlib]System.EventHandler`1> InfoTipShowEventHandler + .field private class [mscorlib]System.EventHandler`1> InfoTipHideEventHandler + .field private class [mscorlib]System.EventHandler`1 ProtocolStatusChangeEventHandler + .field private class [mscorlib]System.EventHandler`1> ContactMenuShowingEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> ContactDoubleClickedEventHandler + .field private bool ContactSelectionTrackingEnabled + .field private class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo selectedContact + .field private static initonly class [mscorlib]System.Random Random + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 69,69 : 9,31 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContactList.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::.ctor() + IL_0006: nop + .line 69,69 : 32,33 '' + IL_0007: nop + .line 69,69 : 34,35 '' + IL_0008: nop + IL_0009: ret + } // end of method ContactList::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_SelectedContact() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 78,78 : 13,14 '' + IL_0000: nop + .line 79,79 : 17,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactList::selectedContact + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 80,80 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactList::get_SelectedContact + + .method public hidebysig specialname instance valuetype [mscorlib]System.Nullable`1 + get_Transparency() cil managed + { + // Code size 59 (0x3b) + .maxstack 4 + .locals init ([0] object alpha, + [1] valuetype [mscorlib]System.Nullable`1 CS$1$0000, + [2] bool CS$4$0001, + [3] valuetype [mscorlib]System.Nullable`1 CS$0$0002) + .line 86,86 : 13,14 '' + IL_0000: nop + .line 87,87 : 17,110 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0006: ldstr "Alpha" + IL_000b: ldstr "CList" + IL_0010: ldc.i4.1 + IL_0011: callvirt instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(string, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0016: stloc.0 + .line 89,89 : 17,35 '' + IL_0017: ldloc.0 + IL_0018: ldnull + IL_0019: ceq + IL_001b: stloc.2 + IL_001c: ldloc.2 + IL_001d: brtrue.s IL_002d + + .line 90,90 : 21,40 '' + IL_001f: ldloc.0 + IL_0020: unbox.any [mscorlib]System.Byte + IL_0025: newobj instance void valuetype [mscorlib]System.Nullable`1::.ctor(!0) + IL_002a: stloc.1 + IL_002b: br.s IL_0039 + + .line 92,92 : 21,33 '' + IL_002d: ldloca.s CS$0$0002 + IL_002f: initobj valuetype [mscorlib]System.Nullable`1 + IL_0035: ldloc.3 + IL_0036: stloc.1 + IL_0037: br.s IL_0039 + + .line 93,93 : 13,14 '' + IL_0039: ldloc.1 + IL_003a: ret + } // end of method ContactList::get_Transparency + + .method public hidebysig specialname instance void + set_Transparency(valuetype [mscorlib]System.Nullable`1 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 8 + .line 95,95 : 13,14 '' + IL_0000: nop + .line 96,96 : 17,136 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0006: ldstr "Alpha" + IL_000b: ldstr "CList" + IL_0010: ldarga.s 'value' + IL_0012: ldc.i4 0xff + IL_0017: call instance !0 valuetype [mscorlib]System.Nullable`1::GetValueOrDefault(!0) + IL_001c: box [mscorlib]System.Byte + IL_0021: ldc.i4.1 + IL_0022: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting(string, + string, + object, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0027: pop + .line 97,97 : 13,14 '' + IL_0028: ret + } // end of method ContactList::set_Transparency + + .method public hidebysig specialname instance bool + get_TransparencyEnabled() cil managed + { + // Code size 51 (0x33) + .maxstack 4 + .locals init ([0] object enabled, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 103,103 : 13,14 '' + IL_0000: nop + .line 104,104 : 17,118 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0006: ldstr "Transparent" + IL_000b: ldstr "CList" + IL_0010: ldc.i4.1 + IL_0011: callvirt instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(string, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0016: stloc.0 + .line 106,106 : 17,37 '' + IL_0017: ldloc.0 + IL_0018: ldnull + IL_0019: ceq + IL_001b: stloc.2 + IL_001c: ldloc.2 + IL_001d: brtrue.s IL_002d + + .line 107,107 : 21,61 '' + IL_001f: ldloc.0 + IL_0020: unbox.any [mscorlib]System.Byte + IL_0025: call bool [mscorlib]System.Convert::ToBoolean(uint8) + IL_002a: stloc.1 + IL_002b: br.s IL_0031 + + .line 109,109 : 21,34 '' + IL_002d: ldc.i4.0 + IL_002e: stloc.1 + IL_002f: br.s IL_0031 + + .line 110,110 : 13,14 '' + IL_0031: ldloc.1 + IL_0032: ret + } // end of method ContactList::get_TransparencyEnabled + + .method public hidebysig specialname instance void + set_TransparencyEnabled(bool 'value') cil managed + { + // Code size 35 (0x23) + .maxstack 8 + .line 112,112 : 13,14 '' + IL_0000: nop + .line 113,113 : 17,125 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0006: ldstr "Transparent" + IL_000b: ldstr "CList" + IL_0010: ldarg.1 + IL_0011: call uint8 [mscorlib]System.Convert::ToByte(bool) + IL_0016: box [mscorlib]System.Byte + IL_001b: ldc.i4.1 + IL_001c: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting(string, + string, + object, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0021: pop + .line 114,114 : 13,14 '' + IL_0022: ret + } // end of method ContactList::set_TransparencyEnabled + + .method private hidebysig instance void + FireInfoTipEvent(class [mscorlib]System.EventHandler`1> e, + native int lParam) cil managed + { + // Code size 53 (0x35) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip infoTip, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1 eArgs, + [2] bool CS$4$0000) + .line 122,122 : 9,10 '' + IL_0000: nop + .line 123,123 : 13,27 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_000e + + .line 124,124 : 17,24 '' + IL_000c: br.s IL_0034 + + .line 126,126 : 13,121 '' + IL_000e: ldarg.2 + IL_000f: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip + IL_0014: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0019: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_001e: unbox.any Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip + IL_0023: stloc.0 + .line 127,127 : 13,116 '' + IL_0024: ldloc.0 + IL_0025: newobj instance void class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::.ctor(!0) + IL_002a: stloc.1 + .line 129,129 : 13,28 '' + IL_002b: ldarg.1 + IL_002c: ldarg.0 + IL_002d: ldloc.1 + IL_002e: callvirt instance void class [mscorlib]System.EventHandler`1>::Invoke(object, + !0) + IL_0033: nop + .line 130,130 : 9,10 '' + IL_0034: ret + } // end of method ContactList::FireInfoTipEvent + + .method public hidebysig specialname instance void + add_InfoTipShow(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 136,136 : 13,14 '' + IL_0000: nop + .line 137,137 : 17,140 '' + IL_0001: ldarg.0 + IL_0002: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipShowEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>>(!!0&, + !!0) + IL_000d: nop + .line 138,143 : 17,24 '' + IL_000e: ldstr "CLC/ShowInfoTip" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__0'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 144,144 : 13,14 '' + IL_0025: ret + } // end of method ContactList::add_InfoTipShow + + .method public hidebysig specialname instance void + remove_InfoTipShow(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 147,147 : 13,14 '' + IL_0000: nop + .line 148,148 : 17,140 '' + IL_0001: ldarg.0 + IL_0002: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipShowEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>>(!!0&, + !!0) + IL_000d: nop + .line 149,149 : 17,102 '' + IL_000e: ldstr "CLC/ShowInfoTip" + IL_0013: ldarg.0 + IL_0014: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipShowEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 150,150 : 13,14 '' + IL_001f: ret + } // end of method ContactList::remove_InfoTipShow + + .method public hidebysig specialname instance void + add_InfoTipHide(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 157,157 : 13,14 '' + IL_0000: nop + .line 158,158 : 17,140 '' + IL_0001: ldarg.0 + IL_0002: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipHideEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>>(!!0&, + !!0) + IL_000d: nop + .line 159,164 : 17,24 '' + IL_000e: ldstr "CLC/HideInfoTip" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__1'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 165,165 : 13,14 '' + IL_0025: ret + } // end of method ContactList::add_InfoTipHide + + .method public hidebysig specialname instance void + remove_InfoTipHide(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 168,168 : 13,14 '' + IL_0000: nop + .line 169,169 : 17,140 '' + IL_0001: ldarg.0 + IL_0002: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipHideEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>>(!!0&, + !!0) + IL_000d: nop + .line 170,170 : 17,102 '' + IL_000e: ldstr "CLC/HideInfoTip" + IL_0013: ldarg.0 + IL_0014: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipHideEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 171,171 : 13,14 '' + IL_001f: ret + } // end of method ContactList::remove_InfoTipHide + + .method public hidebysig specialname instance void + add_ProtocolStatusChange(class [mscorlib]System.EventHandler`1 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 178,178 : 13,14 '' + IL_0000: nop + .line 179,179 : 17,138 '' + IL_0001: ldarg.0 + IL_0002: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ProtocolStatusChangeEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 180,195 : 17,24 '' + IL_000e: ldstr "CList/StatusModeChange" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__2'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 196,196 : 13,14 '' + IL_0025: ret + } // end of method ContactList::add_ProtocolStatusChange + + .method public hidebysig specialname instance void + remove_ProtocolStatusChange(class [mscorlib]System.EventHandler`1 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 199,199 : 13,14 '' + IL_0000: nop + .line 200,200 : 17,138 '' + IL_0001: ldarg.0 + IL_0002: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ProtocolStatusChangeEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 201,201 : 17,113 '' + IL_000e: ldstr "CList/StatusModeChange" + IL_0013: ldarg.0 + IL_0014: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ProtocolStatusChangeEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 202,202 : 13,14 '' + IL_001f: ret + } // end of method ContactList::remove_ProtocolStatusChange + + .method public hidebysig specialname instance void + add_ContactMenuShowing(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 209,209 : 13,14 '' + IL_0000: nop + .line 210,210 : 17,140 '' + IL_0001: ldarg.0 + IL_0002: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactMenuShowingEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>>(!!0&, + !!0) + IL_000d: nop + .line 211,218 : 17,24 '' + IL_000e: ldstr "CList/PreBuildContactMenu" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__3'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 219,219 : 13,14 '' + IL_0025: ret + } // end of method ContactList::add_ContactMenuShowing + + .method public hidebysig specialname instance void + remove_ContactMenuShowing(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 222,222 : 13,14 '' + IL_0000: nop + .line 223,223 : 17,140 '' + IL_0001: ldarg.0 + IL_0002: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactMenuShowingEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>>(!!0&, + !!0) + IL_000d: nop + .line 224,224 : 17,114 '' + IL_000e: ldstr "CList/PreBuildContactMenu" + IL_0013: ldarg.0 + IL_0014: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactMenuShowingEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 225,225 : 13,14 '' + IL_001f: ret + } // end of method ContactList::remove_ContactMenuShowing + + .method public hidebysig specialname instance void + add_ContactDoubleClicked(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 232,232 : 13,14 '' + IL_0000: nop + .line 233,233 : 17,149 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactDoubleClickedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>>(!!0&, + !!0) + IL_000d: nop + .line 234,239 : 17,24 '' + IL_000e: ldstr "CList/DoubleClicked" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__4'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 240,240 : 13,14 '' + IL_0025: ret + } // end of method ContactList::add_ContactDoubleClicked + + .method public hidebysig specialname instance void + remove_ContactDoubleClicked(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 243,243 : 13,14 '' + IL_0000: nop + .line 244,244 : 17,149 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactDoubleClickedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>>(!!0&, + !!0) + IL_000d: nop + .line 245,245 : 17,110 '' + IL_000e: ldstr "CList/DoubleClicked" + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactDoubleClickedEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 246,246 : 13,14 '' + IL_001f: ret + } // end of method ContactList::remove_ContactDoubleClicked + + .method public hidebysig instance void + AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item) cil managed + { + // Code size 191 (0xbf) + .maxstack 6 + .locals init ([0] string serviceName, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeHandle, + [2] valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM nativeItem, + [3] native int handle, + [4] bool CS$4$0000) + .line 256,256 : 9,10 '' + IL_0000: nop + .line 257,257 : 13,31 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0000 + IL_000a: ldloc.s CS$4$0000 + IL_000c: brtrue.s IL_0019 + + .line 258,258 : 17,58 '' + IL_000e: ldstr "owner" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 260,260 : 13,30 '' + IL_0019: ldarg.2 + IL_001a: ldnull + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.s CS$4$0000 + IL_0022: ldloc.s CS$4$0000 + IL_0024: brtrue.s IL_0031 + + .line 261,261 : 17,57 '' + IL_0026: ldstr "item" + IL_002b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0030: throw + + .line 263,263 : 13,146 '' + IL_0031: ldarg.2 + IL_0032: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IsContactMenuItem() + IL_0037: brtrue.s IL_0040 + + IL_0039: ldstr "CList/AddMainMenuItem" + IL_003e: br.s IL_0045 + + IL_0040: ldstr "CList/AddContactMenuItem" + IL_0045: nop + IL_0046: stloc.0 + .line 265,265 : 13,108 '' + IL_0047: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_004c: stloc.1 + .line 266,266 : 13,71 '' + IL_004d: ldloca.s nativeItem + IL_004f: ldarg.1 + IL_0050: ldarg.2 + IL_0051: newobj instance void Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_0056: stobj Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + .line 269,269 : 13,14 '' + .try + { + IL_005b: nop + .line 270,270 : 17,89 '' + IL_005c: ldloca.s nativeItem + IL_005e: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0063: stloc.1 + .line 272,273 : 17,72 '' + IL_0064: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0069: ldloc.0 + IL_006a: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_006f: ldloca.s nativeHandle + IL_0071: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0076: ldarg.1 + IL_0077: isinst Virtuoso.Hyphen.Mini.StandalonePlugin + IL_007c: brfalse.s IL_0089 + + IL_007e: ldarg.2 + IL_007f: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IsAdditional() + IL_0084: ldc.i4.0 + IL_0085: ceq + IL_0087: br.s IL_008a + + IL_0089: ldc.i4.0 + IL_008a: nop + IL_008b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int, + bool) + IL_0090: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0095: stloc.3 + .line 275,275 : 17,45 '' + IL_0096: ldarg.2 + IL_0097: ldloc.3 + IL_0098: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_MirandaHandle(native int) + IL_009d: nop + .line 276,276 : 17,53 '' + IL_009e: ldloc.3 + IL_009f: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_00a4: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_00a9: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_00ae: nop + .line 277,277 : 13,14 '' + IL_00af: nop + IL_00b0: leave.s IL_00bd + + .line 279,279 : 13,14 '' + } // end .try + finally + { + IL_00b2: nop + .line 280,280 : 17,37 '' + IL_00b3: ldloca.s nativeHandle + IL_00b5: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_00ba: nop + .line 281,281 : 13,14 '' + IL_00bb: nop + IL_00bc: endfinally + } // end handler + IL_00bd: nop + .line 282,282 : 9,10 '' + IL_00be: ret + } // end of method ContactList::AddMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + string text) cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .locals init ([0] bool CS$1$0000) + .line 285,285 : 9,10 '' + IL_0000: nop + .line 286,286 : 13,98 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldarg.3 + IL_0005: ldc.i4.0 + IL_0006: ldnull + IL_0007: ldc.i4.0 + IL_0008: ldc.i4.1 + IL_0009: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 287,287 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties 'flags') cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .locals init ([0] bool CS$1$0000) + .line 290,290 : 9,10 '' + IL_0000: nop + .line 291,291 : 13,80 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldnull + IL_0005: ldarg.3 + IL_0006: ldnull + IL_0007: ldc.i4.0 + IL_0008: ldc.i4.1 + IL_0009: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 292,292 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys hotKey) cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .locals init ([0] bool CS$1$0000) + .line 295,295 : 9,10 '' + IL_0000: nop + .line 296,296 : 13,103 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldnull + IL_0005: ldc.i4.0 + IL_0006: ldnull + IL_0007: ldarg.3 + IL_0008: ldc.i4.1 + IL_0009: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 297,297 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + class [System.Drawing]System.Drawing.Icon icon) cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .locals init ([0] bool CS$1$0000) + .line 300,300 : 9,10 '' + IL_0000: nop + .line 301,301 : 13,98 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldnull + IL_0005: ldc.i4.0 + IL_0006: ldarg.3 + IL_0007: ldc.i4.0 + IL_0008: ldc.i4.1 + IL_0009: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 302,302 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + string text, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties 'flags', + class [System.Drawing]System.Drawing.Icon icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys hotKey) cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .locals init ([0] bool CS$1$0000) + .line 305,305 : 9,10 '' + IL_0000: nop + .line 306,306 : 13,85 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldarg.3 + IL_0005: ldarg.s 'flags' + IL_0007: ldarg.s icon + IL_0009: ldarg.s hotKey + IL_000b: ldc.i4.1 + IL_000c: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 307,307 : 9,10 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + string text, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties 'flags', + class [System.Drawing]System.Drawing.Icon icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys hotKey, + bool updateItemDescriptor) cil managed + { + // Code size 428 (0x1ac) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeHandle, + [1] valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM nativeItem, + [2] valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags modifyFlags, + [3] bool result, + [4] class [mscorlib]System.Exception e, + [5] bool CS$1$0000, + [6] bool CS$4$0001) + .line 310,310 : 9,10 '' + IL_0000: nop + .line 311,311 : 13,31 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0001 + IL_000a: ldloc.s CS$4$0001 + IL_000c: brtrue.s IL_0019 + + .line 312,312 : 17,58 '' + IL_000e: ldstr "owner" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 314,314 : 13,34 '' + IL_0019: ldarg.2 + IL_001a: ldnull + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.s CS$4$0001 + IL_0022: ldloc.s CS$4$0001 + IL_0024: brtrue.s IL_0031 + + .line 315,315 : 17,61 '' + IL_0026: ldstr "menuItem" + IL_002b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0030: throw + + .line 317,317 : 13,55 '' + IL_0031: ldarg.2 + IL_0032: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_MirandaHandle() + IL_0037: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_003c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0041: ldc.i4.0 + IL_0042: ceq + IL_0044: stloc.s CS$4$0001 + IL_0046: ldloc.s CS$4$0001 + IL_0048: brtrue.s IL_0055 + + .line 318,318 : 17,74 '' + IL_004a: ldstr "Invalid menu item handle." + IL_004f: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0054: throw + + .line 320,320 : 13,108 '' + IL_0055: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_005a: stloc.0 + .line 323,323 : 13,14 '' + .try + { + .try + { + IL_005b: nop + .line 324,324 : 17,69 '' + IL_005c: ldarg.2 + IL_005d: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginMenuItemUpdate(class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_0062: nop + .line 326,326 : 17,79 '' + IL_0063: ldloca.s nativeItem + IL_0065: ldarg.1 + IL_0066: ldarg.2 + IL_0067: newobj instance void Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_006c: stobj Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + .line 327,327 : 17,76 '' + IL_0071: ldc.i4.0 + IL_0072: stloc.2 + .line 329,329 : 17,34 '' + IL_0073: ldarg.3 + IL_0074: ldnull + IL_0075: ceq + IL_0077: stloc.s CS$4$0001 + IL_0079: ldloc.s CS$4$0001 + IL_007b: brtrue.s IL_00a2 + + .line 330,330 : 17,18 '' + IL_007d: nop + .line 331,331 : 21,66 '' + IL_007e: ldloc.2 + IL_007f: ldc.i4 0x80000000 + IL_0084: or + IL_0085: stloc.2 + .line 332,332 : 21,44 '' + IL_0086: ldloca.s nativeItem + IL_0088: ldarg.3 + IL_0089: stfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Text + .line 334,334 : 21,46 '' + IL_008e: ldarg.s updateItemDescriptor + IL_0090: ldc.i4.0 + IL_0091: ceq + IL_0093: stloc.s CS$4$0001 + IL_0095: ldloc.s CS$4$0001 + IL_0097: brtrue.s IL_00a1 + + .line 334,334 : 47,68 '' + IL_0099: ldarg.2 + IL_009a: ldarg.3 + IL_009b: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Text(string) + IL_00a0: nop + .line 335,335 : 17,18 '' + IL_00a1: nop + .line 336,336 : 17,61 '' + IL_00a2: ldarg.s 'flags' + IL_00a4: ldc.i4.m1 + IL_00a5: ceq + IL_00a7: stloc.s CS$4$0001 + IL_00a9: ldloc.s CS$4$0001 + IL_00ab: brtrue.s IL_00d4 + + .line 337,337 : 17,18 '' + IL_00ad: nop + .line 338,338 : 21,67 '' + IL_00ae: ldloc.2 + IL_00af: ldc.i4 0x40000000 + IL_00b4: or + IL_00b5: stloc.2 + .line 339,339 : 21,52 '' + IL_00b6: ldloca.s nativeItem + IL_00b8: ldarg.s 'flags' + IL_00ba: stfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Flags + .line 341,341 : 21,46 '' + IL_00bf: ldarg.s updateItemDescriptor + IL_00c1: ldc.i4.0 + IL_00c2: ceq + IL_00c4: stloc.s CS$4$0001 + IL_00c6: ldloc.s CS$4$0001 + IL_00c8: brtrue.s IL_00d3 + + .line 341,341 : 47,70 '' + IL_00ca: ldarg.2 + IL_00cb: ldarg.s 'flags' + IL_00cd: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Flags(valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties) + IL_00d2: nop + .line 342,342 : 17,18 '' + IL_00d3: nop + .line 343,343 : 17,34 '' + IL_00d4: ldarg.s icon + IL_00d6: ldnull + IL_00d7: ceq + IL_00d9: stloc.s CS$4$0001 + IL_00db: ldloc.s CS$4$0001 + IL_00dd: brtrue.s IL_00f7 + + .line 344,344 : 17,18 '' + IL_00df: nop + .line 345,345 : 21,66 '' + IL_00e0: ldloc.2 + IL_00e1: ldc.i4 0x20000000 + IL_00e6: or + IL_00e7: stloc.2 + .line 346,346 : 21,51 '' + IL_00e8: ldloca.s nativeItem + IL_00ea: ldarg.s icon + IL_00ec: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_00f1: stfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + .line 347,347 : 17,18 '' + IL_00f6: nop + .line 348,348 : 17,33 '' + IL_00f7: ldarg.s hotKey + IL_00f9: ldc.i4.0 + IL_00fa: ceq + IL_00fc: stloc.s CS$4$0001 + IL_00fe: ldloc.s CS$4$0001 + IL_0100: brtrue.s IL_0129 + + .line 349,349 : 17,18 '' + IL_0102: nop + .line 350,350 : 21,68 '' + IL_0103: ldloc.2 + IL_0104: ldc.i4 0x10000000 + IL_0109: or + IL_010a: stloc.2 + .line 351,351 : 21,54 '' + IL_010b: ldloca.s nativeItem + IL_010d: ldarg.s hotKey + IL_010f: stfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::HotKey + .line 352,352 : 21,46 '' + IL_0114: ldarg.s updateItemDescriptor + IL_0116: ldc.i4.0 + IL_0117: ceq + IL_0119: stloc.s CS$4$0001 + IL_011b: ldloc.s CS$4$0001 + IL_011d: brtrue.s IL_0128 + + .line 352,352 : 47,72 '' + IL_011f: ldarg.2 + IL_0120: ldarg.s hotKey + IL_0122: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HotKey(valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys) + IL_0127: nop + .line 353,353 : 17,18 '' + IL_0128: nop + .line 355,355 : 17,55 '' + IL_0129: ldloca.s nativeItem + IL_012b: dup + IL_012c: ldfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Flags + IL_0131: ldloc.2 + IL_0132: or + IL_0133: stfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Flags + .line 357,357 : 17,89 '' + IL_0138: ldloca.s nativeItem + IL_013a: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_013f: stloc.0 + .line 358,359 : 17,36 '' + IL_0140: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0145: ldstr "CList/ModifyMenuItem" + IL_014a: ldarg.2 + IL_014b: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_MirandaHandle() + IL_0150: call int32 [mscorlib]System.IntPtr::op_Explicit(native int) + IL_0155: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint32) + IL_015a: ldloca.s nativeHandle + IL_015c: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0161: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0166: brfalse.s IL_016b + + IL_0168: ldc.i4.0 + IL_0169: br.s IL_016c + + IL_016b: ldc.i4.1 + IL_016c: nop + IL_016d: stloc.3 + .line 361,361 : 17,38 '' + IL_016e: ldloc.3 + IL_016f: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0174: nop + .line 362,362 : 17,31 '' + IL_0175: ldloc.3 + IL_0176: stloc.s CS$1$0000 + IL_0178: leave.s IL_01a8 + + .line 364,364 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_017a: stloc.s e + .line 365,365 : 13,14 '' + IL_017c: nop + .line 366,366 : 17,119 '' + IL_017d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0182: ldloc.s e + IL_0184: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0189: call string [mscorlib]System.String::Concat(string, + string) + IL_018e: ldloc.s e + IL_0190: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_0195: throw + + .line 369,369 : 13,14 '' + } // end handler + } // end .try + finally + { + IL_0196: nop + .line 370,370 : 17,37 '' + IL_0197: ldloca.s nativeHandle + IL_0199: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_019e: nop + .line 371,371 : 17,59 '' + IL_019f: ldarg.2 + IL_01a0: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_01a5: nop + .line 372,372 : 13,14 '' + IL_01a6: nop + IL_01a7: endfinally + } // end handler + IL_01a8: nop + .line 373,373 : 9,10 '' + IL_01a9: ldloc.s CS$1$0000 + IL_01ab: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ShowBaloonTip(string title, + string text, + string protocol, + valuetype [System.Windows.Forms]System.Windows.Forms.ToolTipIcon icon, + int32 timeout) cil managed + { + // Code size 109 (0x6d) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeHandle, + [1] valuetype Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY msn, + [2] int32 result, + [3] bool retValue, + [4] bool CS$1$0000) + .line 380,380 : 9,10 '' + IL_0000: nop + .line 381,381 : 13,122 '' + IL_0001: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0006: stloc.0 + .line 384,384 : 13,14 '' + .try + { + IL_0007: nop + .line 385,385 : 17,88 '' + IL_0008: ldloca.s msn + IL_000a: ldarg.1 + IL_000b: ldarg.2 + IL_000c: ldarg.s icon + IL_000e: newobj instance void Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::.ctor(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.ToolTipIcon) + IL_0013: stobj Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY + .line 386,386 : 17,45 '' + IL_0018: ldloca.s msn + IL_001a: ldarg.s timeout + IL_001c: stfld uint32 Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Timeout + .line 387,387 : 17,41 '' + IL_0021: ldloca.s msn + IL_0023: ldarg.3 + IL_0024: stfld string Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Protocol + .line 389,389 : 17,89 '' + IL_0029: ldloca.s msn + IL_002b: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0030: stloc.0 + .line 390,390 : 17,141 '' + IL_0031: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0036: ldstr "Miranda/Systray/Notify" + IL_003b: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0040: ldloca.s nativeHandle + IL_0042: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0047: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_004c: stloc.2 + .line 392,392 : 17,47 '' + IL_004d: ldloc.2 + IL_004e: ldc.i4.0 + IL_004f: ceq + IL_0051: stloc.3 + .line 393,393 : 17,40 '' + IL_0052: ldloc.3 + IL_0053: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0058: nop + .line 395,395 : 17,33 '' + IL_0059: ldloc.3 + IL_005a: stloc.s CS$1$0000 + IL_005c: leave.s IL_0069 + + .line 398,398 : 13,14 '' + } // end .try + finally + { + IL_005e: nop + .line 399,399 : 17,37 '' + IL_005f: ldloca.s nativeHandle + IL_0061: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_0066: nop + .line 400,400 : 13,14 '' + IL_0067: nop + IL_0068: endfinally + } // end handler + IL_0069: nop + .line 401,401 : 9,10 '' + IL_006a: ldloc.s CS$1$0000 + IL_006c: ret + } // end of method ContactList::ShowBaloonTip + + .method public hidebysig instance bool + SetInfoTipHoverTime(int32 time) cil managed + { + // Code size 47 (0x2f) + .maxstack 4 + .locals init ([0] int32 result, + [1] bool CS$1$0000) + .line 404,404 : 9,10 '' + IL_0000: nop + .line 405,405 : 13,123 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "CLC/SetInfoTipHoverTime" + IL_000b: ldarg.1 + IL_000c: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint32) + IL_0011: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0016: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_001b: stloc.0 + .line 406,406 : 13,39 '' + IL_001c: ldloc.0 + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0025: nop + .line 408,408 : 13,32 '' + IL_0026: ldloc.0 + IL_0027: ldc.i4.0 + IL_0028: ceq + IL_002a: stloc.1 + IL_002b: br.s IL_002d + + .line 409,409 : 9,10 '' + IL_002d: ldloc.1 + IL_002e: ret + } // end of method ContactList::SetInfoTipHoverTime + + .method public hidebysig instance int32 + GetInfoTipHoverTime() cil managed + { + // Code size 21 (0x15) + .maxstack 2 + .locals init ([0] int32 CS$1$0000) + .line 412,412 : 9,10 '' + IL_0000: nop + .line 413,413 : 13,83 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "CLC/GetInfoTipHoverTime" + IL_000b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_0010: stloc.0 + IL_0011: br.s IL_0013 + + .line 414,414 : 9,10 '' + IL_0013: ldloc.0 + IL_0014: ret + } // end of method ContactList::GetInfoTipHoverTime + + .method public hidebysig instance void + EnableContactSelectionTracking() cil managed + { + // Code size 103 (0x67) + .maxstack 3 + .locals init ([0] class [mscorlib]System.EventHandler 'CS$<>9__CachedAnonymousMethodDelegate6', + [1] object CS$2$0000, + [2] bool CS$4$0001) + IL_0000: ldnull + IL_0001: stloc.0 + .line 417,417 : 9,10 '' + IL_0002: nop + .line 418,418 : 13,30 '' + IL_0003: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactList::SyncObject + IL_0008: dup + IL_0009: stloc.1 + IL_000a: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000f: nop + .line 419,419 : 13,14 '' + .try + { + IL_0010: nop + .line 420,420 : 17,53 '' + IL_0011: ldarg.0 + IL_0012: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactSelectionTrackingEnabled + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: stloc.2 + IL_001b: ldloc.2 + IL_001c: brtrue.s IL_0020 + + .line 421,421 : 21,28 '' + IL_001e: leave.s IL_0065 + + .line 423,423 : 17,62 '' + IL_0020: ldarg.0 + IL_0021: ldarg.0 + IL_0022: ldftn instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::HandleContactSelection(object, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1) + IL_0028: newobj instance void class [mscorlib]System.EventHandler`1>::.ctor(object, + native int) + IL_002d: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ContactMenuShowing(class [mscorlib]System.EventHandler`1>) + IL_0032: nop + .line 424,424 : 17,56 '' + IL_0033: ldarg.0 + IL_0034: ldc.i4.1 + IL_0035: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactSelectionTrackingEnabled + .line 426,426 : 17,131 '' + IL_003a: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_003f: ldloc.0 + IL_0040: brtrue.s IL_0051 + + IL_0042: ldarg.0 + IL_0043: ldftn instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__5'(object, + class [mscorlib]System.EventArgs) + IL_0049: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_004e: stloc.0 + IL_004f: br.s IL_0051 + + IL_0051: ldloc.0 + IL_0052: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::add_IsolatedModePluginsUnloading(class [mscorlib]System.EventHandler) + IL_0057: nop + .line 427,427 : 13,14 '' + IL_0058: nop + IL_0059: leave.s IL_0063 + + } // end .try + finally + { + IL_005b: ldloc.1 + IL_005c: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0061: nop + IL_0062: endfinally + } // end handler + IL_0063: nop + .line 428,428 : 9,10 '' + IL_0064: nop + IL_0065: nop + .line 428,428 : 9,10 '' + IL_0066: ret + } // end of method ContactList::EnableContactSelectionTracking + + .method private hidebysig instance void + HandleContactSelection(object sender, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1 e) cil managed + { + // Code size 38 (0x26) + .maxstack 2 + .locals init ([0] object CS$2$0000) + .line 431,431 : 9,10 '' + IL_0000: nop + .line 432,432 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactList::SyncObject + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 433,433 : 17,47 '' + .try + { + IL_000e: ldarg.0 + IL_000f: ldarg.2 + IL_0010: callvirt instance !0 class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::get_EventData() + IL_0015: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactList::selectedContact + IL_001a: leave.s IL_0024 + + } // end .try + finally + { + IL_001c: ldloc.0 + IL_001d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0022: nop + IL_0023: endfinally + } // end handler + IL_0024: nop + .line 434,434 : 9,10 '' + IL_0025: ret + } // end of method ContactList::HandleContactSelection + + .method public hidebysig instance native int + AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + class [System.Drawing]System.Drawing.Icon icon, + string serviceToCall, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties properties, + string toolTip) cil managed + { + // Code size 55 (0x37) + .maxstack 8 + .locals init ([0] native int CS$1$0000, + [1] bool CS$4$0001) + .line 441,441 : 9,10 '' + IL_0000: nop + .line 442,442 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.1 + IL_000c: ldloc.1 + IL_000d: brtrue.s IL_001a + + .line 443,443 : 17,60 '' + IL_000f: ldstr "contact" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 445,445 : 13,116 '' + IL_001a: ldarg.0 + IL_001b: ldarg.1 + IL_001c: ldarg.2 + IL_001d: ldarg.3 + IL_001e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0023: ldarg.1 + IL_0024: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0029: ldarg.s properties + IL_002b: ldarg.s toolTip + IL_002d: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class [System.Drawing]System.Drawing.Icon, + string, + native int, + native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties, + string) + IL_0032: stloc.0 + IL_0033: br.s IL_0035 + + .line 446,446 : 9,10 '' + IL_0035: ldloc.0 + IL_0036: ret + } // end of method ContactList::AddEvent + + .method public hidebysig instance native int + AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + class [System.Drawing]System.Drawing.Icon icon, + string serviceToCall, + native int lParamToPass, + native int eventToken, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties properties, + string toolTip) cil managed + { + // Code size 247 (0xf7) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent clistEvent, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeStruct, + [2] native int eventHandle, + [3] native int CS$1$0000, + [4] bool CS$4$0001) + .line 449,449 : 9,10 '' + IL_0000: nop + .line 450,450 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.s CS$4$0001 + IL_000d: ldloc.s CS$4$0001 + IL_000f: brtrue.s IL_001c + + .line 451,451 : 17,60 '' + IL_0011: ldstr "contact" + IL_0016: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001b: throw + + .line 453,453 : 13,30 '' + IL_001c: ldarg.2 + IL_001d: ldnull + IL_001e: ceq + IL_0020: ldc.i4.0 + IL_0021: ceq + IL_0023: stloc.s CS$4$0001 + IL_0025: ldloc.s CS$4$0001 + IL_0027: brtrue.s IL_0034 + + .line 454,454 : 17,57 '' + IL_0029: ldstr "icon" + IL_002e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0033: throw + + .line 456,456 : 13,66 '' + IL_0034: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::.ctor() + IL_0039: stloc.0 + .line 457,457 : 13,62 '' + IL_003a: ldloc.0 + IL_003b: ldarg.1 + IL_003c: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0041: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::ContactHandle + .line 458,458 : 13,49 '' + IL_0046: ldloc.0 + IL_0047: ldarg.s eventToken + IL_0049: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::EventHandle + .line 459,459 : 13,49 '' + IL_004e: ldloc.0 + IL_004f: ldarg.s properties + IL_0051: stfld uint32 Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::Flags + .line 460,460 : 13,49 '' + IL_0056: ldloc.0 + IL_0057: ldarg.2 + IL_0058: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_005d: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::IconHandle + .line 461,461 : 13,46 '' + IL_0062: ldloc.0 + IL_0063: ldarg.s lParamToPass + IL_0065: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::set_LParam(native int) + IL_006a: nop + .line 462,462 : 13,52 '' + IL_006b: ldloc.0 + IL_006c: ldarg.3 + IL_006d: stfld string Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::ServiceName + .line 463,463 : 13,42 '' + IL_0072: ldloc.0 + IL_0073: ldarg.s toolTip + IL_0075: stfld string Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::Tooltip + .line 465,465 : 13,114 '' + IL_007a: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_007f: stloc.1 + .line 468,468 : 13,14 '' + .try + { + IL_0080: nop + .line 469,469 : 17,92 '' + IL_0081: ldloca.s clistEvent + IL_0083: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0088: stloc.1 + .line 470,470 : 17,135 '' + IL_0089: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_008e: ldstr "CList/AddEvent" + IL_0093: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0098: ldloca.s nativeStruct + IL_009a: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_009f: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_00a4: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_00a9: stloc.2 + .line 472,472 : 17,48 '' + IL_00aa: ldloc.2 + IL_00ab: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_00b0: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_00b5: ldc.i4.0 + IL_00b6: ceq + IL_00b8: stloc.s CS$4$0001 + IL_00ba: ldloc.s CS$4$0001 + IL_00bc: brtrue.s IL_00e0 + + .line 473,473 : 21,176 '' + IL_00be: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_00c3: ldstr "CList/AddEvent" + IL_00c8: ldloca.s eventHandle + IL_00ca: constrained. [mscorlib]System.IntPtr + IL_00d0: callvirt instance string [mscorlib]System.Object::ToString() + IL_00d5: call string [mscorlib]System.String::Format(string, + object, + object) + IL_00da: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_00df: throw + + .line 475,475 : 17,47 '' + IL_00e0: ldloc.0 + IL_00e1: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::EventHandle + IL_00e6: stloc.3 + IL_00e7: leave.s IL_00f4 + + .line 478,478 : 13,14 '' + } // end .try + finally + { + IL_00e9: nop + .line 479,479 : 17,37 '' + IL_00ea: ldloca.s nativeStruct + IL_00ec: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_00f1: nop + .line 480,480 : 13,14 '' + IL_00f2: nop + IL_00f3: endfinally + } // end handler + IL_00f4: nop + .line 481,481 : 9,10 '' + IL_00f5: ldloc.3 + IL_00f6: ret + } // end of method ContactList::AddEvent + + .method public hidebysig instance bool + RemoveEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 44 (0x2c) + .maxstack 3 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 484,484 : 9,10 '' + IL_0000: nop + .line 485,485 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.1 + IL_000c: ldloc.1 + IL_000d: brtrue.s IL_001a + + .line 486,486 : 17,60 '' + IL_000f: ldstr "contact" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 488,488 : 13,64 '' + IL_001a: ldarg.0 + IL_001b: ldarg.1 + IL_001c: ldarg.1 + IL_001d: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0022: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::RemoveEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + native int) + IL_0027: stloc.0 + IL_0028: br.s IL_002a + + .line 489,489 : 9,10 '' + IL_002a: ldloc.0 + IL_002b: ret + } // end of method ContactList::RemoveEvent + + .method public hidebysig instance bool + RemoveEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + native int eventToken) cil managed + { + // Code size 61 (0x3d) + .maxstack 4 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 492,492 : 9,10 '' + IL_0000: nop + .line 493,493 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.1 + IL_000c: ldloc.1 + IL_000d: brtrue.s IL_001a + + .line 494,494 : 17,60 '' + IL_000f: ldstr "contact" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 496,496 : 13,132 '' + IL_001a: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_001f: ldstr "Clist/RemoveEvent" + IL_0024: ldarg.1 + IL_0025: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_002a: ldarg.2 + IL_002b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0030: call bool [mscorlib]System.Convert::ToBoolean(int32) + IL_0035: ldc.i4.0 + IL_0036: ceq + IL_0038: stloc.0 + IL_0039: br.s IL_003b + + .line 497,497 : 9,10 '' + IL_003b: ldloc.0 + IL_003c: ret + } // end of method ContactList::RemoveEvent + + .method private hidebysig instance int32 + 'b__0'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 21 (0x15) + .maxstack 3 + .locals init ([0] int32 CS$1$0000) + .line 140,140 : 21,22 '' + IL_0000: nop + .line 141,141 : 25,75 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipShowEventHandler + IL_0008: ldarg.2 + IL_0009: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::FireInfoTipEvent(class [mscorlib]System.EventHandler`1>, + native int) + IL_000e: nop + .line 142,142 : 25,60 '' + IL_000f: ldc.i4.0 + IL_0010: stloc.0 + IL_0011: br.s IL_0013 + + IL_0013: ldloc.0 + IL_0014: ret + } // end of method ContactList::'b__0' + + .method private hidebysig instance int32 + 'b__1'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 21 (0x15) + .maxstack 3 + .locals init ([0] int32 CS$1$0000) + .line 161,161 : 21,22 '' + IL_0000: nop + .line 162,162 : 25,75 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipHideEventHandler + IL_0008: ldarg.2 + IL_0009: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::FireInfoTipEvent(class [mscorlib]System.EventHandler`1>, + native int) + IL_000e: nop + .line 163,163 : 25,60 '' + IL_000f: ldc.i4.0 + IL_0010: stloc.0 + IL_0011: br.s IL_0013 + + IL_0013: ldloc.0 + IL_0014: ret + } // end of method ContactList::'b__1' + + .method private hidebysig instance int32 + 'b__2'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 100 (0x64) + .maxstack 3 + .locals init ([0] string protocolName, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs eArgs, + [3] int32 CS$1$0000, + [4] bool CS$4$0001) + .line 182,182 : 21,22 '' + IL_0000: nop + .line 183,183 : 25,126 '' + IL_0001: ldarg.2 + IL_0002: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0007: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000c: brtrue.s IL_0017 + + IL_000e: ldarg.2 + IL_000f: ldc.i4.0 + IL_0010: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0015: br.s IL_0018 + + IL_0017: ldnull + IL_0018: nop + IL_0019: stloc.0 + .line 184,184 : 25,50 '' + IL_001a: ldnull + IL_001b: stloc.1 + .line 186,186 : 25,65 '' + IL_001c: ldloc.0 + IL_001d: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0022: stloc.s CS$4$0001 + IL_0024: ldloc.s CS$4$0001 + IL_0026: brtrue.s IL_0034 + + .line 187,187 : 29,90 '' + IL_0028: ldloc.0 + IL_0029: ldc.i4 0x3e8 + IL_002e: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType) + IL_0033: stloc.1 + .line 189,189 : 25,135 '' + IL_0034: ldloc.1 + IL_0035: ldarg.1 + IL_0036: call valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToStatus(native uint) + IL_003b: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.Protocol, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + IL_0040: stloc.2 + .line 191,191 : 25,70 '' + IL_0041: ldarg.0 + IL_0042: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ProtocolStatusChangeEventHandler + IL_0047: ldnull + IL_0048: ceq + IL_004a: stloc.s CS$4$0001 + IL_004c: ldloc.s CS$4$0001 + IL_004e: brtrue.s IL_005e + + .line 192,192 : 29,75 '' + IL_0050: ldarg.0 + IL_0051: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ProtocolStatusChangeEventHandler + IL_0056: ldarg.0 + IL_0057: ldloc.2 + IL_0058: callvirt instance void class [mscorlib]System.EventHandler`1::Invoke(object, + !0) + IL_005d: nop + .line 194,194 : 25,60 '' + IL_005e: ldc.i4.0 + IL_005f: stloc.3 + IL_0060: br.s IL_0062 + + IL_0062: ldloc.3 + IL_0063: ret + } // end of method ContactList::'b__2' + + .method private hidebysig instance int32 + 'b__3'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 44 (0x2c) + .maxstack 3 + .locals init ([0] int32 CS$1$0000, + [1] bool CS$4$0001) + .line 213,213 : 21,22 '' + IL_0000: nop + .line 214,214 : 25,68 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactMenuShowingEventHandler + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.1 + IL_000b: ldloc.1 + IL_000c: brtrue.s IL_0026 + + .line 215,215 : 29,137 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactMenuShowingEventHandler + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native uint) + IL_001b: newobj instance void class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::.ctor(!0) + IL_0020: callvirt instance void class [mscorlib]System.EventHandler`1>::Invoke(object, + !0) + IL_0025: nop + .line 217,217 : 25,60 '' + IL_0026: ldc.i4.0 + IL_0027: stloc.0 + IL_0028: br.s IL_002a + + IL_002a: ldloc.0 + IL_002b: ret + } // end of method ContactList::'b__3' + + .method private hidebysig instance int32 + 'b__4'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 36 (0x24) + .maxstack 3 + .locals init ([0] bool retValue, + [1] int32 CS$1$0000) + .line 236,236 : 21,22 '' + IL_0000: nop + .line 237,237 : 25,203 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactDoubleClickedEventHandler + IL_0008: ldarg.1 + IL_0009: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native uint) + IL_000e: newobj instance void class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::.ctor(!0) + IL_0013: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable>(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + !!0) + IL_0018: stloc.0 + .line 238,238 : 25,58 '' + IL_0019: ldloc.0 + IL_001a: call int32 [mscorlib]System.Convert::ToInt32(bool) + IL_001f: stloc.1 + IL_0020: br.s IL_0022 + + IL_0022: ldloc.1 + IL_0023: ret + } // end of method ContactList::'b__4' + + .method private hidebysig instance void + 'b__5'(object param0, + class [mscorlib]System.EventArgs param1) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 21 (0x15) + .maxstack 8 + .line 426,426 : 81,82 '' + IL_0000: nop + .line 426,426 : 83,128 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldftn instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::HandleContactSelection(object, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1) + IL_0009: newobj instance void class [mscorlib]System.EventHandler`1>::.ctor(object, + native int) + IL_000e: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ContactMenuShowing(class [mscorlib]System.EventHandler`1>) + IL_0013: nop + IL_0014: ret + } // end of method ContactList::'b__5' + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 51,51 : 9,66 '' + IL_0000: newobj instance void [mscorlib]System.Object::.ctor() + IL_0005: stsfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactList::SyncObject + .line 63,63 : 9,62 '' + IL_000a: newobj instance void [mscorlib]System.Random::.ctor() + IL_000f: stsfld class [mscorlib]System.Random Virtuoso.Miranda.Plugins.Infrastructure.ContactList::Random + IL_0014: ret + } // end of method ContactList::.cctor + + .event class [mscorlib]System.EventHandler`1> InfoTipShow + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_InfoTipShow(class [mscorlib]System.EventHandler`1>) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_InfoTipShow(class [mscorlib]System.EventHandler`1>) + } // end of event ContactList::InfoTipShow + .event class [mscorlib]System.EventHandler`1> InfoTipHide + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_InfoTipHide(class [mscorlib]System.EventHandler`1>) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_InfoTipHide(class [mscorlib]System.EventHandler`1>) + } // end of event ContactList::InfoTipHide + .event class [mscorlib]System.EventHandler`1 ProtocolStatusChange + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ProtocolStatusChange(class [mscorlib]System.EventHandler`1) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ProtocolStatusChange(class [mscorlib]System.EventHandler`1) + } // end of event ContactList::ProtocolStatusChange + .event class [mscorlib]System.EventHandler`1> ContactMenuShowing + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ContactMenuShowing(class [mscorlib]System.EventHandler`1>) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ContactMenuShowing(class [mscorlib]System.EventHandler`1>) + } // end of event ContactList::ContactMenuShowing + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> ContactDoubleClicked + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ContactDoubleClicked(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1>) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ContactDoubleClicked(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1>) + } // end of event ContactList::ContactDoubleClicked + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + SelectedContact() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactList::get_SelectedContact() + } // end of property ContactList::SelectedContact + .property instance valuetype [mscorlib]System.Nullable`1 + Transparency() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::set_Transparency(valuetype [mscorlib]System.Nullable`1) + .get instance valuetype [mscorlib]System.Nullable`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::get_Transparency() + } // end of property ContactList::Transparency + .property instance bool TransparencyEnabled() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::get_TransparencyEnabled() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::set_TransparencyEnabled(bool) + } // end of property ContactList::TransparencyEnabled +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactList + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute + extends [mscorlib]System.Attribute +{ + .method famorassem hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 26,26 : 9,43 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\HookAttribute.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + IL_0006: nop + .line 26,26 : 44,45 '' + IL_0007: nop + .line 26,26 : 46,47 '' + IL_0008: nop + IL_0009: ret + } // end of method HookAttribute::.ctor + + .method assembly hidebysig newslot specialname abstract strict virtual + instance string get_HookName() cil managed + { + } // end of method HookAttribute::get_HookName + + .method assembly hidebysig newslot specialname abstract strict virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + get_HookType() cil managed + { + } // end of method HookAttribute::get_HookType + + .property instance string HookName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::get_HookName() + } // end of property HookAttribute::HookName + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + HookType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::get_HookType() + } // end of property HookAttribute::HookType +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute + extends Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 40 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ..@.....T..Allow + 4D 75 6C 74 69 70 6C 65 01 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 01 ) // rited. + .field private string eventName + .method public hidebysig specialname instance string + get_EventName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 33,33 : 13,14 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\EventHookAttribute.cs' + IL_0000: nop + .line 34,34 : 17,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::eventName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 35,35 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method EventHookAttribute::get_EventName + + .method public hidebysig specialname instance void + set_EventName(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 37,37 : 13,14 '' + IL_0000: nop + .line 38,38 : 17,40 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::eventName + .line 39,39 : 13,14 '' + IL_0008: ret + } // end of method EventHookAttribute::set_EventName + + .method assembly hidebysig specialname strict virtual + instance string get_HookName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 44,44 : 17,18 '' + IL_0000: nop + .line 44,44 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: call instance string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_EventName() + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 44,44 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method EventHookAttribute::get_HookName + + .method assembly hidebysig specialname strict virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + get_HookType() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType CS$1$0000) + .line 49,49 : 17,18 '' + IL_0000: nop + .line 49,49 : 19,45 '' + IL_0001: ldc.i4.1 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 49,49 : 46,47 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method EventHookAttribute::get_HookType + + .method public hidebysig specialname rtspecialname + instance void .ctor(string eventName) cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 56,56 : 9,52 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::.ctor() + IL_0006: nop + .line 57,57 : 9,10 '' + IL_0007: nop + .line 58,58 : 13,35 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 59,59 : 17,62 '' + IL_0013: ldstr "eventName" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 61,61 : 13,40 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::eventName + .line 62,62 : 9,10 '' + IL_0025: nop + IL_0026: ret + } // end of method EventHookAttribute::.ctor + + .property instance string EventName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_EventName() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::set_EventName(string) + } // end of property EventHookAttribute::EventName + .property instance string HookName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_HookName() + } // end of property EventHookAttribute::HookName + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + HookType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_HookType() + } // end of property EventHookAttribute::HookType +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute + +.class public abstract auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs + extends [mscorlib]System.EventArgs +{ + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 27,27 : 9,37 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.EventArgs::.ctor() + IL_0006: nop + .line 27,27 : 38,39 '' + IL_0007: nop + .line 27,27 : 40,41 '' + IL_0008: nop + IL_0009: ret + } // end of method MirandaEventArgs::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1 + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs +{ + .field private !T eventData + .method public hidebysig specialname instance !T + get_EventData() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] !T CS$1$0000) + .line 33,33 : 13,14 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContactListEventArgs.cs' + IL_0000: nop + .line 34,34 : 17,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld !0 class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::eventData + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 35,35 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactListEventArgs`1::get_EventData + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(!T eventData) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 42,42 : 9,51 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs::.ctor() + IL_0006: nop + .line 43,43 : 9,10 '' + IL_0007: nop + .line 44,44 : 13,40 '' + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: stfld !0 class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::eventData + .line 45,45 : 9,10 '' + IL_000f: nop + IL_0010: ret + } // end of method ContactListEventArgs`1::.ctor + + .property instance !T EventData() + { + .get instance !T Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::get_EventData() + } // end of property ContactListEventArgs`1::EventData +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1 + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject +{ + .field private static initonly class [mscorlib]System.Type ItemTypeType + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType 'type' + .method family hidebysig specialname rtspecialname + instance void .ctor(native int handle, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType 'type') cil managed + { + // Code size 71 (0x47) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 43,43 : 9,75 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaItem.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.ctor(native int) + IL_0007: nop + .line 44,44 : 9,10 '' + IL_0008: nop + .line 45,45 : 13,53 '' + IL_0009: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::ItemTypeType + IL_000e: ldarg.2 + IL_000f: box Virtuoso.Miranda.Plugins.Infrastructure.ItemType + IL_0014: call bool [mscorlib]System.Enum::IsDefined(class [mscorlib]System.Type, + object) + IL_0019: stloc.0 + IL_001a: ldloc.0 + IL_001b: brtrue.s IL_0028 + + .line 46,46 : 17,63 '' + IL_001d: ldstr "type" + IL_0022: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0027: throw + + .line 48,48 : 13,46 '' + IL_0028: ldarg.2 + IL_0029: ldc.i4.0 + IL_002a: ceq + IL_002c: ldc.i4.0 + IL_002d: ceq + IL_002f: stloc.0 + IL_0030: ldloc.0 + IL_0031: brtrue.s IL_003e + + .line 49,49 : 17,83 '' + IL_0033: ldstr "Unspecified type is not supported." + IL_0038: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_003d: throw + + .line 51,51 : 13,30 '' + IL_003e: ldarg.0 + IL_003f: ldarg.2 + IL_0040: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::'type' + .line 52,52 : 9,10 '' + IL_0045: nop + IL_0046: ret + } // end of method MirandaItem::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(native int handle) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 54,54 : 9,44 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::.ctor() + IL_0006: nop + .line 55,55 : 9,10 '' + IL_0007: nop + .line 56,56 : 13,41 '' + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle(native int) + IL_000f: nop + .line 57,57 : 9,10 '' + IL_0010: nop + IL_0011: ret + } // end of method MirandaItem::.ctor + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType + get_Type() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType CS$1$0000) + .line 66,66 : 13,14 '' + IL_0000: nop + .line 67,67 : 17,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::'type' + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 68,68 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaItem::get_Type + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 35,35 : 9,70 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ItemType + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::ItemTypeType + IL_000f: ret + } // end of method MirandaItem::.cctor + + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType + Type() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::get_Type() + } // end of property MirandaItem::Type +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem +{ + .field private static literal string MS_CLIST_GROUPGETNAME = "CList/GroupGetName" + .method assembly hidebysig specialname rtspecialname + instance void .ctor(native int handle) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 37,37 : 9,73 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\GroupInfo.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.2 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.ctor(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType) + IL_0008: nop + .line 37,37 : 74,75 '' + IL_0009: nop + .line 37,37 : 76,77 '' + IL_000a: nop + IL_000b: ret + } // end of method GroupInfo::.ctor + + .method public hidebysig specialname instance string + get_Name() cil managed + { + // Code size 83 (0x53) + .maxstack 4 + .locals init ([0] native int pName, + [1] string CS$1$0000, + [2] bool CS$4$0001) + .line 46,46 : 13,14 '' + IL_0000: nop + .line 47,47 : 17,126 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "CList/GroupGetName" + IL_000b: ldarg.0 + IL_000c: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0011: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0016: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_001b: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0020: stloc.0 + .line 48,48 : 17,52 '' + IL_0021: ldloc.0 + IL_0022: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0027: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_002c: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0031: nop + .line 50,50 : 17,42 '' + IL_0032: ldloc.0 + IL_0033: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0038: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_003d: ldc.i4.0 + IL_003e: ceq + IL_0040: stloc.2 + IL_0041: ldloc.2 + IL_0042: brtrue.s IL_004d + + .line 51,51 : 21,59 '' + IL_0044: ldloc.0 + IL_0045: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringAnsi(native int) + IL_004a: stloc.1 + IL_004b: br.s IL_0051 + + .line 53,53 : 21,33 '' + IL_004d: ldnull + IL_004e: stloc.1 + IL_004f: br.s IL_0051 + + .line 54,54 : 13,14 '' + IL_0051: ldloc.1 + IL_0052: ret + } // end of method GroupInfo::get_Name + + .method public hidebysig specialname instance bool + get_IsExpanded() cil managed + { + // Code size 93 (0x5d) + .maxstack 4 + .locals init ([0] int32 expanded, + [1] native int pName, + [2] bool CS$1$0000, + [3] native int CS$0$0001, + [4] bool CS$4$0002) + .line 60,60 : 13,14 '' + IL_0000: nop + .line 61,61 : 17,34 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + .line 63,63 : 17,142 '' + IL_0003: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0008: ldstr "CList/GroupGetName" + IL_000d: ldarg.0 + IL_000e: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0013: stloc.3 + IL_0014: ldloca.s CS$0$0001 + IL_0016: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_001b: ldloca.s expanded + IL_001d: conv.u + IL_001e: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0023: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0028: stloc.1 + .line 64,64 : 17,52 '' + IL_0029: ldloc.1 + IL_002a: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002f: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0034: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0039: nop + .line 66,66 : 17,42 '' + IL_003a: ldloc.1 + IL_003b: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0040: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0045: ldc.i4.0 + IL_0046: ceq + IL_0048: stloc.s CS$4$0002 + IL_004a: ldloc.s CS$4$0002 + IL_004c: brtrue.s IL_0057 + + .line 67,67 : 21,56 '' + IL_004e: ldloc.0 + IL_004f: call bool [mscorlib]System.Convert::ToBoolean(int32) + IL_0054: stloc.2 + IL_0055: br.s IL_005b + + .line 69,69 : 21,34 '' + IL_0057: ldc.i4.0 + IL_0058: stloc.2 + IL_0059: br.s IL_005b + + .line 70,70 : 13,14 '' + IL_005b: ldloc.2 + IL_005c: ret + } // end of method GroupInfo::get_IsExpanded + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo::get_Name() + } // end of property GroupInfo::Name + .property instance bool IsExpanded() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo::get_IsExpanded() + } // end of property GroupInfo::IsExpanded +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.HookType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Undefined = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType EventHook = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType ServiceFunction = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.HookType + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + implements [mscorlib]System.Runtime.Serialization.ISerializable +{ + .class auto ansi sealed nested private ContactDisplayNameOptions + extends [mscorlib]System.Enum + { + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo/ContactDisplayNameOptions Ansi = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo/ContactDisplayNameOptions NoMyHandle = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo/ContactDisplayNameOptions Unicode = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo/ContactDisplayNameOptions NoCache = int32(0x00000004) + } // end of class ContactDisplayNameOptions + + .field private static literal string MS_DB_CONTACT_IS = "DB/Contact/Is" + .field private static literal string MS_PROTO_GETCONTACTBASEPROTO = "Proto/GetContactBaseProto" + .field private static literal string MS_DB_CONTACT_WRITESETTING = "DB/Contact/WriteSetting" + .field private static literal string MS_DB_CONTACT_GETSETTING = "DB/Contact/GetSetting" + .field private static literal string MS_DB_CONTACT_GETSETTINGSTATIC = "DB/Contact/GetSettingStatic" + .field private static literal string MS_DB_CONTACT_DELETESETTING = "DB/Contact/DeleteSetting" + .field private static literal string MS_DB_CONTACT_ADD = "DB/Contact/Add" + .field private static literal string MS_DB_CONTACT_DELETE = "DB/Contact/Delete" + .field private static literal string MS_CLIST_GETCONTACTDISPLAYNAME = "CList/GetContactDisplayName" + .field private static literal string SETTING_STATUS = "Status" + .field private static literal string MS_MSG_SENDMESSAGE = "SRMsg/SendCommand" + .field private static literal string MS_MSG_SENDMESSAGE_2 = "SRMsg/LaunchMessageWindow" + .field private static initonly object SyncObject + .field private static initonly class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo meNeutral + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.Protocol owningModule + .field private object 'value' + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType valueType + .field private object uniqueID + .field private static class [mscorlib]System.Converter`2 'CS$<>9__CachedAnonymousMethodDelegate2' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 27 (0x1b) + .maxstack 8 + .line 96,97 : 9,50 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContactInfo.cs' + IL_0000: ldarg.0 + IL_0001: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0006: ldc.i4.1 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.ctor(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType) + IL_000c: nop + .line 98,98 : 9,10 '' + IL_000d: nop + .line 99,99 : 13,58 '' + IL_000e: ldarg.0 + IL_000f: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_0014: stfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::owningModule + .line 100,100 : 9,10 '' + IL_0019: nop + IL_001a: ret + } // end of method ContactInfo::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 102,103 : 9,59 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldstr "MirandaHandle" + IL_0007: callvirt instance int64 [mscorlib]System.Runtime.Serialization.SerializationInfo::GetInt64(string) + IL_000c: call native int [mscorlib]System.IntPtr::op_Explicit(int64) + IL_0011: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor(native int) + IL_0016: nop + .line 104,104 : 9,10 '' + IL_0017: nop + .line 105,105 : 9,10 '' + IL_0018: nop + IL_0019: ret + } // end of method ContactInfo::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(native uint contactHandle) cil managed + { + .custom instance void [mscorlib]System.ObsoleteAttribute::.ctor(string) = ( 01 00 3F 57 69 6C 6C 20 62 65 20 72 65 6D 6F 76 // ..?Will be remov + 65 64 20 69 6E 20 74 68 65 20 66 75 74 75 72 65 // ed in the future + 2C 20 75 73 65 20 46 72 6F 6D 48 61 6E 64 6C 65 // , use FromHandle + 28 55 49 6E 74 50 74 72 29 20 69 6E 73 74 65 61 // (UIntPtr) instea + 64 2E 00 00 ) // d... + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 16 (0x10) + .maxstack 8 + .line 107,108 : 9,92 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call native int Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native uint) + IL_0007: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor(native int) + IL_000c: nop + .line 108,108 : 93,94 '' + IL_000d: nop + .line 108,108 : 95,96 '' + IL_000e: nop + IL_000f: ret + } // end of method ContactInfo::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(native int contactHandle) cil managed + { + .custom instance void [mscorlib]System.ObsoleteAttribute::.ctor(string) = ( 01 00 3E 57 69 6C 6C 20 62 65 20 72 65 6D 6F 76 // ..>Will be remov + 65 64 20 69 6E 20 74 68 65 20 66 75 74 75 72 65 // ed in the future + 2C 20 75 73 65 20 46 72 6F 6D 48 61 6E 64 6C 65 // , use FromHandle + 28 49 6E 74 50 74 72 29 20 69 6E 73 74 65 61 64 // (IntPtr) instead + 2E 00 00 ) // ... + // Code size 203 (0xcb) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context, + [1] native int protoNamePtr, + [2] string protoName, + [3] bool CS$4$0000) + .line 110,112 : 9,52 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.1 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.ctor(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType) + IL_0008: nop + .line 113,113 : 9,10 '' + IL_0009: nop + .line 114,114 : 13,61 '' + IL_000a: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_000f: stloc.0 + .line 116,116 : 13,120 '' + IL_0010: ldarg.1 + IL_0011: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0016: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_001b: brfalse.s IL_0036 + + IL_001d: ldloc.0 + IL_001e: ldstr "DB/Contact/Is" + IL_0023: ldarg.1 + IL_0024: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0029: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_002e: ldc.i4.0 + IL_002f: ceq + IL_0031: ldc.i4.0 + IL_0032: ceq + IL_0034: br.s IL_0037 + + IL_0036: ldc.i4.1 + IL_0037: nop + IL_0038: stloc.3 + IL_0039: ldloc.3 + IL_003a: brtrue.s IL_0047 + + .line 117,117 : 17,87 '' + IL_003c: ldstr "Contact not found in Miranda database." + IL_0041: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0046: throw + + .line 119,119 : 13,67 '' + IL_0047: ldarg.1 + IL_0048: call native int Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetModuleNamePtr(native int) + IL_004d: stloc.1 + .line 121,121 : 13,45 '' + IL_004e: ldloc.1 + IL_004f: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0054: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0059: ldc.i4.0 + IL_005a: ceq + IL_005c: stloc.3 + IL_005d: ldloc.3 + IL_005e: brtrue.s IL_0081 + + .line 122,122 : 13,14 '' + IL_0060: nop + .line 123,123 : 17,90 '' + IL_0061: ldloc.1 + IL_0062: ldc.i4.0 + IL_0063: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0068: stloc.2 + .line 124,124 : 17,91 '' + IL_0069: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_006e: callvirt instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Protocols() + IL_0073: ldloc.2 + IL_0074: ldarg.0 + IL_0075: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::owningModule + IL_007a: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::TryGetValue(!0, + !1&) + IL_007f: pop + .line 125,125 : 13,14 '' + IL_0080: nop + .line 127,127 : 13,38 '' + IL_0081: ldarg.0 + IL_0082: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::owningModule + IL_0087: ldnull + IL_0088: ceq + IL_008a: ldc.i4.0 + IL_008b: ceq + IL_008d: stloc.3 + IL_008e: ldloc.3 + IL_008f: brtrue.s IL_00c1 + + .line 128,128 : 13,14 '' + IL_0091: nop + .line 129,129 : 17,57 '' + IL_0092: ldarg.0 + IL_0093: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_0098: stfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::owningModule + .line 131,131 : 17,50 '' + IL_009d: ldarg.1 + IL_009e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_00a3: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_00a8: ldc.i4.0 + IL_00a9: ceq + IL_00ab: stloc.3 + IL_00ac: ldloc.3 + IL_00ad: brtrue.s IL_00c0 + + .line 132,132 : 21,101 '' + IL_00af: ldc.i4.5 + IL_00b0: ldstr "Hyphen" + IL_00b5: ldstr "Unable to obtain contact's protocol" + IL_00ba: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00bf: nop + .line 133,133 : 13,14 '' + IL_00c0: nop + .line 135,135 : 13,48 '' + IL_00c1: ldarg.0 + IL_00c2: ldarg.1 + IL_00c3: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle(native int) + IL_00c8: nop + .line 136,136 : 9,10 '' + IL_00c9: nop + IL_00ca: ret + } // end of method ContactInfo::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + FromHandle(native int contactHandle) cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 139,139 : 9,10 '' + IL_0000: nop + .line 140,140 : 13,51 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor(native int) + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 141,141 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactInfo::FromHandle + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + FromHandle(native uint contactHandle) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 145,145 : 9,10 '' + IL_0000: nop + .line 146,146 : 13,51 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor(native uint) + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 147,147 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactInfo::FromHandle + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType + get_PropertyType() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType CS$1$0000) + .line 155,155 : 17,18 '' + IL_0000: nop + .line 155,155 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::valueType + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 155,155 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactInfo::get_PropertyType + + .method public hidebysig specialname instance object + get_PropertyValue() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] object CS$1$0000) + .line 160,160 : 17,18 '' + IL_0000: nop + .line 160,160 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'value' + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 160,160 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactInfo::get_PropertyValue + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_OwningModule() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol CS$1$0000) + .line 165,165 : 17,18 '' + IL_0000: nop + .line 165,165 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::owningModule + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 165,165 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactInfo::get_OwningModule + + .method public hidebysig specialname instance bool + get_IsSelf() cil managed + { + // Code size 22 (0x16) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 171,171 : 13,14 '' + IL_0000: nop + .line 172,172 : 17,55 '' + IL_0001: ldarg.0 + IL_0002: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 173,173 : 13,14 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method ContactInfo::get_IsSelf + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_MeNeutral() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 179,179 : 13,14 '' + IL_0000: nop + .line 180,180 : 17,34 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::meNeutral + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 181,181 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method ContactInfo::get_MeNeutral + + .method public hidebysig specialname instance valuetype [mscorlib]System.Nullable`1 + get_Status() cil managed + { + // Code size 85 (0x55) + .maxstack 3 + .locals init ([0] object obj, + [1] valuetype [mscorlib]System.Nullable`1 CS$1$0000, + [2] bool CS$4$0001, + [3] valuetype [mscorlib]System.Nullable`1 CS$0$0002) + .line 187,187 : 13,14 '' + IL_0000: nop + .line 188,188 : 17,61 '' + IL_0001: ldarg.0 + IL_0002: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule() + IL_0007: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_000c: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: stloc.2 + IL_0015: ldloc.2 + IL_0016: brtrue.s IL_0024 + + .line 189,189 : 21,33 '' + IL_0018: ldloca.s CS$0$0002 + IL_001a: initobj valuetype [mscorlib]System.Nullable`1 + IL_0020: ldloc.3 + IL_0021: stloc.1 + IL_0022: br.s IL_0053 + + .line 191,191 : 17,86 '' + IL_0024: ldarg.0 + IL_0025: ldstr "Status" + IL_002a: ldc.i4.2 + IL_002b: call instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0030: stloc.0 + .line 193,193 : 17,33 '' + IL_0031: ldloc.0 + IL_0032: ldnull + IL_0033: ceq + IL_0035: stloc.2 + IL_0036: ldloc.2 + IL_0037: brtrue.s IL_0047 + + .line 194,194 : 21,52 '' + IL_0039: ldloc.0 + IL_003a: unbox.any [mscorlib]System.UInt16 + IL_003f: newobj instance void valuetype [mscorlib]System.Nullable`1::.ctor(!0) + IL_0044: stloc.1 + IL_0045: br.s IL_0053 + + .line 196,196 : 21,33 '' + IL_0047: ldloca.s CS$0$0002 + IL_0049: initobj valuetype [mscorlib]System.Nullable`1 + IL_004f: ldloc.3 + IL_0050: stloc.1 + IL_0051: br.s IL_0053 + + .line 197,197 : 13,14 '' + IL_0053: ldloc.1 + IL_0054: ret + } // end of method ContactInfo::get_Status + + .method public hidebysig specialname instance string + get_DisplayName() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 203,203 : 13,14 '' + IL_0000: nop + .line 204,204 : 17,54 '' + IL_0001: ldarg.0 + IL_0002: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0007: call string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetDisplayName(native int) + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 205,205 : 13,14 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method ContactInfo::get_DisplayName + + .method public hidebysig specialname instance object + get_UniqueID() cil managed + { + // Code size 73 (0x49) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType 'type', + [1] object CS$1$0000, + [2] object CS$2$0001, + [3] bool CS$4$0002) + .line 212,212 : 13,14 '' + IL_0000: nop + .line 213,213 : 17,34 '' + IL_0001: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::SyncObject + IL_0006: dup + IL_0007: stloc.2 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 214,214 : 17,18 '' + .try + { + IL_000e: nop + .line 215,215 : 21,42 '' + IL_000f: ldarg.0 + IL_0010: ldfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::uniqueID + IL_0015: ldnull + IL_0016: ceq + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: stloc.3 + IL_001c: ldloc.3 + IL_001d: brtrue.s IL_0035 + + .line 216,216 : 21,22 '' + IL_001f: nop + .line 218,218 : 25,76 '' + IL_0020: ldarg.0 + IL_0021: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0026: ldarg.0 + IL_0027: ldflda object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::uniqueID + IL_002c: ldloca.s 'type' + IL_002e: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetUniqueID(native int, + object&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType&) + IL_0033: pop + .line 219,219 : 21,22 '' + IL_0034: nop + .line 221,221 : 21,37 '' + IL_0035: ldarg.0 + IL_0036: ldfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::uniqueID + IL_003b: stloc.1 + IL_003c: leave.s IL_0046 + + } // end .try + finally + { + IL_003e: ldloc.2 + IL_003f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0044: nop + IL_0045: endfinally + } // end handler + IL_0046: nop + .line 223,223 : 13,14 '' + IL_0047: ldloc.1 + IL_0048: ret + } // end of method ContactInfo::get_UniqueID + + .method public hidebysig instance bool + WriteSetting(string name, + object 'value', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType saveAs) cil managed + { + // Code size 21 (0x15) + .maxstack 5 + .locals init ([0] bool CS$1$0000) + .line 233,233 : 9,10 '' + IL_0000: nop + .line 234,234 : 13,68 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.0 + IL_0004: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule() + IL_0009: ldarg.2 + IL_000a: ldarg.3 + IL_000b: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting(string, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner, + object, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0010: stloc.0 + IL_0011: br.s IL_0013 + + .line 235,235 : 9,10 '' + IL_0013: ldloc.0 + IL_0014: ret + } // end of method ContactInfo::WriteSetting + + .method public hidebysig instance bool + WriteSetting(string name, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + object 'value', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType saveAs) cil managed + { + // Code size 44 (0x2c) + .maxstack 5 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 238,238 : 9,10 '' + IL_0000: nop + .line 239,239 : 13,31 '' + IL_0001: ldarg.2 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 240,240 : 17,58 '' + IL_000c: ldstr "owner" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 242,242 : 13,66 '' + IL_0017: ldarg.0 + IL_0018: ldarg.1 + IL_0019: ldarg.2 + IL_001a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + IL_001f: ldarg.3 + IL_0020: ldarg.s saveAs + IL_0022: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting(string, + string, + object, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0027: stloc.0 + IL_0028: br.s IL_002a + + .line 243,243 : 9,10 '' + IL_002a: ldloc.0 + IL_002b: ret + } // end of method ContactInfo::WriteSetting + + .method public hidebysig instance bool + WriteSettingAsBlob(string name, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + uint8[] 'blob') cil managed + { + // Code size 42 (0x2a) + .maxstack 4 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 246,246 : 9,10 '' + IL_0000: nop + .line 247,247 : 13,31 '' + IL_0001: ldarg.2 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 248,248 : 17,58 '' + IL_000c: ldstr "owner" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 250,250 : 13,63 '' + IL_0017: ldarg.0 + IL_0018: ldarg.1 + IL_0019: ldarg.2 + IL_001a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + IL_001f: ldarg.3 + IL_0020: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSettingAsBlob(string, + string, + uint8[]) + IL_0025: stloc.0 + IL_0026: br.s IL_0028 + + .line 251,251 : 9,10 '' + IL_0028: ldloc.0 + IL_0029: ret + } // end of method ContactInfo::WriteSettingAsBlob + + .method public hidebysig instance bool + WriteSettingAsBlob(string name, + string owner, + uint8[] 'blob') cil managed + { + // Code size 29 (0x1d) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 254,254 : 9,10 '' + IL_0000: nop + .line 255,255 : 13,30 '' + IL_0001: ldarg.3 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 256,256 : 17,57 '' + IL_000c: ldstr "blob" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 258,258 : 13,49 '' + IL_0017: newobj instance void [mscorlib]System.NotImplementedException::.ctor() + IL_001c: throw + } // end of method ContactInfo::WriteSettingAsBlob + + .method public hidebysig instance bool + WriteSetting(string name, + string owner, + object 'value', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType saveAs) cil managed + { + // Code size 521 (0x209) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle valueHandle, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle nameHandle, + [2] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle moduleNameHandle, + [3] native int blobPtr, + [4] valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING dbSetting, + [5] bool result, + [6] class [mscorlib]System.FormatException fE, + [7] class [mscorlib]System.Exception e, + [8] bool CS$1$0000, + [9] bool CS$4$0001, + [10] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType CS$4$0002, + [11] native int CS$0$0003) + .line 264,264 : 9,10 '' + IL_0000: nop + .line 265,265 : 13,45 '' + IL_0001: ldarg.2 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.s CS$4$0001 + IL_000c: ldloc.s CS$4$0001 + IL_000e: brtrue.s IL_001b + + .line 266,266 : 17,58 '' + IL_0010: ldstr "owner" + IL_0015: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001a: throw + + .line 268,268 : 13,44 '' + IL_001b: ldarg.1 + IL_001c: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0021: ldc.i4.0 + IL_0022: ceq + IL_0024: stloc.s CS$4$0001 + IL_0026: ldloc.s CS$4$0001 + IL_0028: brtrue.s IL_0035 + + .line 269,269 : 17,57 '' + IL_002a: ldstr "name" + IL_002f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0034: throw + + .line 271,271 : 13,77 '' + IL_0035: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_003a: stloc.0 + .line 272,272 : 13,94 '' + IL_003b: ldarg.1 + IL_003c: ldc.i4.0 + IL_003d: call valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0042: stloc.1 + .line 273,273 : 13,101 '' + IL_0043: ldarg.2 + IL_0044: ldc.i4.0 + IL_0045: call valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_004a: stloc.2 + .line 275,275 : 13,42 '' + IL_004b: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0050: stloc.3 + .line 278,278 : 13,14 '' + .try + { + .try + { + IL_0051: nop + .line 279,279 : 17,79 '' + IL_0052: ldloca.s dbSetting + IL_0054: initobj Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + .line 280,280 : 17,45 '' + IL_005a: ldloca.s dbSetting + IL_005c: ldloc.1 + IL_005d: call native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle) + IL_0062: stfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Name + .line 281,281 : 17,53 '' + IL_0067: ldloca.s dbSetting + IL_0069: ldloc.2 + IL_006a: call native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle) + IL_006f: stfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Module + .line 282,282 : 17,51 '' + IL_0074: ldloca.s dbSetting + IL_0076: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_007b: initobj Virtuoso.Miranda.Plugins.Native.DBVARIANT + .line 283,283 : 17,53 '' + IL_0081: ldloca.s dbSetting + IL_0083: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0088: ldarg.s saveAs + IL_008a: stfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + .line 285,285 : 17,32 '' + IL_008f: ldarg.s saveAs + IL_0091: stloc.s CS$4$0002 + IL_0093: ldloc.s CS$4$0002 + IL_0095: ldc.i4.1 + IL_0096: sub + IL_0097: switch ( + IL_011f, + IL_0138, + IL_0170, + IL_0151) + IL_00ac: ldloc.s CS$4$0002 + IL_00ae: ldc.i4 0xfc + IL_00b3: sub + IL_00b4: switch ( + IL_00f8, + IL_00f8, + IL_016a, + IL_00ce) + IL_00c9: br IL_0170 + + .line 288,288 : 25,104 '' + IL_00ce: ldarg.3 + IL_00cf: callvirt instance string [mscorlib]System.Object::ToString() + IL_00d4: ldc.i4.0 + IL_00d5: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_00da: stloc.0 + .line 289,289 : 25,75 '' + IL_00db: ldloca.s dbSetting + IL_00dd: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00e2: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_00e7: ldloca.s valueHandle + IL_00e9: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_00ee: stfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + .line 290,290 : 25,31 '' + IL_00f3: br IL_017b + + .line 293,293 : 25,107 '' + IL_00f8: ldarg.3 + IL_00f9: callvirt instance string [mscorlib]System.Object::ToString() + IL_00fe: ldc.i4.1 + IL_00ff: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0104: stloc.0 + .line 294,294 : 25,75 '' + IL_0105: ldloca.s dbSetting + IL_0107: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_010c: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0111: ldloca.s valueHandle + IL_0113: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0118: stfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + .line 295,295 : 25,31 '' + IL_011d: br.s IL_017b + + .line 298,298 : 25,81 '' + IL_011f: ldloca.s dbSetting + IL_0121: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0126: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_012b: ldarg.3 + IL_012c: call uint8 [mscorlib]System.Convert::ToByte(object) + IL_0131: stfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Byte + .line 299,299 : 25,31 '' + IL_0136: br.s IL_017b + + .line 301,301 : 25,83 '' + IL_0138: ldloca.s dbSetting + IL_013a: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_013f: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_0144: ldarg.3 + IL_0145: call uint16 [mscorlib]System.Convert::ToUInt16(object) + IL_014a: stfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Word + .line 302,302 : 25,31 '' + IL_014f: br.s IL_017b + + .line 304,304 : 25,84 '' + IL_0151: ldloca.s dbSetting + IL_0153: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0158: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_015d: ldarg.3 + IL_015e: call uint32 [mscorlib]System.Convert::ToUInt32(object) + IL_0163: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::DWord + .line 305,305 : 25,31 '' + IL_0168: br.s IL_017b + + .line 307,307 : 25,61 '' + IL_016a: newobj instance void [mscorlib]System.NotImplementedException::.ctor() + IL_016f: throw + + .line 321,321 : 25,73 '' + IL_0170: ldstr "saveAs" + IL_0175: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_017a: throw + + .line 324,324 : 17,144 '' + IL_017b: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0180: ldstr "DB/Contact/WriteSetting" + IL_0185: ldarg.0 + IL_0186: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_018b: stloc.s CS$0$0003 + IL_018d: ldloca.s CS$0$0003 + IL_018f: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0194: ldloca.s dbSetting + IL_0196: conv.u + IL_0197: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_019c: ldc.i4.0 + IL_019d: ceq + IL_019f: stloc.s result + .line 325,325 : 17,38 '' + IL_01a1: ldloc.s result + IL_01a3: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_01a8: nop + .line 327,327 : 17,31 '' + IL_01a9: ldloc.s result + IL_01ab: stloc.s CS$1$0000 + IL_01ad: leave.s IL_0205 + + .line 329,329 : 13,39 '' + } // end .try + catch [mscorlib]System.FormatException + { + IL_01af: stloc.s fE + .line 330,330 : 13,14 '' + IL_01b1: nop + .line 331,331 : 17,68 '' + IL_01b2: ldstr "value" + IL_01b7: ldloc.s fE + IL_01b9: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string, + class [mscorlib]System.Exception) + IL_01be: throw + + .line 333,333 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_01bf: stloc.s e + .line 334,334 : 13,14 '' + IL_01c1: nop + .line 335,335 : 17,107 '' + IL_01c2: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_01c7: ldloc.s e + IL_01c9: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_01ce: throw + + .line 338,338 : 13,14 '' + } // end handler + } // end .try + finally + { + IL_01cf: nop + .line 339,339 : 17,36 '' + IL_01d0: ldloca.s valueHandle + IL_01d2: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_01d7: nop + .line 340,340 : 17,35 '' + IL_01d8: ldloca.s nameHandle + IL_01da: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_01df: nop + .line 341,341 : 17,41 '' + IL_01e0: ldloca.s moduleNameHandle + IL_01e2: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_01e7: nop + .line 343,343 : 17,44 '' + IL_01e8: ldloc.3 + IL_01e9: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_01ee: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_01f3: ldc.i4.0 + IL_01f4: ceq + IL_01f6: stloc.s CS$4$0001 + IL_01f8: ldloc.s CS$4$0001 + IL_01fa: brtrue.s IL_0203 + + .line 344,344 : 21,50 '' + IL_01fc: ldloc.3 + IL_01fd: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_0202: nop + .line 345,345 : 13,14 '' + IL_0203: nop + IL_0204: endfinally + } // end handler + IL_0205: nop + .line 346,346 : 9,10 '' + IL_0206: ldloc.s CS$1$0000 + IL_0208: ret + } // end of method ContactInfo::WriteSetting + + .method public hidebysig instance object + ReadSetting(string name, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 19 (0x13) + .maxstack 3 + .locals init ([0] object CS$1$0000) + .line 353,353 : 9,10 '' + IL_0000: nop + .line 354,354 : 13,61 '' + IL_0001: ldarg.0 + IL_0002: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0007: ldarg.1 + IL_0008: ldarg.2 + IL_0009: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(native int, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 355,355 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method ContactInfo::ReadSetting + + .method public hidebysig static object + ReadSetting(native int contactHandle, + string name, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 56 (0x38) + .maxstack 4 + .locals init ([0] native int pOwnerName, + [1] object CS$1$0000, + [2] bool CS$4$0001) + .line 358,358 : 9,10 '' + IL_0000: nop + .line 359,359 : 13,65 '' + IL_0001: ldarg.0 + IL_0002: call native int Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetModuleNamePtr(native int) + IL_0007: stloc.0 + .line 361,361 : 13,43 '' + IL_0008: ldloc.0 + IL_0009: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000e: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0013: ldc.i4.0 + IL_0014: ceq + IL_0016: stloc.2 + IL_0017: ldloc.2 + IL_0018: brtrue.s IL_0025 + + .line 362,362 : 17,94 '' + IL_001a: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_OwnerUnknown() + IL_001f: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0024: throw + + .line 364,364 : 13,98 '' + IL_0025: ldarg.0 + IL_0026: ldarg.1 + IL_0027: ldloc.0 + IL_0028: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringAnsi(native int) + IL_002d: ldarg.2 + IL_002e: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(native int, + string, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0033: stloc.1 + IL_0034: br.s IL_0036 + + .line 365,365 : 9,10 '' + IL_0036: ldloc.1 + IL_0037: ret + } // end of method ContactInfo::ReadSetting + + .method public hidebysig instance object + ReadSetting(string name, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 20 (0x14) + .maxstack 4 + .locals init ([0] object CS$1$0000) + .line 368,368 : 9,10 '' + IL_0000: nop + .line 369,369 : 13,68 '' + IL_0001: ldarg.0 + IL_0002: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0007: ldarg.1 + IL_0008: ldarg.2 + IL_0009: ldarg.3 + IL_000a: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(native int, + string, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_000f: stloc.0 + IL_0010: br.s IL_0012 + + .line 370,370 : 9,10 '' + IL_0012: ldloc.0 + IL_0013: ret + } // end of method ContactInfo::ReadSetting + + .method public hidebysig static object + ReadSetting(native int contactHandle, + string name, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 42 (0x2a) + .maxstack 4 + .locals init ([0] object CS$1$0000, + [1] bool CS$4$0001) + .line 373,373 : 9,10 '' + IL_0000: nop + .line 374,374 : 13,31 '' + IL_0001: ldarg.2 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 375,375 : 17,58 '' + IL_000c: ldstr "owner" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 377,377 : 13,73 '' + IL_0017: ldarg.0 + IL_0018: ldarg.1 + IL_0019: ldarg.2 + IL_001a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + IL_001f: ldarg.3 + IL_0020: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(native int, + string, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0025: stloc.0 + IL_0026: br.s IL_0028 + + .line 378,378 : 9,10 '' + IL_0028: ldloc.0 + IL_0029: ret + } // end of method ContactInfo::ReadSetting + + .method public hidebysig instance object + ReadSetting(string name, + string owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 20 (0x14) + .maxstack 4 + .locals init ([0] object CS$1$0000) + .line 381,381 : 9,10 '' + IL_0000: nop + .line 382,382 : 13,68 '' + IL_0001: ldarg.0 + IL_0002: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0007: ldarg.1 + IL_0008: ldarg.2 + IL_0009: ldarg.3 + IL_000a: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(native int, + string, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_000f: stloc.0 + IL_0010: br.s IL_0012 + + .line 383,383 : 9,10 '' + IL_0012: ldloc.0 + IL_0013: ret + } // end of method ContactInfo::ReadSetting + + .method public hidebysig static object + ReadSetting(native int contactHandle, + string name, + string owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 185 (0xb9) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING dbSetting, + [2] valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT dbVariant, + [3] class [mscorlib]System.Exception e, + [4] object CS$1$0000, + [5] bool CS$4$0001) + .line 386,386 : 9,10 '' + IL_0000: nop + .line 387,387 : 13,44 '' + IL_0001: ldarg.1 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.s CS$4$0001 + IL_000c: ldloc.s CS$4$0001 + IL_000e: brtrue.s IL_001b + + .line 388,388 : 17,57 '' + IL_0010: ldstr "name" + IL_0015: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001a: throw + + .line 390,390 : 13,70 '' + IL_001b: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer() + IL_0020: stloc.0 + .line 393,393 : 13,14 '' + .try + { + .try + { + IL_0021: nop + .line 394,394 : 17,75 '' + IL_0022: ldloca.s dbSetting + IL_0024: initobj Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING + .line 395,395 : 17,39 '' + IL_002a: ldloca.s dbSetting + IL_002c: ldarg.1 + IL_002d: stfld string Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING::Name + .line 397,397 : 17,55 '' + IL_0032: ldloca.s dbVariant + IL_0034: initobj Virtuoso.Miranda.Plugins.Native.DBVARIANT + .line 398,398 : 17,47 '' + IL_003a: ldloca.s dbVariant + IL_003c: ldarg.3 + IL_003d: stfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + .line 400,400 : 17,31 '' + IL_0042: ldloc.0 + IL_0043: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + IL_0048: nop + .line 402,402 : 17,56 '' + IL_0049: ldarg.3 + IL_004a: ldc.i4 0xfe + IL_004f: ceq + IL_0051: stloc.s CS$4$0001 + IL_0053: ldloc.s CS$4$0001 + IL_0055: brtrue.s IL_0080 + + .line 403,403 : 17,18 '' + IL_0057: nop + .line 404,404 : 21,60 '' + IL_0058: ldloca.s dbVariant + IL_005a: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_005f: ldloc.0 + IL_0060: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0065: stfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + .line 405,405 : 21,73 '' + IL_006a: ldloca.s dbVariant + IL_006c: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0071: ldloc.0 + IL_0072: callvirt instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_0077: conv.u2 + IL_0078: stfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextBufferSize + .line 406,406 : 17,18 '' + IL_007d: nop + IL_007e: br.s IL_0087 + + .line 408,408 : 17,18 '' + IL_0080: nop + .line 409,409 : 21,57 '' + IL_0081: newobj instance void [mscorlib]System.NotImplementedException::.ctor() + IL_0086: throw + + .line 413,413 : 17,96 '' + IL_0087: ldarg.0 + IL_0088: ldarg.2 + IL_0089: ldloca.s dbSetting + IL_008b: ldloca.s dbVariant + IL_008d: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSettingInternal(native int, + string, + valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING&, + valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT&) + IL_0092: stloc.s CS$1$0000 + IL_0094: leave.s IL_00b5 + + .line 416,416 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0096: stloc.3 + .line 417,417 : 13,14 '' + IL_0097: nop + .line 418,418 : 17,107 '' + IL_0098: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_009d: ldloc.3 + IL_009e: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_00a3: throw + + .line 421,421 : 13,14 '' + } // end handler + } // end .try + finally + { + IL_00a4: nop + .line 422,422 : 17,33 '' + IL_00a5: ldloc.0 + IL_00a6: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + IL_00ab: nop + .line 423,423 : 17,57 '' + IL_00ac: ldloc.0 + IL_00ad: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_00b2: nop + .line 424,424 : 13,14 '' + IL_00b3: nop + IL_00b4: endfinally + } // end handler + IL_00b5: nop + .line 425,425 : 9,10 '' + IL_00b6: ldloc.s CS$1$0000 + IL_00b8: ret + } // end of method ContactInfo::ReadSetting + + .method private hidebysig static object + ReadSettingInternal(native int contactHandle, + string owner, + valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING& setting, + valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT& 'variant') cil managed + { + // Code size 144 (0x90) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 dbSettingHandle, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 dbVariantHandle, + [2] int32 result, + [3] object CS$1$0000, + [4] bool CS$4$0001) + .line 428,428 : 9,10 '' + IL_0000: nop + .line 429,429 : 13,123 '' + IL_0001: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0006: stloc.0 + .line 430,430 : 13,103 '' + IL_0007: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_000c: stloc.1 + .line 433,433 : 13,14 '' + .try + { + IL_000d: nop + .line 434,434 : 17,85 '' + IL_000e: ldarg.3 + IL_000f: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0014: stloc.1 + .line 436,436 : 17,40 '' + IL_0015: ldarg.2 + IL_0016: ldarg.1 + IL_0017: stfld string Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING::Module + .line 437,437 : 17,63 '' + IL_001c: ldarg.2 + IL_001d: ldloca.s dbVariantHandle + IL_001f: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0024: stfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING::DbVariantPtr + .line 439,439 : 17,95 '' + IL_0029: ldarg.2 + IL_002a: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_002f: stloc.0 + .line 441,441 : 17,136 '' + IL_0030: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0035: ldstr "DB/Contact/GetSettingStatic" + IL_003a: ldarg.0 + IL_003b: ldloca.s dbSettingHandle + IL_003d: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0042: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0047: stloc.2 + .line 442,442 : 17,74 '' + IL_0048: ldloc.2 + IL_0049: ldc.i4.2 + IL_004a: ceq + IL_004c: ldc.i4.0 + IL_004d: ceq + IL_004f: ldstr "Deleted setting encountered" + IL_0054: call void [System]System.Diagnostics.Debug::Assert(bool, + string) + IL_0059: nop + .line 444,444 : 17,33 '' + IL_005a: ldloc.2 + IL_005b: ldc.i4.0 + IL_005c: ceq + IL_005e: stloc.s CS$4$0001 + IL_0060: ldloc.s CS$4$0001 + IL_0062: brtrue.s IL_0068 + + .line 445,445 : 21,33 '' + IL_0064: ldnull + IL_0065: stloc.3 + IL_0066: leave.s IL_008d + + .line 447,447 : 17,58 '' + IL_0068: ldloca.s dbVariantHandle + IL_006a: ldarg.3 + IL_006b: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalBack(!0&) + IL_0070: nop + .line 448,448 : 17,64 '' + IL_0071: ldarg.3 + IL_0072: call object Virtuoso.Miranda.Plugins.Infrastructure.Translate::ValueFromVariant(valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT&) + IL_0077: stloc.3 + IL_0078: leave.s IL_008d + + .line 451,451 : 13,14 '' + } // end .try + finally + { + IL_007a: nop + .line 452,452 : 17,40 '' + IL_007b: ldloca.s dbVariantHandle + IL_007d: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_0082: nop + .line 453,453 : 17,40 '' + IL_0083: ldloca.s dbSettingHandle + IL_0085: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_008a: nop + .line 454,454 : 13,14 '' + IL_008b: nop + IL_008c: endfinally + } // end handler + IL_008d: nop + .line 455,455 : 9,10 '' + IL_008e: ldloc.3 + IL_008f: ret + } // end of method ContactInfo::ReadSettingInternal + + .method public hidebysig instance bool + DeleteSetting(string name, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner) cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 462,462 : 9,10 '' + IL_0000: nop + .line 463,463 : 13,31 '' + IL_0001: ldarg.2 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 464,464 : 17,58 '' + IL_000c: ldstr "owner" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 466,466 : 13,52 '' + IL_0017: ldarg.0 + IL_0018: ldarg.1 + IL_0019: ldarg.2 + IL_001a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + IL_001f: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::DeleteSetting(string, + string) + IL_0024: stloc.0 + IL_0025: br.s IL_0027 + + .line 467,467 : 9,10 '' + IL_0027: ldloc.0 + IL_0028: ret + } // end of method ContactInfo::DeleteSetting + + .method public hidebysig instance bool + DeleteSetting(string name, + string owner) cil managed + { + // Code size 132 (0x84) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING dbGetSetting, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 dbSettingHandle, + [2] bool CS$1$0000, + [3] bool CS$4$0001) + .line 470,470 : 9,10 '' + IL_0000: nop + .line 471,471 : 13,44 '' + IL_0001: ldarg.1 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.3 + IL_000b: ldloc.3 + IL_000c: brtrue.s IL_0019 + + .line 472,472 : 17,57 '' + IL_000e: ldstr "name" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 474,474 : 13,45 '' + IL_0019: ldarg.2 + IL_001a: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_001f: ldc.i4.0 + IL_0020: ceq + IL_0022: stloc.3 + IL_0023: ldloc.3 + IL_0024: brtrue.s IL_0031 + + .line 475,475 : 17,58 '' + IL_0026: ldstr "owner" + IL_002b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0030: throw + + .line 477,477 : 13,74 '' + IL_0031: ldloca.s dbGetSetting + IL_0033: initobj Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING + .line 478,478 : 13,38 '' + IL_0039: ldloca.s dbGetSetting + IL_003b: ldarg.1 + IL_003c: stfld string Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING::Name + .line 479,479 : 13,41 '' + IL_0041: ldloca.s dbGetSetting + IL_0043: ldarg.2 + IL_0044: stfld string Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING::Module + .line 481,481 : 13,139 '' + IL_0049: ldloca.s dbSettingHandle + IL_004b: ldloca.s dbGetSetting + IL_004d: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0052: nop + .line 484,484 : 13,14 '' + .try + { + IL_0053: nop + .line 485,485 : 17,132 '' + IL_0054: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0059: ldstr "DB/Contact/DeleteSetting" + IL_005e: ldarg.0 + IL_005f: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0064: ldloca.s dbSettingHandle + IL_0066: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_006b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0070: ldc.i4.0 + IL_0071: ceq + IL_0073: stloc.2 + IL_0074: leave.s IL_0081 + + .line 488,488 : 13,14 '' + } // end .try + finally + { + IL_0076: nop + .line 489,489 : 17,40 '' + IL_0077: ldloca.s dbSettingHandle + IL_0079: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_007e: nop + .line 490,490 : 13,14 '' + IL_007f: nop + IL_0080: endfinally + } // end handler + IL_0081: nop + .line 491,491 : 9,10 '' + IL_0082: ldloc.2 + IL_0083: ret + } // end of method ContactInfo::DeleteSetting + + .method public hidebysig static !!TId[] + GetUniqueIDs(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo[] contacts) cil managed + { + .param [1] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 68 (0x44) + .maxstack 3 + .locals init ([0] !!TId[] CS$1$0000, + [1] bool CS$4$0001) + .line 498,498 : 9,10 '' + IL_0000: nop + .line 499,499 : 13,34 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 500,500 : 17,61 '' + IL_000c: ldstr "contacts" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 502,502 : 13,38 '' + IL_0017: ldarg.0 + IL_0018: ldlen + IL_0019: conv.i4 + IL_001a: ldc.i4.0 + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.1 + IL_0021: ldloc.1 + IL_0022: brtrue.s IL_002d + + .line 503,503 : 17,35 '' + IL_0024: ldc.i4.0 + IL_0025: newarr !!TId + IL_002a: stloc.0 + IL_002b: br.s IL_0042 + + .line 505,511 : 13,16 '' + IL_002d: ldarg.0 + IL_002e: ldnull + IL_002f: ldftn !!0 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'b__0'(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0035: newobj instance void class [mscorlib]System.Converter`2::.ctor(object, + native int) + IL_003a: call !!1[] [mscorlib]System.Array::ConvertAll(!!0[], + class [mscorlib]System.Converter`2) + IL_003f: stloc.0 + IL_0040: br.s IL_0042 + + .line 512,512 : 9,10 '' + IL_0042: ldloc.0 + IL_0043: ret + } // end of method ContactInfo::GetUniqueIDs + + .method public hidebysig static string[] + GetDisplayNames(string[] uuids) cil managed + { + .param [1] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 87 (0x57) + .maxstack 3 + .locals init ([0] string[] CS$1$0000, + [1] bool CS$4$0001) + .line 515,515 : 9,10 '' + IL_0000: nop + .line 516,516 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 517,517 : 17,58 '' + IL_000c: ldstr "uuids" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 519,519 : 13,35 '' + IL_0017: ldarg.0 + IL_0018: ldlen + IL_0019: conv.i4 + IL_001a: ldc.i4.0 + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.1 + IL_0021: ldloc.1 + IL_0022: brtrue.s IL_002d + + .line 520,520 : 17,38 '' + IL_0024: ldc.i4.0 + IL_0025: newarr [mscorlib]System.String + IL_002a: stloc.0 + IL_002b: br.s IL_0055 + + .line 522,533 : 13,16 '' + IL_002d: ldarg.0 + IL_002e: ldsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_0033: brtrue.s IL_0048 + + IL_0035: ldnull + IL_0036: ldftn string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'b__1'(string) + IL_003c: newobj instance void class [mscorlib]System.Converter`2::.ctor(object, + native int) + IL_0041: stsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_0046: br.s IL_0048 + + IL_0048: ldsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_004d: call !!1[] [mscorlib]System.Array::ConvertAll(!!0[], + class [mscorlib]System.Converter`2) + IL_0052: stloc.0 + IL_0053: br.s IL_0055 + + .line 534,534 : 9,10 '' + IL_0055: ldloc.0 + IL_0056: ret + } // end of method ContactInfo::GetDisplayNames + + .method private hidebysig static native int + GetModuleNamePtr(native int contactHandle) cil managed + { + // Code size 32 (0x20) + .maxstack 4 + .locals init ([0] native int CS$1$0000) + .line 541,541 : 9,10 '' + IL_0000: nop + .line 542,542 : 13,121 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "Proto/GetContactBaseProto" + IL_000b: ldarg.0 + IL_000c: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0011: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0016: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_001b: stloc.0 + IL_001c: br.s IL_001e + + .line 543,543 : 9,10 '' + IL_001e: ldloc.0 + IL_001f: ret + } // end of method ContactInfo::GetModuleNamePtr + + .method public hidebysig static string + GetDisplayName(native int contactHandle) cil managed + { + // Code size 66 (0x42) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo/ContactDisplayNameOptions options, + [1] native int pName, + [2] string CS$1$0000, + [3] bool CS$4$0001) + .line 546,546 : 9,10 '' + IL_0000: nop + .line 547,547 : 13,83 '' + IL_0001: ldc.i4.2 + IL_0002: stloc.0 + .line 549,549 : 13,135 '' + IL_0003: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0008: ldstr "CList/GetContactDisplayName" + IL_000d: ldarg.0 + IL_000e: ldloc.0 + IL_000f: conv.i8 + IL_0010: call native int [mscorlib]System.IntPtr::op_Explicit(int64) + IL_0015: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_001a: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_001f: stloc.1 + .line 551,551 : 13,38 '' + IL_0020: ldloc.1 + IL_0021: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0026: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_002b: ldc.i4.0 + IL_002c: ceq + IL_002e: stloc.3 + IL_002f: ldloc.3 + IL_0030: brtrue.s IL_0036 + + .line 552,552 : 17,29 '' + IL_0032: ldnull + IL_0033: stloc.2 + IL_0034: br.s IL_0040 + + .line 554,554 : 17,74 '' + IL_0036: ldloc.1 + IL_0037: ldc.i4.1 + IL_0038: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_003d: stloc.2 + IL_003e: br.s IL_0040 + + .line 555,555 : 9,10 '' + IL_0040: ldloc.2 + IL_0041: ret + } // end of method ContactInfo::GetDisplayName + + .method public hidebysig static bool GetUniqueID(native int contactHandle, + [out] object& uuid, + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType& uuidType) cil managed + { + // Code size 16 (0x10) + .maxstack 4 + .locals init ([0] bool CS$1$0000) + .line 558,558 : 9,10 '' + IL_0000: nop + .line 559,559 : 13,101 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.s 15 + IL_0004: ldarg.1 + IL_0005: ldarg.2 + IL_0006: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetProperty(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + object&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType&) + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + .line 560,560 : 9,10 '' + IL_000e: ldloc.0 + IL_000f: ret + } // end of method ContactInfo::GetUniqueID + + .method public hidebysig static bool GetProperty(native int contactHandle, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty 'property', + [out] object& 'value', + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType& valueType) cil managed + { + // Code size 229 (0xe5) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.CONTACTINFO contactInfo, + [1] int32 result, + [2] bool CS$1$0000, + [3] bool CS$4$0001, + [4] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType CS$0$0002, + [5] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType CS$4$0003) + .line 563,563 : 9,10 '' + IL_0000: nop + .line 564,564 : 13,103 '' + IL_0001: ldloca.s contactInfo + IL_0003: ldarg.0 + IL_0004: ldarg.0 + IL_0005: call native int Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetModuleNamePtr(native int) + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Native.CONTACTINFO::.ctor(native int, + native int) + IL_000f: stobj Virtuoso.Miranda.Plugins.Native.CONTACTINFO + .line 565,565 : 13,96 '' + IL_0014: ldloca.s contactInfo + IL_0016: ldarg.1 + IL_0017: ldc.i4 0x80 + IL_001c: or + IL_001d: conv.u1 + IL_001e: stfld uint8 Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Flag + .line 568,568 : 13,14 '' + IL_0023: nop + .line 569,569 : 17,134 '' + IL_0024: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0029: ldstr "Miranda/Contact/GetContactInfo" + IL_002e: ldc.i4.0 + IL_002f: conv.u + IL_0030: ldloca.s contactInfo + IL_0032: conv.u + IL_0033: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0038: stloc.1 + .line 571,571 : 17,33 '' + IL_0039: ldloc.1 + IL_003a: ldc.i4.0 + IL_003b: ceq + IL_003d: stloc.3 + IL_003e: ldloc.3 + IL_003f: brtrue.s IL_004f + + .line 572,572 : 17,18 '' + IL_0041: nop + .line 573,573 : 21,34 '' + IL_0042: ldarg.2 + IL_0043: ldnull + IL_0044: stind.ref + .line 574,574 : 21,65 '' + IL_0045: ldarg.3 + IL_0046: ldc.i4.0 + IL_0047: stind.i4 + .line 576,576 : 21,34 '' + IL_0048: ldc.i4.0 + IL_0049: stloc.2 + IL_004a: br IL_00e3 + + .line 578,578 : 13,14 '' + IL_004f: nop + .line 580,580 : 13,75 '' + IL_0050: ldarg.3 + IL_0051: ldloca.s contactInfo + IL_0053: ldfld uint8 Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Type + IL_0058: dup + IL_0059: stloc.s CS$0$0002 + IL_005b: stind.i4 + IL_005c: ldloc.s CS$0$0002 + IL_005e: stloc.s CS$4$0003 + IL_0060: ldloc.s CS$4$0003 + IL_0062: ldc.i4.1 + IL_0063: sub + IL_0064: switch ( + IL_007b, + IL_00a6, + IL_00c0, + IL_0095) + IL_0079: br.s IL_00d5 + + .line 583,583 : 21,73 '' + IL_007b: ldarg.2 + IL_007c: ldloca.s contactInfo + IL_007e: ldflda native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Value + IL_0083: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_0088: call uint8 [mscorlib]System.Convert::ToByte(int32) + IL_008d: box [mscorlib]System.Byte + IL_0092: stind.ref + .line 584,584 : 21,27 '' + IL_0093: br.s IL_00df + + .line 586,586 : 21,91 '' + IL_0095: ldarg.2 + IL_0096: ldloca.s contactInfo + IL_0098: ldfld native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Value + IL_009d: ldc.i4.1 + IL_009e: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_00a3: stind.ref + .line 587,587 : 21,27 '' + IL_00a4: br.s IL_00df + + .line 589,589 : 21,75 '' + IL_00a6: ldarg.2 + IL_00a7: ldloca.s contactInfo + IL_00a9: ldflda native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Value + IL_00ae: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_00b3: call uint16 [mscorlib]System.Convert::ToUInt16(int32) + IL_00b8: box [mscorlib]System.UInt16 + IL_00bd: stind.ref + .line 590,590 : 21,27 '' + IL_00be: br.s IL_00df + + .line 592,592 : 21,57 '' + IL_00c0: ldarg.2 + IL_00c1: ldloca.s contactInfo + IL_00c3: ldflda native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Value + IL_00c8: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_00cd: box [mscorlib]System.Int32 + IL_00d2: stind.ref + .line 593,593 : 21,27 '' + IL_00d3: br.s IL_00df + + .line 595,595 : 21,34 '' + IL_00d5: ldarg.2 + IL_00d6: ldnull + IL_00d7: stind.ref + .line 596,596 : 21,65 '' + IL_00d8: ldarg.3 + IL_00d9: ldc.i4.0 + IL_00da: stind.i4 + .line 597,597 : 21,34 '' + IL_00db: ldc.i4.0 + IL_00dc: stloc.2 + IL_00dd: br.s IL_00e3 + + .line 600,600 : 13,25 '' + IL_00df: ldc.i4.1 + IL_00e0: stloc.2 + IL_00e1: br.s IL_00e3 + + .line 601,601 : 9,10 '' + IL_00e3: ldloc.2 + IL_00e4: ret + } // end of method ContactInfo::GetProperty + + .method private hidebysig newslot virtual final + instance void System.Runtime.Serialization.ISerializable.GetObjectData(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + .override [mscorlib]System.Runtime.Serialization.ISerializable::GetObjectData + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] native int CS$0$0000) + .line 608,608 : 9,10 '' + IL_0000: nop + .line 609,609 : 13,69 '' + IL_0001: ldarg.1 + IL_0002: ldstr "MirandaHandle" + IL_0007: ldarg.0 + IL_0008: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_000d: stloc.0 + IL_000e: ldloca.s CS$0$0000 + IL_0010: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0015: callvirt instance void [mscorlib]System.Runtime.Serialization.SerializationInfo::AddValue(string, + int64) + IL_001a: nop + .line 610,610 : 9,10 '' + IL_001b: ret + } // end of method ContactInfo::System.Runtime.Serialization.ISerializable.GetObjectData + + .method public hidebysig instance !!TId + UniqueIdAs() cil managed + { + // Code size 49 (0x31) + .maxstack 2 + .locals init ([0] object uuid, + [1] !!TId CS$1$0000, + [2] !!TId CS$0$0001) + .line 615,615 : 9,10 '' + IL_0000: nop + .line 616,616 : 13,36 '' + IL_0001: ldarg.0 + IL_0002: call instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_UniqueID() + IL_0007: stloc.0 + .line 617,617 : 13,93 '' + IL_0008: ldloc.0 + IL_0009: brfalse.s IL_0022 + + IL_000b: ldloc.0 + IL_000c: ldtoken !!TId + IL_0011: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0016: call object [mscorlib]System.Convert::ChangeType(object, + class [mscorlib]System.Type) + IL_001b: unbox.any !!TId + IL_0020: br.s IL_002b + + IL_0022: ldloca.s CS$0$0001 + IL_0024: initobj !!TId + IL_002a: ldloc.2 + IL_002b: nop + IL_002c: stloc.1 + IL_002d: br.s IL_002f + + .line 618,618 : 9,10 '' + IL_002f: ldloc.1 + IL_0030: ret + } // end of method ContactInfo::UniqueIdAs + + .method public hidebysig virtual instance string + ToString() cil managed + { + // Code size 60 (0x3c) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 621,621 : 9,10 '' + IL_0000: nop + .line 622,623 : 13,90 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_0006: ldarg.0 + IL_0007: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule() + IL_000c: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_0011: brfalse.s IL_001b + + IL_0013: ldarg.0 + IL_0014: call instance string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_DisplayName() + IL_0019: br.s IL_0036 + + IL_001b: ldstr "{0} ({1})" + IL_0020: ldarg.0 + IL_0021: call instance string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_DisplayName() + IL_0026: ldarg.0 + IL_0027: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule() + IL_002c: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_0031: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0036: nop + IL_0037: stloc.0 + IL_0038: br.s IL_003a + + .line 624,624 : 9,10 '' + IL_003a: ldloc.0 + IL_003b: ret + } // end of method ContactInfo::ToString + + .method public hidebysig specialname static + bool op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo first, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo second) cil managed + { + // Code size 49 (0x31) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 627,627 : 9,10 '' + IL_0000: nop + .line 628,628 : 13,55 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.1 + IL_000c: ldloc.1 + IL_000d: brtrue.s IL_0013 + + .line 629,629 : 17,29 '' + IL_000f: ldc.i4.1 + IL_0010: stloc.0 + IL_0011: br.s IL_002f + + .line 630,630 : 18,58 '' + IL_0013: ldarg.0 + IL_0014: ldnull + IL_0015: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_001a: ldc.i4.0 + IL_001b: ceq + IL_001d: stloc.1 + IL_001e: ldloc.1 + IL_001f: brtrue.s IL_0025 + + .line 631,631 : 17,30 '' + IL_0021: ldc.i4.0 + IL_0022: stloc.0 + IL_0023: br.s IL_002f + + .line 633,633 : 17,45 '' + IL_0025: ldarg.0 + IL_0026: ldarg.1 + IL_0027: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_002c: stloc.0 + IL_002d: br.s IL_002f + + .line 634,634 : 9,10 '' + IL_002f: ldloc.0 + IL_0030: ret + } // end of method ContactInfo::op_Equality + + .method public hidebysig specialname static + bool op_Inequality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo first, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo second) cil managed + { + // Code size 16 (0x10) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 637,637 : 9,10 '' + IL_0000: nop + .line 638,638 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + .line 639,639 : 9,10 '' + IL_000e: ldloc.0 + IL_000f: ret + } // end of method ContactInfo::op_Inequality + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 45 (0x2d) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo other, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 642,642 : 9,10 '' + IL_0000: nop + .line 643,643 : 13,52 '' + IL_0001: ldarg.1 + IL_0002: isinst Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + IL_0007: stloc.0 + .line 645,645 : 13,53 '' + IL_0008: ldloc.0 + IL_0009: ldnull + IL_000a: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_000f: ldc.i4.0 + IL_0010: ceq + IL_0012: stloc.2 + IL_0013: ldloc.2 + IL_0014: brtrue.s IL_001a + + .line 646,646 : 17,30 '' + IL_0016: ldc.i4.0 + IL_0017: stloc.1 + IL_0018: br.s IL_002b + + .line 648,648 : 17,61 '' + IL_001a: ldarg.0 + IL_001b: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0020: ldloc.0 + IL_0021: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0026: ceq + IL_0028: stloc.1 + IL_0029: br.s IL_002b + + .line 649,649 : 9,10 '' + IL_002b: ldloc.1 + IL_002c: ret + } // end of method ContactInfo::Equals + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 20 (0x14) + .maxstack 1 + .locals init ([0] int32 CS$1$0000, + [1] native int CS$0$0001) + .line 652,652 : 9,10 '' + IL_0000: nop + .line 653,653 : 13,44 '' + IL_0001: ldarg.0 + IL_0002: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0007: stloc.1 + IL_0008: ldloca.s CS$0$0001 + IL_000a: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_000f: stloc.0 + IL_0010: br.s IL_0012 + + .line 654,654 : 9,10 '' + IL_0012: ldloc.0 + IL_0013: ret + } // end of method ContactInfo::GetHashCode + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + CreateContact() cil managed + { + // Code size 85 (0x55) + .maxstack 3 + .locals init ([0] native int hContact, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000, + [2] bool CS$4$0001) + .line 657,657 : 9,10 '' + IL_0000: nop + .line 658,658 : 13,93 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "DB/Contact/Add" + IL_000b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_0010: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0015: stloc.0 + .line 660,660 : 13,41 '' + IL_0016: ldloc.0 + IL_0017: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_001c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0021: ldc.i4.0 + IL_0022: ceq + IL_0024: stloc.2 + IL_0025: ldloc.2 + IL_0026: brtrue.s IL_004a + + .line 661,661 : 17,169 '' + IL_0028: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_002d: ldstr "DB/Contact/Add" + IL_0032: ldloca.s hContact + IL_0034: constrained. [mscorlib]System.IntPtr + IL_003a: callvirt instance string [mscorlib]System.Object::ToString() + IL_003f: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0044: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0049: throw + + .line 663,663 : 13,53 '' + IL_004a: ldloc.0 + IL_004b: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_0050: stloc.1 + IL_0051: br.s IL_0053 + + .line 664,664 : 9,10 '' + IL_0053: ldloc.1 + IL_0054: ret + } // end of method ContactInfo::CreateContact + + .method public hidebysig instance bool + Delete() cil managed + { + // Code size 54 (0x36) + .maxstack 5 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 667,667 : 9,10 '' + IL_0000: nop + .line 668,668 : 13,24 '' + IL_0001: ldarg.0 + IL_0002: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_IsSelf() + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.1 + IL_000b: ldloc.1 + IL_000c: brtrue.s IL_0014 + + .line 669,669 : 17,55 '' + IL_000e: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0013: throw + + .line 671,671 : 13,112 '' + IL_0014: ldc.i4.0 + IL_0015: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_001a: ldstr "DB/Contact/Delete" + IL_001f: ldarg.0 + IL_0020: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0025: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002a: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_002f: ceq + IL_0031: stloc.0 + IL_0032: br.s IL_0034 + + .line 672,672 : 9,10 '' + IL_0034: ldloc.0 + IL_0035: ret + } // end of method ContactInfo::Delete + + .method public hidebysig instance bool + GetProperty(valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty 'property', + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding stringEncoding) cil managed + { + // Code size 30 (0x1e) + .maxstack 4 + .locals init ([0] bool CS$1$0000) + .line 675,675 : 9,10 '' + IL_0000: nop + .line 676,676 : 13,83 '' + IL_0001: ldarg.0 + IL_0002: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0007: ldarg.1 + IL_0008: ldarg.0 + IL_0009: ldflda object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'value' + IL_000e: ldarg.0 + IL_000f: ldflda valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::valueType + IL_0014: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetProperty(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + object&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType&) + IL_0019: stloc.0 + IL_001a: br.s IL_001c + + .line 677,677 : 9,10 '' + IL_001c: ldloc.0 + IL_001d: ret + } // end of method ContactInfo::GetProperty + + .method public hidebysig instance int32 + CallContactService(string serviceName) cil managed + { + // Code size 23 (0x17) + .maxstack 4 + .locals init ([0] int32 CS$1$0000) + .line 680,680 : 9,10 '' + IL_0000: nop + .line 681,681 : 13,79 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0008: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000d: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::CallContactService(string, + native uint, + native int) + IL_0012: stloc.0 + IL_0013: br.s IL_0015 + + .line 682,682 : 9,10 '' + IL_0015: ldloc.0 + IL_0016: ret + } // end of method ContactInfo::CallContactService + + .method public hidebysig instance int32 + CallContactService(string serviceName, + native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 92 (0x5c) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.CCSDATA ccsData, + [1] int32 CS$1$0000, + [2] bool CS$4$0001) + .line 686,686 : 9,10 '' + IL_0000: nop + .line 687,687 : 13,37 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 688,688 : 17,64 '' + IL_000c: ldstr "serviceName" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 690,690 : 13,62 '' + IL_0017: ldloca.s ccsData + IL_0019: ldarg.0 + IL_001a: ldarg.1 + IL_001b: newobj instance void Virtuoso.Miranda.Plugins.Native.CCSDATA::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + string) + IL_0020: stobj Virtuoso.Miranda.Plugins.Native.CCSDATA + .line 691,691 : 13,37 '' + IL_0025: ldloca.s ccsData + IL_0027: ldarg.2 + IL_0028: stfld native uint Virtuoso.Miranda.Plugins.Native.CCSDATA::WParam + .line 692,692 : 13,37 '' + IL_002d: ldloca.s ccsData + IL_002f: ldarg.3 + IL_0030: stfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::LParam + .line 695,695 : 13,14 '' + .try + { + IL_0035: nop + .line 697,697 : 17,18 '' + IL_0036: nop + .line 698,698 : 21,130 '' + IL_0037: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_003c: ldstr "Proto/CallContactService" + IL_0041: ldc.i4.0 + IL_0042: conv.u + IL_0043: ldloca.s ccsData + IL_0045: conv.u + IL_0046: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_004b: stloc.1 + IL_004c: leave.s IL_0059 + + .line 702,702 : 13,14 '' + } // end .try + finally + { + IL_004e: nop + .line 703,703 : 17,32 '' + IL_004f: ldloca.s ccsData + IL_0051: call instance void Virtuoso.Miranda.Plugins.Native.CCSDATA::Free() + IL_0056: nop + .line 704,704 : 13,14 '' + IL_0057: nop + IL_0058: endfinally + } // end handler + IL_0059: nop + .line 705,705 : 9,10 '' + IL_005a: ldloc.1 + IL_005b: ret + } // end of method ContactInfo::CallContactService + + .method public hidebysig instance void + SendMessage(string message) cil managed + { + // Code size 78 (0x4e) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle nativeHandle, + [1] bool CS$4$0000) + .line 708,708 : 9,10 '' + IL_0000: nop + .line 709,709 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 710,710 : 17,60 '' + IL_000c: ldstr "message" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 712,712 : 13,78 '' + IL_0017: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_001c: stloc.0 + .line 715,715 : 13,14 '' + .try + { + IL_001d: nop + .line 716,716 : 17,88 '' + IL_001e: ldarg.1 + IL_001f: ldc.i4.0 + IL_0020: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0025: stloc.0 + .line 717,717 : 17,99 '' + IL_0026: ldarg.0 + IL_0027: ldstr "/SendMsg" + IL_002c: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0031: ldloca.s nativeHandle + IL_0033: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0038: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::CallContactService(string, + native uint, + native int) + IL_003d: pop + .line 718,718 : 13,14 '' + IL_003e: nop + IL_003f: leave.s IL_004c + + .line 720,720 : 13,14 '' + } // end .try + finally + { + IL_0041: nop + .line 721,721 : 17,37 '' + IL_0042: ldloca.s nativeHandle + IL_0044: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_0049: nop + .line 722,722 : 13,14 '' + IL_004a: nop + IL_004b: endfinally + } // end handler + IL_004c: nop + .line 723,723 : 9,10 '' + IL_004d: ret + } // end of method ContactInfo::SendMessage + + .method public hidebysig instance void + OpenMessageWindow() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 726,726 : 9,10 '' + IL_0000: nop + .line 727,727 : 13,37 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::OpenMessageWindow(string) + IL_0008: nop + .line 728,728 : 9,10 '' + IL_0009: ret + } // end of method ContactInfo::OpenMessageWindow + + .method public hidebysig instance void + OpenMessageWindow(string message) cil managed + { + // Code size 144 (0x90) + .maxstack 5 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle messageHandle, + [1] int32 result, + [2] bool CS$4$0000) + .line 731,731 : 9,10 '' + IL_0000: nop + .line 732,732 : 13,79 '' + IL_0001: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_0006: stloc.0 + .line 735,735 : 13,14 '' + .try + { + IL_0007: nop + .line 736,736 : 17,52 '' + IL_0008: ldarg.1 + IL_0009: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000e: stloc.2 + IL_000f: ldloc.2 + IL_0010: brtrue.s IL_001a + + .line 737,737 : 21,93 '' + IL_0012: ldarg.1 + IL_0013: ldc.i4.0 + IL_0014: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0019: stloc.0 + .line 739,739 : 17,58 '' + IL_001a: ldc.i4.0 + IL_001b: stloc.1 + .line 741,741 : 17,123 '' + IL_001c: ldloc.1 + IL_001d: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0022: ldstr "SRMsg/SendCommand" + IL_0027: ldarg.0 + IL_0028: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_002d: ldloca.s messageHandle + IL_002f: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0034: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0039: ceq + IL_003b: stloc.2 + IL_003c: ldloc.2 + IL_003d: brtrue.s IL_0080 + + .line 742,742 : 21,161 '' + IL_003f: ldc.i4.0 + IL_0040: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0045: ldstr "SRMsg/LaunchMessageWindow" + IL_004a: ldarg.0 + IL_004b: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0050: ldloca.s messageHandle + IL_0052: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0057: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_005c: dup + IL_005d: stloc.1 + IL_005e: ceq + IL_0060: stloc.2 + IL_0061: ldloc.2 + IL_0062: brtrue.s IL_0080 + + .line 743,743 : 25,176 '' + IL_0064: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0069: ldstr "SRMsg/SendCommand" + IL_006e: ldloca.s result + IL_0070: call instance string [mscorlib]System.Int32::ToString() + IL_0075: call string [mscorlib]System.String::Format(string, + object, + object) + IL_007a: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_007f: throw + + .line 744,744 : 13,14 '' + IL_0080: nop + IL_0081: leave.s IL_008e + + .line 746,746 : 13,14 '' + } // end .try + finally + { + IL_0083: nop + .line 747,747 : 17,38 '' + IL_0084: ldloca.s messageHandle + IL_0086: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_008b: nop + .line 748,748 : 13,14 '' + IL_008c: nop + IL_008d: endfinally + } // end handler + IL_008e: nop + .line 749,749 : 9,10 '' + IL_008f: ret + } // end of method ContactInfo::OpenMessageWindow + + .method private hidebysig static !!TId + 'b__0'(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 38 (0x26) + .maxstack 2 + .locals init ([0] !!TId CS$1$0000, + [1] bool CS$4$0001, + [2] !!TId CS$0$0002) + .line 506,506 : 13,14 '' + IL_0000: nop + .line 507,507 : 17,37 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Inequality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.1 + IL_000c: ldloc.1 + IL_000d: brtrue.s IL_0018 + + .line 508,508 : 21,54 '' + IL_000f: ldarg.0 + IL_0010: callvirt instance !!0 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::UniqueIdAs() + IL_0015: stloc.0 + IL_0016: br.s IL_0024 + + .line 510,510 : 21,41 '' + IL_0018: ldloca.s CS$0$0002 + IL_001a: initobj !!TId + IL_0020: ldloc.2 + IL_0021: stloc.0 + IL_0022: br.s IL_0024 + + IL_0024: ldloc.0 + IL_0025: ret + } // end of method ContactInfo::'b__0' + + .method private hidebysig static string + 'b__1'(string uuid) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 62 (0x3e) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + [1] string CS$1$0000, + [2] bool CS$4$0001) + .line 523,523 : 13,14 '' + IL_0000: nop + .line 524,524 : 17,34 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0010 + + .line 525,525 : 21,33 '' + IL_000c: ldnull + IL_000d: stloc.1 + IL_000e: br.s IL_003c + + .line 527,527 : 17,96 '' + IL_0010: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0015: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaDatabase() + IL_001a: ldarg.0 + IL_001b: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact(string) + IL_0020: stloc.0 + .line 529,529 : 17,37 '' + IL_0021: ldloc.0 + IL_0022: ldnull + IL_0023: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Inequality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.2 + IL_002c: ldloc.2 + IL_002d: brtrue.s IL_0038 + + .line 530,530 : 21,48 '' + IL_002f: ldloc.0 + IL_0030: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_DisplayName() + IL_0035: stloc.1 + IL_0036: br.s IL_003c + + .line 532,532 : 21,33 '' + IL_0038: ldnull + IL_0039: stloc.1 + IL_003a: br.s IL_003c + + IL_003c: ldloc.1 + IL_003d: ret + } // end of method ContactInfo::'b__1' + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 84,84 : 9,66 '' + IL_0000: newobj instance void [mscorlib]System.Object::.ctor() + IL_0005: stsfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::SyncObject + .line 85,85 : 9,75 '' + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor() + IL_000f: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::meNeutral + IL_0014: ret + } // end of method ContactInfo::.cctor + + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType + PropertyType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_PropertyType() + } // end of property ContactInfo::PropertyType + .property instance object PropertyValue() + { + .get instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_PropertyValue() + } // end of property ContactInfo::PropertyValue + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + OwningModule() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule() + } // end of property ContactInfo::OwningModule + .property instance bool IsSelf() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_IsSelf() + } // end of property ContactInfo::IsSelf + .property class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + MeNeutral() + { + .get class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + } // end of property ContactInfo::MeNeutral + .property instance valuetype [mscorlib]System.Nullable`1 + Status() + { + .get instance valuetype [mscorlib]System.Nullable`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_Status() + } // end of property ContactInfo::Status + .property instance string DisplayName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_DisplayName() + } // end of property ContactInfo::DisplayName + .property instance object UniqueID() + { + .get instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_UniqueID() + } // end of property ContactInfo::UniqueID +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname uint8 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty FirstName = uint8(0x01) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty LastName = uint8(0x02) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Nick = uint8(0x03) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty CustomNick = uint8(0x04) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Email = uint8(0x05) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty City = uint8(0x06) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty State = uint8(0x07) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Country = uint8(0x08) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Phone = uint8(0x09) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty HomePage = uint8(0x0A) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty About = uint8(0x0B) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Gender = uint8(0x0C) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Age = uint8(0x0D) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty FirstAndLastName = uint8(0x0E) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty UniqueID = uint8(0x0F) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyFlags + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname uint8 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyFlags Unicode = uint8(0x80) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyFlags + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ItemType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Unspecified = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Contact = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Group = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ItemType + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase + extends Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher +{ + .class auto ansi sealed nested private beforefieldinit 'd__6' + extends [mscorlib]System.Object + implements class [mscorlib]System.Collections.Generic.IEnumerable`1, + [mscorlib]System.Collections.IEnumerable, + class [mscorlib]System.Collections.Generic.IEnumerator`1, + [mscorlib]System.Collections.IEnumerator, + [mscorlib]System.IDisposable + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private native int '<>2__current' + .field private int32 '<>1__state' + .field private int32 '<>l__initialThreadId' + .field public class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase '<>4__this' + .field public class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext '5__7' + .field public class Virtuoso.Miranda.Plugins.Callback '5__8' + .field public native uint '5__9' + .method private hidebysig newslot virtual final + instance class [mscorlib]System.Collections.Generic.IEnumerator`1 + 'System.Collections.Generic.IEnumerable.GetEnumerator'() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override method instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + // Code size 75 (0x4b) + .maxstack 2 + .locals init (class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6' V_0, + class [mscorlib]System.Collections.Generic.IEnumerator`1 V_1, + bool V_2) + IL_0000: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0005: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_000a: ldarg.0 + IL_000b: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>l__initialThreadId' + IL_0010: bne.un.s IL_0021 + + IL_0012: ldarg.0 + IL_0013: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + IL_0018: ldc.i4.s -2 + IL_001a: ceq + IL_001c: ldc.i4.0 + IL_001d: ceq + IL_001f: br.s IL_0022 + + IL_0021: ldc.i4.1 + IL_0022: nop + IL_0023: stloc.2 + IL_0024: ldloc.2 + IL_0025: brtrue.s IL_0032 + + IL_0027: ldarg.0 + IL_0028: ldc.i4.0 + IL_0029: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + IL_002e: ldarg.0 + IL_002f: stloc.0 + IL_0030: br.s IL_0045 + + IL_0032: ldc.i4.0 + IL_0033: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::.ctor(int32) + IL_0038: stloc.0 + IL_0039: ldloc.0 + IL_003a: ldarg.0 + IL_003b: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>4__this' + IL_0040: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>4__this' + IL_0045: ldloc.0 + IL_0046: stloc.1 + IL_0047: br.s IL_0049 + + IL_0049: ldloc.1 + IL_004a: ret + } // end of method 'd__6'::'System.Collections.Generic.IEnumerable.GetEnumerator' + + .method private hidebysig newslot virtual final + instance class [mscorlib]System.Collections.IEnumerator + System.Collections.IEnumerable.GetEnumerator() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerable::GetEnumerator + // Code size 11 (0xb) + .maxstack 1 + .locals init (class [mscorlib]System.Collections.IEnumerator V_0) + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.Collections.Generic.IEnumerator`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'System.Collections.Generic.IEnumerable.GetEnumerator'() + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + IL_0009: ldloc.0 + IL_000a: ret + } // end of method 'd__6'::System.Collections.IEnumerable.GetEnumerator + + .method private hidebysig newslot virtual final + instance bool MoveNext() cil managed + { + .override [mscorlib]System.Collections.IEnumerator::MoveNext + // Code size 211 (0xd3) + .maxstack 4 + .locals init ([0] bool CS$1$0000, + [1] int32 CS$4$0001, + [2] bool CS$4$0002, + [3] native uint CS$0$0003) + IL_0000: ldarg.0 + IL_0001: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + IL_0006: stloc.1 + IL_0007: ldloc.1 + IL_0008: switch ( + IL_0019, + IL_0017) + IL_0015: br.s IL_001b + + IL_0017: br.s IL_0092 + + IL_0019: br.s IL_0020 + + IL_001b: br IL_00cd + + IL_0020: ldarg.0 + IL_0021: ldc.i4.m1 + IL_0022: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + .line 329,329 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaDatabase.cs' + IL_0027: nop + .line 330,330 : 13,61 '' + IL_0028: ldarg.0 + IL_0029: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_002e: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__7' + .line 331,331 : 13,83 '' + IL_0033: ldarg.0 + IL_0034: ldstr "DB/Contact/FindNext" + IL_0039: call class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::GetService(string) + IL_003e: stfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__8' + .line 333,333 : 13,90 '' + IL_0043: ldarg.0 + IL_0044: ldarg.0 + IL_0045: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__7' + IL_004a: ldstr "DB/Contact/FindFirst" + IL_004f: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_0054: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint32) + IL_0059: stfld native uint Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__9' + .line 336,336 : 13,14 '' + IL_005e: nop + .line 337,337 : 17,44 '' + IL_005f: ldarg.0 + IL_0060: ldfld native uint Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__9' + IL_0065: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_006a: call bool [mscorlib]System.UIntPtr::op_Inequality(native uint, + native uint) + IL_006f: ldc.i4.0 + IL_0070: ceq + IL_0072: stloc.2 + IL_0073: ldloc.2 + IL_0074: brtrue.s IL_0099 + + .line 338,338 : 21,61 '' + IL_0076: ldarg.0 + IL_0077: ldarg.0 + IL_0078: ldfld native uint Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__9' + IL_007d: call native int Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native uint) + IL_0082: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>2__current' + IL_0087: ldarg.0 + IL_0088: ldc.i4.1 + IL_0089: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + IL_008e: ldc.i4.1 + IL_008f: stloc.0 + IL_0090: br.s IL_00d1 + + IL_0092: ldarg.0 + IL_0093: ldc.i4.m1 + IL_0094: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + .line 339,339 : 13,14 '' + IL_0099: nop + .line 340,340 : 13,93 '' + IL_009a: ldarg.0 + IL_009b: ldarg.0 + IL_009c: ldfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__8' + IL_00a1: ldarg.0 + IL_00a2: ldfld native uint Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__9' + IL_00a7: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_00ac: callvirt instance int32 Virtuoso.Miranda.Plugins.Callback::Invoke(native uint, + native int) + IL_00b1: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint32) + IL_00b6: dup + IL_00b7: stloc.3 + IL_00b8: stfld native uint Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__9' + IL_00bd: ldloc.3 + IL_00be: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_00c3: call bool [mscorlib]System.UIntPtr::op_Inequality(native uint, + native uint) + IL_00c8: stloc.2 + IL_00c9: ldloc.2 + IL_00ca: brtrue.s IL_005e + + .line 341,341 : 9,10 '' + IL_00cc: nop + IL_00cd: ldc.i4.0 + IL_00ce: stloc.0 + IL_00cf: br.s IL_00d1 + + IL_00d1: ldloc.0 + IL_00d2: ret + } // end of method 'd__6'::MoveNext + + .method private hidebysig newslot specialname virtual final + instance native int 'System.Collections.Generic.IEnumerator.get_Current'() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override method instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + // Code size 11 (0xb) + .maxstack 1 + .locals init (native int V_0) + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>2__current' + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + IL_0009: ldloc.0 + IL_000a: ret + } // end of method 'd__6'::'System.Collections.Generic.IEnumerator.get_Current' + + .method private hidebysig newslot virtual final + instance void System.Collections.IEnumerator.Reset() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerator::Reset + // Code size 6 (0x6) + .maxstack 8 + IL_0000: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_0005: throw + } // end of method 'd__6'::System.Collections.IEnumerator.Reset + + .method private hidebysig newslot virtual final + instance void System.IDisposable.Dispose() cil managed + { + .override [mscorlib]System.IDisposable::Dispose + // Code size 2 (0x2) + .maxstack 8 + IL_0000: nop + IL_0001: ret + } // end of method 'd__6'::System.IDisposable.Dispose + + .method private hidebysig newslot specialname virtual final + instance object System.Collections.IEnumerator.get_Current() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerator::get_Current + // Code size 16 (0x10) + .maxstack 1 + .locals init (object V_0) + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>2__current' + IL_0006: box [mscorlib]System.IntPtr + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + IL_000e: ldloc.0 + IL_000f: ret + } // end of method 'd__6'::System.Collections.IEnumerator.get_Current + + .method public hidebysig specialname rtspecialname + instance void .ctor(int32 '<>1__state') cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 30 (0x1e) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + IL_000d: ldarg.0 + IL_000e: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0013: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_0018: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>l__initialThreadId' + IL_001d: ret + } // end of method 'd__6'::.ctor + + .property instance native int 'System.Collections.Generic.IEnumerator.Current'() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'System.Collections.Generic.IEnumerator.get_Current'() + } // end of property 'd__6'::'System.Collections.Generic.IEnumerator.Current' + .property instance object System.Collections.IEnumerator.Current() + { + .get instance object Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::System.Collections.IEnumerator.get_Current() + } // end of property 'd__6'::System.Collections.IEnumerator.Current + } // end of class 'd__6' + + .class auto ansi sealed nested private beforefieldinit 'd__c' + extends [mscorlib]System.Object + implements class [mscorlib]System.Collections.Generic.IEnumerable`1, + [mscorlib]System.Collections.IEnumerable, + class [mscorlib]System.Collections.Generic.IEnumerator`1, + [mscorlib]System.Collections.IEnumerator, + [mscorlib]System.IDisposable + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private native int '<>2__current' + .field private int32 '<>1__state' + .field private int32 '<>l__initialThreadId' + .field public class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase '<>4__this' + .field public native int ownerHandle + .field public native int '<>3__ownerHandle' + .field public class Virtuoso.Miranda.Plugins.Callback '5__d' + .field public native int '5__e' + .method private hidebysig newslot virtual final + instance class [mscorlib]System.Collections.Generic.IEnumerator`1 + 'System.Collections.Generic.IEnumerable.GetEnumerator'() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override method instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + // Code size 87 (0x57) + .maxstack 2 + .locals init (class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c' V_0, + class [mscorlib]System.Collections.Generic.IEnumerator`1 V_1, + bool V_2) + IL_0000: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0005: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_000a: ldarg.0 + IL_000b: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>l__initialThreadId' + IL_0010: bne.un.s IL_0021 + + IL_0012: ldarg.0 + IL_0013: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + IL_0018: ldc.i4.s -2 + IL_001a: ceq + IL_001c: ldc.i4.0 + IL_001d: ceq + IL_001f: br.s IL_0022 + + IL_0021: ldc.i4.1 + IL_0022: nop + IL_0023: stloc.2 + IL_0024: ldloc.2 + IL_0025: brtrue.s IL_0032 + + IL_0027: ldarg.0 + IL_0028: ldc.i4.0 + IL_0029: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + IL_002e: ldarg.0 + IL_002f: stloc.0 + IL_0030: br.s IL_0045 + + IL_0032: ldc.i4.0 + IL_0033: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::.ctor(int32) + IL_0038: stloc.0 + IL_0039: ldloc.0 + IL_003a: ldarg.0 + IL_003b: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>4__this' + IL_0040: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>4__this' + IL_0045: ldloc.0 + IL_0046: ldarg.0 + IL_0047: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>3__ownerHandle' + IL_004c: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::ownerHandle + IL_0051: ldloc.0 + IL_0052: stloc.1 + IL_0053: br.s IL_0055 + + IL_0055: ldloc.1 + IL_0056: ret + } // end of method 'd__c'::'System.Collections.Generic.IEnumerable.GetEnumerator' + + .method private hidebysig newslot virtual final + instance class [mscorlib]System.Collections.IEnumerator + System.Collections.IEnumerable.GetEnumerator() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerable::GetEnumerator + // Code size 11 (0xb) + .maxstack 1 + .locals init (class [mscorlib]System.Collections.IEnumerator V_0) + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.Collections.Generic.IEnumerator`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'System.Collections.Generic.IEnumerable.GetEnumerator'() + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + IL_0009: ldloc.0 + IL_000a: ret + } // end of method 'd__c'::System.Collections.IEnumerable.GetEnumerator + + .method private hidebysig newslot virtual final + instance bool MoveNext() cil managed + { + .override [mscorlib]System.Collections.IEnumerator::MoveNext + // Code size 192 (0xc0) + .maxstack 5 + .locals init ([0] bool CS$1$0000, + [1] int32 CS$4$0001, + [2] bool CS$4$0002) + IL_0000: ldarg.0 + IL_0001: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + IL_0006: stloc.1 + IL_0007: ldloc.1 + IL_0008: switch ( + IL_0019, + IL_0017) + IL_0015: br.s IL_001b + + IL_0017: br.s IL_0077 + + IL_0019: br.s IL_0020 + + IL_001b: br IL_00ba + + IL_0020: ldarg.0 + IL_0021: ldc.i4.m1 + IL_0022: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + .line 492,492 : 9,10 '' + IL_0027: nop + .line 493,493 : 13,81 '' + IL_0028: ldarg.0 + IL_0029: ldstr "DB/Event/FindNext" + IL_002e: call class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::GetService(string) + IL_0033: stfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__d' + .line 494,494 : 13,121 '' + IL_0038: ldarg.0 + IL_0039: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_003e: ldstr "DB/Event/FindFirst" + IL_0043: ldarg.0 + IL_0044: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::ownerHandle + IL_0049: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_004e: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0053: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0058: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__e' + IL_005d: br.s IL_00a5 + + .line 497,497 : 13,14 '' + IL_005f: nop + .line 498,498 : 17,37 '' + IL_0060: ldarg.0 + IL_0061: ldarg.0 + IL_0062: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__e' + IL_0067: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>2__current' + IL_006c: ldarg.0 + IL_006d: ldc.i4.1 + IL_006e: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + IL_0073: ldc.i4.1 + IL_0074: stloc.0 + IL_0075: br.s IL_00be + + IL_0077: ldarg.0 + IL_0078: ldc.i4.m1 + IL_0079: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + .line 499,499 : 17,84 '' + IL_007e: ldarg.0 + IL_007f: ldarg.0 + IL_0080: ldfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__d' + IL_0085: ldarg.0 + IL_0086: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__e' + IL_008b: call native uint Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native int) + IL_0090: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0095: callvirt instance int32 Virtuoso.Miranda.Plugins.Callback::Invoke(native uint, + native int) + IL_009a: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_009f: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__e' + .line 500,500 : 13,14 '' + IL_00a4: nop + .line 496,496 : 13,42 '' + IL_00a5: ldarg.0 + IL_00a6: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__e' + IL_00ab: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_00b0: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_00b5: stloc.2 + IL_00b6: ldloc.2 + IL_00b7: brtrue.s IL_005f + + .line 501,501 : 9,10 '' + IL_00b9: nop + IL_00ba: ldc.i4.0 + IL_00bb: stloc.0 + IL_00bc: br.s IL_00be + + IL_00be: ldloc.0 + IL_00bf: ret + } // end of method 'd__c'::MoveNext + + .method private hidebysig newslot specialname virtual final + instance native int 'System.Collections.Generic.IEnumerator.get_Current'() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override method instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + // Code size 11 (0xb) + .maxstack 1 + .locals init (native int V_0) + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>2__current' + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + IL_0009: ldloc.0 + IL_000a: ret + } // end of method 'd__c'::'System.Collections.Generic.IEnumerator.get_Current' + + .method private hidebysig newslot virtual final + instance void System.Collections.IEnumerator.Reset() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerator::Reset + // Code size 6 (0x6) + .maxstack 8 + IL_0000: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_0005: throw + } // end of method 'd__c'::System.Collections.IEnumerator.Reset + + .method private hidebysig newslot virtual final + instance void System.IDisposable.Dispose() cil managed + { + .override [mscorlib]System.IDisposable::Dispose + // Code size 2 (0x2) + .maxstack 8 + IL_0000: nop + IL_0001: ret + } // end of method 'd__c'::System.IDisposable.Dispose + + .method private hidebysig newslot specialname virtual final + instance object System.Collections.IEnumerator.get_Current() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerator::get_Current + // Code size 16 (0x10) + .maxstack 1 + .locals init (object V_0) + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>2__current' + IL_0006: box [mscorlib]System.IntPtr + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + IL_000e: ldloc.0 + IL_000f: ret + } // end of method 'd__c'::System.Collections.IEnumerator.get_Current + + .method public hidebysig specialname rtspecialname + instance void .ctor(int32 '<>1__state') cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 30 (0x1e) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + IL_000d: ldarg.0 + IL_000e: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0013: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_0018: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>l__initialThreadId' + IL_001d: ret + } // end of method 'd__c'::.ctor + + .property instance native int 'System.Collections.Generic.IEnumerator.Current'() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'System.Collections.Generic.IEnumerator.get_Current'() + } // end of property 'd__c'::'System.Collections.Generic.IEnumerator.Current' + .property instance object System.Collections.IEnumerator.Current() + { + .get instance object Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::System.Collections.IEnumerator.get_Current() + } // end of property 'd__c'::System.Collections.IEnumerator.Current + } // end of class 'd__c' + + .field private static literal string ME_DB_EVENT_ADDED = "DB/Event/Added" + .field private static literal string ME_DB_EVENT_DELETED = "DB/Event/Deleted" + .field private static literal string ME_DB_EVENT_FILTER_ADD = "DB/Event/FilterAdd" + .field private static literal string ME_DB_CONTACT_ADDED = "DB/Contact/Added" + .field private static literal string ME_DB_CONTACT_DELETED = "DB/Contact/Deleted" + .field private static literal string ME_DB_CONTACT_SETTINGCHANGED = "DB/Contact/SettingChanged" + .field private static literal string MS_DB_GETPROFILENAME = "DB/GetProfileName" + .field private static literal string MS_DB_GETPROFILEPATH = "DB/GetProfilePath" + .field private static literal string MS_DB_EVENT_ADD = "DB/Event/Add" + .field private static literal string MS_DB_CONTACT_GETCOUNT = "DB/Contact/GetCount" + .field private static literal string MS_DB_CONTACT_FINDFIRST = "DB/Contact/FindFirst" + .field private static literal string MS_DB_CONTACT_FINDNEXT = "DB/Contact/FindNext" + .field private static literal string MS_DB_EVENT_FINDFIRST = "DB/Event/FindFirst" + .field private static literal string MS_DB_EVENT_FINDNEXT = "DB/Event/FindNext" + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 EventAddedEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 EventDeletedEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 BeforeEventAddedEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactAddedEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactDeletedEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactSettingChangedEventHandler + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 60,60 : 9,35 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::.ctor() + IL_0006: nop + .line 60,60 : 36,37 '' + IL_0007: nop + .line 60,60 : 38,39 '' + IL_0008: nop + IL_0009: ret + } // end of method MirandaDatabase::.ctor + + .method private hidebysig instance int32 + RaiseDbEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'handler', + bool fromPointer, + native uint wParam, + native int lParam) cil managed + { + // Code size 77 (0x4d) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo eventInfo, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs eventArgs, + [3] bool retValue, + [4] int32 CS$1$0000, + [5] bool CS$4$0001) + .line 79,79 : 9,10 '' + IL_0000: nop + .line 80,80 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0001 + IL_000a: ldloc.s CS$4$0001 + IL_000c: brtrue.s IL_0013 + + .line 81,81 : 17,26 '' + IL_000e: ldc.i4.0 + IL_000f: stloc.s CS$1$0000 + IL_0011: br.s IL_004a + + .line 83,83 : 13,70 '' + IL_0013: ldarg.3 + IL_0014: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native uint) + IL_0019: stloc.0 + .line 84,84 : 13,134 '' + IL_001a: ldarg.2 + IL_001b: brtrue.s IL_0026 + + IL_001d: ldarg.s lParam + IL_001f: call class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::FromHandle(native int) + IL_0024: br.s IL_002d + + IL_0026: ldarg.s lParam + IL_0028: call class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::FromPointer(native int) + IL_002d: nop + IL_002e: stloc.1 + .line 85,85 : 13,103 '' + IL_002f: ldloc.0 + IL_0030: ldloc.1 + IL_0031: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo) + IL_0036: stloc.2 + .line 87,87 : 13,97 '' + IL_0037: ldarg.0 + IL_0038: ldarg.1 + IL_0039: ldloc.2 + IL_003a: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + !!0) + IL_003f: stloc.3 + .line 88,88 : 13,46 '' + IL_0040: ldloc.3 + IL_0041: call int32 [mscorlib]System.Convert::ToInt32(bool) + IL_0046: stloc.s CS$1$0000 + IL_0048: br.s IL_004a + + .line 89,89 : 9,10 '' + IL_004a: ldloc.s CS$1$0000 + IL_004c: ret + } // end of method MirandaDatabase::RaiseDbEvent + + .method public hidebysig specialname instance void + add_EventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 95,95 : 13,14 '' + IL_0000: nop + .line 96,96 : 17,130 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventAddedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 97,101 : 17,24 '' + IL_000e: ldstr "DB/Event/Added" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__0'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 102,102 : 13,14 '' + IL_0025: ret + } // end of method MirandaDatabase::add_EventAdded + + .method public hidebysig specialname instance void + remove_EventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 105,105 : 13,14 '' + IL_0000: nop + .line 106,106 : 17,130 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventAddedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 107,107 : 17,95 '' + IL_000e: ldstr "DB/Event/Added" + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventAddedEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 108,108 : 13,14 '' + IL_001f: ret + } // end of method MirandaDatabase::remove_EventAdded + + .method public hidebysig specialname instance void + add_EventDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 115,115 : 13,14 '' + IL_0000: nop + .line 116,116 : 17,132 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventDeletedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 117,121 : 17,24 '' + IL_000e: ldstr "DB/Event/Deleted" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__1'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 122,122 : 13,14 '' + IL_0025: ret + } // end of method MirandaDatabase::add_EventDeleted + + .method public hidebysig specialname instance void + remove_EventDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 125,125 : 13,14 '' + IL_0000: nop + .line 126,126 : 17,132 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventDeletedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 127,127 : 17,99 '' + IL_000e: ldstr "DB/Event/Deleted" + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventDeletedEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 128,128 : 13,14 '' + IL_001f: ret + } // end of method MirandaDatabase::remove_EventDeleted + + .method public hidebysig specialname instance void + add_BeforeEventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 138,138 : 13,14 '' + IL_0000: nop + .line 139,139 : 17,136 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::BeforeEventAddedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 140,144 : 17,24 '' + IL_000e: ldstr "DB/Event/FilterAdd" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__2'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 145,145 : 13,14 '' + IL_0025: ret + } // end of method MirandaDatabase::add_BeforeEventAdded + + .method public hidebysig specialname instance void + remove_BeforeEventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 148,148 : 13,14 '' + IL_0000: nop + .line 149,149 : 17,136 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::BeforeEventAddedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 150,150 : 17,106 '' + IL_000e: ldstr "DB/Event/FilterAdd" + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::BeforeEventAddedEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 151,151 : 13,14 '' + IL_001f: ret + } // end of method MirandaDatabase::remove_BeforeEventAdded + + .method private hidebysig instance int32 + RaiseContactEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'handler', + native uint wParam) cil managed + { + // Code size 52 (0x34) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs eventArgs, + [2] bool retValue, + [3] int32 CS$1$0000, + [4] bool CS$4$0001) + .line 155,155 : 9,10 '' + IL_0000: nop + .line 156,156 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0001 + IL_000a: ldloc.s CS$4$0001 + IL_000c: brtrue.s IL_0012 + + .line 157,157 : 17,26 '' + IL_000e: ldc.i4.0 + IL_000f: stloc.3 + IL_0010: br.s IL_0032 + + .line 159,159 : 13,62 '' + IL_0012: ldarg.2 + IL_0013: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContactInfo(native uint) + IL_0018: stloc.0 + .line 160,160 : 13,90 '' + IL_0019: ldloc.0 + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_001f: stloc.1 + .line 162,162 : 13,96 '' + IL_0020: ldarg.0 + IL_0021: ldarg.1 + IL_0022: ldloc.1 + IL_0023: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + !!0) + IL_0028: stloc.2 + .line 163,163 : 13,46 '' + IL_0029: ldloc.2 + IL_002a: call int32 [mscorlib]System.Convert::ToInt32(bool) + IL_002f: stloc.3 + IL_0030: br.s IL_0032 + + .line 164,164 : 9,10 '' + IL_0032: ldloc.3 + IL_0033: ret + } // end of method MirandaDatabase::RaiseContactEvent + + .method private hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + GetContactInfo(native uint wParam) cil managed + { + // Code size 38 (0x26) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000, + [1] bool CS$4$0001) + .line 167,167 : 9,10 '' + IL_0000: nop + .line 168,168 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0007: call bool [mscorlib]System.UIntPtr::op_Equality(native uint, + native uint) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.1 + IL_0010: ldloc.1 + IL_0011: brtrue.s IL_001b + + .line 169,169 : 17,46 '' + IL_0013: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0018: stloc.0 + IL_0019: br.s IL_0024 + + .line 171,171 : 17,55 '' + IL_001b: ldarg.0 + IL_001c: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native uint) + IL_0021: stloc.0 + IL_0022: br.s IL_0024 + + .line 172,172 : 9,10 '' + IL_0024: ldloc.0 + IL_0025: ret + } // end of method MirandaDatabase::GetContactInfo + + .method private hidebysig instance int32 + RaiseContactSettingEvent(native uint hContact, + native int pDbWriteSetting) cil managed + { + // Code size 159 (0x9f) + .maxstack 5 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING dbWriteSetting, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo, + [2] string name, + [3] string moduleName, + [4] object 'value', + [5] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs eventArgs, + [6] bool retValue, + [7] int32 CS$1$0000, + [8] bool CS$4$0001) + .line 175,175 : 9,10 '' + IL_0000: nop + .line 176,176 : 13,105 '' + IL_0001: ldarga.s pDbWriteSetting + IL_0003: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0008: ldobj Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + IL_000d: stloc.0 + .line 177,177 : 13,64 '' + IL_000e: ldarg.1 + IL_000f: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContactInfo(native uint) + IL_0014: stloc.1 + .line 179,179 : 13,88 '' + IL_0015: ldloca.s dbWriteSetting + IL_0017: ldfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Name + IL_001c: ldc.i4.0 + IL_001d: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0022: stloc.2 + .line 180,180 : 13,96 '' + IL_0023: ldloca.s dbWriteSetting + IL_0025: ldfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Module + IL_002a: ldc.i4.0 + IL_002b: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0030: stloc.3 + .line 181,181 : 13,33 '' + IL_0031: ldnull + IL_0032: stloc.s 'value' + .line 183,183 : 13,92 '' + IL_0034: ldloca.s dbWriteSetting + IL_0036: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_003b: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + IL_0040: ldc.i4 0xfe + IL_0045: ceq + IL_0047: stloc.s CS$4$0001 + IL_0049: ldloc.s CS$4$0001 + IL_004b: brtrue.s IL_0057 + + .line 184,184 : 17,77 '' + IL_004d: ldarg.2 + IL_004e: call object Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::ExtractValue(native int) + IL_0053: stloc.s 'value' + IL_0055: br.s IL_0069 + + .line 186,186 : 17,118 '' + IL_0057: ldc.i4.s 10 + IL_0059: ldstr "Hyphen" + IL_005e: ldstr "Blob settings are not yet supported, the value wil" + + "l be null." + IL_0063: call void [mscorlib]System.Diagnostics.Debugger::Log(int32, + string, + string) + IL_0068: nop + .line 188,188 : 13,177 '' + IL_0069: ldloc.1 + IL_006a: ldloc.2 + IL_006b: ldloc.3 + IL_006c: ldloc.s 'value' + IL_006e: ldloca.s dbWriteSetting + IL_0070: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0075: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + IL_007a: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + string, + string, + object, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_007f: stloc.s eventArgs + .line 190,190 : 13,129 '' + IL_0081: ldarg.0 + IL_0082: ldarg.0 + IL_0083: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactSettingChangedEventHandler + IL_0088: ldloc.s eventArgs + IL_008a: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + !!0) + IL_008f: stloc.s retValue + .line 191,191 : 13,46 '' + IL_0091: ldloc.s retValue + IL_0093: call int32 [mscorlib]System.Convert::ToInt32(bool) + IL_0098: stloc.s CS$1$0000 + IL_009a: br.s IL_009c + + .line 192,192 : 9,10 '' + IL_009c: ldloc.s CS$1$0000 + IL_009e: ret + } // end of method MirandaDatabase::RaiseContactSettingEvent + + .method public hidebysig specialname instance void + add_ContactAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 198,198 : 13,14 '' + IL_0000: nop + .line 199,199 : 17,131 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactAddedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 200,204 : 17,24 '' + IL_000e: ldstr "DB/Contact/Added" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__3'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 205,205 : 13,14 '' + IL_0025: ret + } // end of method MirandaDatabase::add_ContactAdded + + .method public hidebysig specialname instance void + remove_ContactAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 208,208 : 13,14 '' + IL_0000: nop + .line 209,209 : 17,131 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactAddedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 210,210 : 17,99 '' + IL_000e: ldstr "DB/Contact/Added" + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactAddedEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 211,211 : 13,14 '' + IL_001f: ret + } // end of method MirandaDatabase::remove_ContactAdded + + .method public hidebysig specialname instance void + add_ContactDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 218,218 : 13,14 '' + IL_0000: nop + .line 219,219 : 17,133 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactDeletedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 220,224 : 17,24 '' + IL_000e: ldstr "DB/Contact/Deleted" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__4'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 225,225 : 13,14 '' + IL_0025: ret + } // end of method MirandaDatabase::add_ContactDeleted + + .method public hidebysig specialname instance void + remove_ContactDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 228,228 : 13,14 '' + IL_0000: nop + .line 229,229 : 17,133 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactDeletedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 230,230 : 17,103 '' + IL_000e: ldstr "DB/Contact/Deleted" + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactDeletedEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 231,231 : 13,14 '' + IL_001f: ret + } // end of method MirandaDatabase::remove_ContactDeleted + + .method public hidebysig specialname instance void + add_ContactSettingChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 38 (0x26) + .maxstack 8 + .line 238,238 : 13,14 '' + IL_0000: nop + .line 239,239 : 17,147 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactSettingChangedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 240,244 : 17,24 '' + IL_000e: ldstr "DB/Contact/SettingChanged" + IL_0013: ldarg.0 + IL_0014: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__5'(native uint, + native int) + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0024: nop + .line 245,245 : 13,14 '' + IL_0025: ret + } // end of method MirandaDatabase::add_ContactSettingChanged + + .method public hidebysig specialname instance void + remove_ContactSettingChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 32 (0x20) + .maxstack 8 + .line 248,248 : 13,14 '' + IL_0000: nop + .line 249,249 : 17,147 '' + IL_0001: ldarg.0 + IL_0002: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactSettingChangedEventHandler + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + IL_000d: nop + .line 250,250 : 17,117 '' + IL_000e: ldstr "DB/Contact/SettingChanged" + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactSettingChangedEventHandler + IL_0019: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001e: nop + .line 251,251 : 13,14 '' + IL_001f: ret + } // end of method MirandaDatabase::remove_ContactSettingChanged + + .method public hidebysig specialname instance string + get_ProfileName() cil managed + { + // Code size 116 (0x74) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] int32 result, + [2] class [mscorlib]System.Exception e, + [3] string CS$1$0000, + [4] bool CS$4$0001) + .line 263,263 : 13,14 '' + IL_0000: nop + .line 264,264 : 17,74 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer() + IL_0006: stloc.0 + .line 267,267 : 17,18 '' + .try + { + .try + { + IL_0007: nop + .line 268,268 : 21,35 '' + IL_0008: ldloc.0 + IL_0009: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + IL_000e: nop + .line 270,270 : 21,128 '' + IL_000f: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0014: ldstr "DB/GetProfileName" + IL_0019: ldloc.0 + IL_001a: callvirt instance native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsUIntPtr() + IL_001f: ldloc.0 + IL_0020: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0025: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_002a: stloc.1 + .line 271,271 : 21,47 '' + IL_002b: ldloc.1 + IL_002c: ldc.i4.0 + IL_002d: ceq + IL_002f: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0034: nop + .line 273,273 : 21,37 '' + IL_0035: ldloc.1 + IL_0036: ldc.i4.0 + IL_0037: ceq + IL_0039: stloc.s CS$4$0001 + IL_003b: ldloc.s CS$4$0001 + IL_003d: brtrue.s IL_0043 + + .line 273,273 : 38,50 '' + IL_003f: ldnull + IL_0040: stloc.3 + IL_0041: leave.s IL_0071 + + .line 274,274 : 21,83 '' + IL_0043: ldloc.0 + IL_0044: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0049: ldc.i4.0 + IL_004a: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_004f: stloc.3 + IL_0050: leave.s IL_0071 + + .line 276,276 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0052: stloc.2 + .line 277,277 : 17,18 '' + IL_0053: nop + .line 278,278 : 21,111 '' + IL_0054: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0059: ldloc.2 + IL_005a: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_005f: throw + + .line 281,281 : 17,18 '' + } // end handler + } // end .try + finally + { + IL_0060: nop + .line 282,282 : 21,37 '' + IL_0061: ldloc.0 + IL_0062: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + IL_0067: nop + .line 283,283 : 21,61 '' + IL_0068: ldloc.0 + IL_0069: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_006e: nop + .line 284,284 : 17,18 '' + IL_006f: nop + IL_0070: endfinally + } // end handler + IL_0071: nop + .line 285,285 : 13,14 '' + IL_0072: ldloc.3 + IL_0073: ret + } // end of method MirandaDatabase::get_ProfileName + + .method public hidebysig specialname instance string + get_ProfilePath() cil managed + { + // Code size 116 (0x74) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] int32 result, + [2] class [mscorlib]System.Exception e, + [3] string CS$1$0000, + [4] bool CS$4$0001) + .line 291,291 : 13,14 '' + IL_0000: nop + .line 292,292 : 17,74 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer() + IL_0006: stloc.0 + .line 295,295 : 17,18 '' + .try + { + .try + { + IL_0007: nop + .line 296,296 : 21,35 '' + IL_0008: ldloc.0 + IL_0009: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + IL_000e: nop + .line 298,298 : 21,128 '' + IL_000f: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0014: ldstr "DB/GetProfilePath" + IL_0019: ldloc.0 + IL_001a: callvirt instance native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsUIntPtr() + IL_001f: ldloc.0 + IL_0020: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0025: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_002a: stloc.1 + .line 299,299 : 21,47 '' + IL_002b: ldloc.1 + IL_002c: ldc.i4.0 + IL_002d: ceq + IL_002f: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0034: nop + .line 301,301 : 21,37 '' + IL_0035: ldloc.1 + IL_0036: ldc.i4.0 + IL_0037: ceq + IL_0039: stloc.s CS$4$0001 + IL_003b: ldloc.s CS$4$0001 + IL_003d: brtrue.s IL_0043 + + .line 301,301 : 38,50 '' + IL_003f: ldnull + IL_0040: stloc.3 + IL_0041: leave.s IL_0071 + + .line 302,302 : 21,83 '' + IL_0043: ldloc.0 + IL_0044: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0049: ldc.i4.0 + IL_004a: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_004f: stloc.3 + IL_0050: leave.s IL_0071 + + .line 304,304 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0052: stloc.2 + .line 305,305 : 17,18 '' + IL_0053: nop + .line 306,306 : 21,111 '' + IL_0054: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0059: ldloc.2 + IL_005a: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_005f: throw + + .line 309,309 : 17,18 '' + } // end handler + } // end .try + finally + { + IL_0060: nop + .line 310,310 : 21,37 '' + IL_0061: ldloc.0 + IL_0062: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + IL_0067: nop + .line 311,311 : 21,61 '' + IL_0068: ldloc.0 + IL_0069: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_006e: nop + .line 312,312 : 17,18 '' + IL_006f: nop + IL_0070: endfinally + } // end handler + IL_0071: nop + .line 313,313 : 13,14 '' + IL_0072: ldloc.3 + IL_0073: ret + } // end of method MirandaDatabase::get_ProfilePath + + .method public hidebysig instance class [mscorlib]System.Collections.Generic.IEnumerable`1 + GetContactHandles() cil managed + { + // Code size 21 (0x15) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6' V_0, + [1] class [mscorlib]System.Collections.Generic.IEnumerable`1 V_1) + .line 0,134218373 : 0,0 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugin' + .line 0,0 : 0,0 '' + IL_0000: ldc.i4.s -2 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::.ctor(int32) + IL_0007: stloc.0 + IL_0008: ldloc.0 + IL_0009: ldarg.0 + IL_000a: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>4__this' + IL_000f: ldloc.0 + IL_0010: stloc.1 + IL_0011: br.s IL_0013 + + IL_0013: ldloc.1 + IL_0014: ret + } // end of method MirandaDatabase::GetContactHandles + + .method public hidebysig instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 + GetContacts() cil managed + { + // Code size 13 (0xd) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 CS$1$0000) + .line 344,344 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaDatabase.cs' + IL_0000: nop + .line 345,345 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: call instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContacts(bool) + IL_0008: stloc.0 + IL_0009: br.s IL_000b + + .line 346,346 : 9,10 '' + IL_000b: ldloc.0 + IL_000c: ret + } // end of method MirandaDatabase::GetContacts + + .method public hidebysig instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 + GetContacts(bool includeSelf) cil managed + { + // Code size 143 (0x8f) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context, + [1] class Virtuoso.Miranda.Plugins.Callback findNext, + [2] class [mscorlib]System.Collections.Generic.List`1 contacts, + [3] native int handle, + [4] class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 CS$1$0000, + [5] bool CS$4$0001, + [6] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0002) + .line 349,349 : 9,10 '' + IL_0000: nop + .line 350,350 : 13,61 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: stloc.0 + .line 351,351 : 13,83 '' + IL_0007: ldstr "DB/Contact/FindNext" + IL_000c: call class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::GetService(string) + IL_0011: stloc.1 + .line 353,353 : 13,109 '' + IL_0012: ldloc.0 + IL_0013: ldstr "DB/Contact/GetCount" + IL_0018: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_001d: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0022: stloc.2 + .line 355,355 : 13,29 '' + IL_0023: ldarg.1 + IL_0024: ldc.i4.0 + IL_0025: ceq + IL_0027: stloc.s CS$4$0001 + IL_0029: ldloc.s CS$4$0001 + IL_002b: brtrue.s IL_0039 + + .line 356,356 : 17,53 '' + IL_002d: ldloc.2 + IL_002e: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0033: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0038: nop + .line 358,358 : 13,20 '' + IL_0039: nop + .line 358,358 : 39,58 '' + IL_003a: ldarg.0 + IL_003b: call instance class [mscorlib]System.Collections.Generic.IEnumerable`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContactHandles() + IL_0040: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + IL_0045: stloc.s CS$5$0002 + .try + { + IL_0047: br.s IL_005e + + .line 358,358 : 22,35 '' + IL_0049: ldloc.s CS$5$0002 + IL_004b: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0050: stloc.3 + .line 359,359 : 17,62 '' + IL_0051: ldloc.2 + IL_0052: ldloc.3 + IL_0053: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_0058: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_005d: nop + .line 358,358 : 36,38 '' + IL_005e: ldloc.s CS$5$0002 + IL_0060: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0065: stloc.s CS$4$0001 + IL_0067: ldloc.s CS$4$0001 + IL_0069: brtrue.s IL_0049 + + IL_006b: leave.s IL_0081 + + } // end .try + finally + { + IL_006d: ldloc.s CS$5$0002 + IL_006f: ldnull + IL_0070: ceq + IL_0072: stloc.s CS$4$0001 + IL_0074: ldloc.s CS$4$0001 + IL_0076: brtrue.s IL_0080 + + IL_0078: ldloc.s CS$5$0002 + IL_007a: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_007f: nop + IL_0080: endfinally + } // end handler + IL_0081: nop + .line 361,361 : 13,42 '' + IL_0082: ldloc.2 + IL_0083: callvirt instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 class [mscorlib]System.Collections.Generic.List`1::AsReadOnly() + IL_0088: stloc.s CS$1$0000 + IL_008a: br.s IL_008c + + .line 362,362 : 9,10 '' + IL_008c: ldloc.s CS$1$0000 + IL_008e: ret + } // end of method MirandaDatabase::GetContacts + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + FindContact(string uuid) cil managed + { + // Code size 16 (0x10) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 365,365 : 9,10 '' + IL_0000: nop + .line 366,366 : 13,89 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldc.i4.s 15 + IL_0005: ldc.i4.0 + IL_0006: call instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + .line 367,367 : 9,10 '' + IL_000e: ldloc.0 + IL_000f: ret + } // end of method MirandaDatabase::FindContact + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + FindContact(string searchValue, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty searchCriterion, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding valueEncoding) cil managed + { + // Code size 16 (0x10) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 370,370 : 9,10 '' + IL_0000: nop + .line 371,371 : 13,103 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldarg.3 + IL_0005: ldc.i4.4 + IL_0006: call instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding, + valuetype [mscorlib]System.StringComparison) + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + .line 372,372 : 9,10 '' + IL_000e: ldloc.0 + IL_000f: ret + } // end of method MirandaDatabase::FindContact + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + FindContact(string searchValue, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty searchCriterion, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding valueEncoding, + valuetype [mscorlib]System.StringComparison comparisonType) cil managed + { + // Code size 150 (0x96) + .maxstack 4 + .locals init ([0] native int handle, + [1] object 'value', + [2] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType 'type', + [3] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000, + [4] bool CS$4$0001, + [5] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0002) + .line 375,375 : 9,10 '' + IL_0000: nop + .line 376,376 : 13,37 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0001 + IL_000a: ldloc.s CS$4$0001 + IL_000c: brtrue.s IL_0019 + + .line 377,377 : 17,65 '' + IL_000e: ldstr "searchValues" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 379,379 : 13,20 '' + IL_0019: nop + .line 379,379 : 39,58 '' + IL_001a: ldarg.0 + IL_001b: call instance class [mscorlib]System.Collections.Generic.IEnumerable`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContactHandles() + IL_0020: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + IL_0025: stloc.s CS$5$0002 + .try + { + IL_0027: br.s IL_0064 + + .line 379,379 : 22,35 '' + IL_0029: ldloc.s CS$5$0002 + IL_002b: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0030: stloc.0 + .line 380,380 : 13,14 '' + IL_0031: nop + .line 384,385 : 17,77 '' + IL_0032: ldloc.0 + IL_0033: ldarg.2 + IL_0034: ldloca.s 'value' + IL_0036: ldloca.s 'type' + IL_0038: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetProperty(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + object&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType&) + IL_003d: brfalse.s IL_0052 + + IL_003f: ldarg.1 + IL_0040: ldloc.1 + IL_0041: callvirt instance string [mscorlib]System.Object::ToString() + IL_0046: ldarg.s comparisonType + IL_0048: callvirt instance bool [mscorlib]System.String::Equals(string, + valuetype [mscorlib]System.StringComparison) + IL_004d: ldc.i4.0 + IL_004e: ceq + IL_0050: br.s IL_0053 + + IL_0052: ldc.i4.1 + IL_0053: nop + IL_0054: stloc.s CS$4$0001 + IL_0056: ldloc.s CS$4$0001 + IL_0058: brtrue.s IL_0063 + + .line 386,386 : 21,59 '' + IL_005a: ldloc.0 + IL_005b: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_0060: stloc.3 + IL_0061: leave.s IL_0093 + + .line 387,387 : 13,14 '' + IL_0063: nop + .line 379,379 : 36,38 '' + IL_0064: ldloc.s CS$5$0002 + IL_0066: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_006b: stloc.s CS$4$0001 + IL_006d: ldloc.s CS$4$0001 + IL_006f: brtrue.s IL_0029 + + IL_0071: leave.s IL_0087 + + } // end .try + finally + { + IL_0073: ldloc.s CS$5$0002 + IL_0075: ldnull + IL_0076: ceq + IL_0078: stloc.s CS$4$0001 + IL_007a: ldloc.s CS$4$0001 + IL_007c: brtrue.s IL_0086 + + IL_007e: ldloc.s CS$5$0002 + IL_0080: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0085: nop + IL_0086: endfinally + } // end handler + IL_0087: nop + .line 389,389 : 13,33 '' + IL_0088: ldc.i4.0 + IL_0089: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_008e: nop + .line 390,390 : 13,25 '' + IL_008f: ldnull + IL_0090: stloc.3 + IL_0091: br.s IL_0093 + + IL_0093: nop + .line 391,391 : 9,10 '' + IL_0094: ldloc.3 + IL_0095: ret + } // end of method MirandaDatabase::FindContact + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo[] + FindContacts(string[] uuids) cil managed + { + .param [1] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 117 (0x75) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 results, + [1] string uuid, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + [3] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo[] CS$1$0000, + [4] bool CS$4$0001, + [5] string[] CS$6$0002, + [6] int32 CS$7$0003) + .line 394,394 : 9,10 '' + IL_0000: nop + .line 395,395 : 13,31 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0001 + IL_000a: ldloc.s CS$4$0001 + IL_000c: brtrue.s IL_0019 + + .line 396,396 : 17,58 '' + IL_000e: ldstr "uuids" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 398,398 : 13,77 '' + IL_0019: ldarg.1 + IL_001a: ldlen + IL_001b: conv.i4 + IL_001c: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0021: stloc.0 + .line 400,400 : 13,20 '' + IL_0022: nop + .line 400,400 : 37,42 '' + IL_0023: ldarg.1 + IL_0024: stloc.s CS$6$0002 + IL_0026: ldc.i4.0 + IL_0027: stloc.s CS$7$0003 + IL_0029: br.s IL_005c + + .line 400,400 : 22,33 '' + IL_002b: ldloc.s CS$6$0002 + IL_002d: ldloc.s CS$7$0003 + IL_002f: ldelem.ref + IL_0030: stloc.1 + .line 401,401 : 13,14 '' + IL_0031: nop + .line 402,402 : 17,108 '' + IL_0032: ldarg.0 + IL_0033: ldloc.1 + IL_0034: ldc.i4.s 15 + IL_0036: ldc.i4.0 + IL_0037: call instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_003c: stloc.2 + .line 404,404 : 17,37 '' + IL_003d: ldloc.2 + IL_003e: ldnull + IL_003f: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Inequality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0044: ldc.i4.0 + IL_0045: ceq + IL_0047: stloc.s CS$4$0001 + IL_0049: ldloc.s CS$4$0001 + IL_004b: brtrue.s IL_0055 + + .line 405,405 : 21,42 '' + IL_004d: ldloc.0 + IL_004e: ldloc.2 + IL_004f: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0054: nop + .line 406,406 : 13,14 '' + IL_0055: nop + IL_0056: ldloc.s CS$7$0003 + IL_0058: ldc.i4.1 + IL_0059: add + IL_005a: stloc.s CS$7$0003 + .line 400,400 : 34,36 '' + IL_005c: ldloc.s CS$7$0003 + IL_005e: ldloc.s CS$6$0002 + IL_0060: ldlen + IL_0061: conv.i4 + IL_0062: clt + IL_0064: stloc.s CS$4$0001 + IL_0066: ldloc.s CS$4$0001 + IL_0068: brtrue.s IL_002b + + .line 408,408 : 13,38 '' + IL_006a: ldloc.0 + IL_006b: callvirt instance !0[] class [mscorlib]System.Collections.Generic.List`1::ToArray() + IL_0070: stloc.3 + IL_0071: br.s IL_0073 + + .line 409,409 : 9,10 '' + IL_0073: ldloc.3 + IL_0074: ret + } // end of method MirandaDatabase::FindContacts + + .method public hidebysig instance native int + AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo associatedContact, + object data, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType 'type', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties 'flags', + valuetype [mscorlib]System.Nullable`1 timestamp) cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .locals init ([0] native int CS$1$0000) + .line 416,416 : 9,10 '' + IL_0000: nop + .line 417,417 : 13,91 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldarg.3 + IL_0005: ldarg.s 'type' + IL_0007: ldarg.s 'flags' + IL_0009: ldarg.s timestamp + IL_000b: ldc.i4.1 + IL_000c: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + object, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties, + valuetype [mscorlib]System.Nullable`1, + bool) + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 418,418 : 9,10 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method MirandaDatabase::AddEvent + + .method public hidebysig instance native int + AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo associatedContact, + object data, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType 'type', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties 'flags', + valuetype [mscorlib]System.Nullable`1 timestamp, + bool throwOnFailure) cil managed + { + // Code size 50 (0x32) + .maxstack 8 + .locals init ([0] native int CS$1$0000, + [1] bool CS$4$0001) + .line 421,421 : 9,10 '' + IL_0000: nop + .line 422,422 : 13,31 '' + IL_0001: ldarg.3 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 423,423 : 17,58 '' + IL_000c: ldstr "owner" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 425,425 : 13,106 '' + IL_0017: ldarg.0 + IL_0018: ldarg.1 + IL_0019: ldarg.2 + IL_001a: ldarg.3 + IL_001b: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + IL_0020: ldarg.s 'type' + IL_0022: ldarg.s 'flags' + IL_0024: ldarg.s timestamp + IL_0026: ldarg.s throwOnFailure + IL_0028: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + object, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties, + valuetype [mscorlib]System.Nullable`1, + bool) + IL_002d: stloc.0 + IL_002e: br.s IL_0030 + + .line 426,426 : 9,10 '' + IL_0030: ldloc.0 + IL_0031: ret + } // end of method MirandaDatabase::AddEvent + + .method public hidebysig instance native int + AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo associatedContact, + object data, + string owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType 'type', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties 'flags', + valuetype [mscorlib]System.Nullable`1 timestamp, + bool throwOnFailure) cil managed + { + // Code size 473 (0x1d9) + .maxstack 4 + .locals init ([0] native int pBlob, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeStruct, + [2] int32 totalBytes, + [3] uint8[] dataBytes, + [4] valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO info, + [5] native int eventHandle, + [6] native int CS$1$0000, + [7] bool CS$4$0001, + [8] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle CS$0$0002, + [9] native int[] CS$0$0003) + .line 429,429 : 9,10 '' + IL_0000: nop + .line 430,430 : 13,43 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.s CS$4$0001 + IL_000d: ldloc.s CS$4$0001 + IL_000f: brtrue.s IL_001c + + .line 431,431 : 17,70 '' + IL_0011: ldstr "associatedContact" + IL_0016: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001b: throw + + .line 433,433 : 13,45 '' + IL_001c: ldarg.3 + IL_001d: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0022: ldc.i4.0 + IL_0023: ceq + IL_0025: stloc.s CS$4$0001 + IL_0027: ldloc.s CS$4$0001 + IL_0029: brtrue.s IL_0036 + + .line 434,434 : 17,58 '' + IL_002b: ldstr "owner" + IL_0030: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0035: throw + + .line 436,436 : 13,30 '' + IL_0036: ldarg.2 + IL_0037: ldnull + IL_0038: ceq + IL_003a: ldc.i4.0 + IL_003b: ceq + IL_003d: stloc.s CS$4$0001 + IL_003f: ldloc.s CS$4$0001 + IL_0041: brtrue.s IL_004e + + .line 437,437 : 17,57 '' + IL_0043: ldstr "data" + IL_0048: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_004d: throw + + .line 439,439 : 13,40 '' + IL_004e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0053: stloc.0 + .line 440,440 : 13,104 '' + IL_0054: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0059: stloc.1 + .line 443,443 : 13,14 '' + .try + { + IL_005a: nop + .line 446,446 : 17,36 '' + IL_005b: ldarg.2 + IL_005c: isinst [mscorlib]System.String + IL_0061: ldnull + IL_0062: cgt.un + IL_0064: ldc.i4.0 + IL_0065: ceq + IL_0067: stloc.s CS$4$0001 + IL_0069: ldloc.s CS$4$0001 + IL_006b: brtrue.s IL_007f + + .line 447,447 : 17,18 '' + IL_006d: nop + .line 448,448 : 21,91 '' + IL_006e: ldarg.2 + IL_006f: castclass [mscorlib]System.String + IL_0074: ldloca.s pBlob + IL_0076: call int32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::LayoutAnsiUniString(string, + native int&) + IL_007b: stloc.2 + .line 449,449 : 17,18 '' + IL_007c: nop + IL_007d: br.s IL_00be + + .line 450,450 : 22,41 '' + IL_007f: ldarg.2 + IL_0080: isinst uint8[] + IL_0085: ldnull + IL_0086: cgt.un + IL_0088: ldc.i4.0 + IL_0089: ceq + IL_008b: stloc.s CS$4$0001 + IL_008d: ldloc.s CS$4$0001 + IL_008f: brtrue.s IL_00b3 + + .line 451,451 : 17,18 '' + IL_0091: nop + .line 452,452 : 21,53 '' + IL_0092: ldarg.2 + IL_0093: castclass uint8[] + IL_0098: stloc.3 + .line 453,453 : 21,51 '' + IL_0099: ldloc.3 + IL_009a: ldlen + IL_009b: conv.i4 + IL_009c: stloc.2 + .line 455,455 : 21,62 '' + IL_009d: ldloc.2 + IL_009e: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_00a3: stloc.0 + .line 456,456 : 21,73 '' + IL_00a4: ldloc.3 + IL_00a5: ldc.i4.0 + IL_00a6: ldloc.0 + IL_00a7: ldloc.3 + IL_00a8: ldlen + IL_00a9: conv.i4 + IL_00aa: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + IL_00af: nop + .line 457,457 : 17,18 '' + IL_00b0: nop + IL_00b1: br.s IL_00be + + .line 459,459 : 21,67 '' + IL_00b3: ldstr "data" + IL_00b8: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_00bd: throw + + .line 461,461 : 17,68 '' + IL_00be: ldloca.s info + IL_00c0: ldc.i4.0 + IL_00c1: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_00c6: newobj instance void Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::.ctor(int32, + native int) + IL_00cb: stobj Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + .line 462,462 : 17,85 '' + IL_00d0: ldloca.s info + IL_00d2: ldarg.3 + IL_00d3: ldc.i4.0 + IL_00d4: call valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_00d9: stloc.s CS$0$0002 + IL_00db: ldloca.s CS$0$0002 + IL_00dd: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_00e2: stfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Module + .line 463,463 : 17,50 '' + IL_00e7: ldloca.s info + IL_00e9: ldloc.2 + IL_00ea: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::BlobSize + .line 464,464 : 17,38 '' + IL_00ef: ldloca.s info + IL_00f1: ldloc.0 + IL_00f2: stfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::BlobPtr + .line 465,465 : 17,47 '' + IL_00f7: ldloca.s info + IL_00f9: ldarg.s 'type' + IL_00fb: conv.u2 + IL_00fc: stfld uint16 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::EventType + .line 466,466 : 17,42 '' + IL_0101: ldloca.s info + IL_0103: ldarg.s 'flags' + IL_0105: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Flags + .line 467,467 : 17,110 '' + IL_010a: ldloca.s info + IL_010c: ldarga.s timestamp + IL_010e: call instance bool valuetype [mscorlib]System.Nullable`1::get_HasValue() + IL_0113: brtrue.s IL_011c + + IL_0115: call valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::get_Now() + IL_011a: br.s IL_0123 + + IL_011c: ldarga.s timestamp + IL_011e: call instance !0 valuetype [mscorlib]System.Nullable`1::get_Value() + IL_0123: nop + IL_0124: call uint32 Virtuoso.Miranda.Plugins.Helpers.Utilities::GetTimestamp(valuetype [mscorlib]System.DateTime) + IL_0129: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Timestamp + .line 469,469 : 17,101 '' + IL_012e: ldloca.s info + IL_0130: ldc.i4.2 + IL_0131: newarr [mscorlib]System.IntPtr + IL_0136: stloc.s CS$0$0003 + IL_0138: ldloc.s CS$0$0003 + IL_013a: ldc.i4.0 + IL_013b: ldelema [mscorlib]System.IntPtr + IL_0140: ldloc.0 + IL_0141: stobj [mscorlib]System.IntPtr + IL_0146: ldloc.s CS$0$0003 + IL_0148: ldc.i4.1 + IL_0149: ldelema [mscorlib]System.IntPtr + IL_014e: ldloca.s info + IL_0150: ldfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Module + IL_0155: stobj [mscorlib]System.IntPtr + IL_015a: ldloc.s CS$0$0003 + IL_015c: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + native int[]) + IL_0161: stloc.1 + .line 470,470 : 17,152 '' + IL_0162: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0167: ldstr "DB/Event/Add" + IL_016c: ldarg.1 + IL_016d: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0172: ldloca.s nativeStruct + IL_0174: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0179: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_017e: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0183: stloc.s eventHandle + .line 472,472 : 17,66 '' + IL_0185: ldloc.s eventHandle + IL_0187: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_018c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0191: brfalse.s IL_019a + + IL_0193: ldarg.s throwOnFailure + IL_0195: ldc.i4.0 + IL_0196: ceq + IL_0198: br.s IL_019b + + IL_019a: ldc.i4.1 + IL_019b: nop + IL_019c: stloc.s CS$4$0001 + IL_019e: ldloc.s CS$4$0001 + IL_01a0: brtrue.s IL_01c4 + + .line 473,473 : 21,174 '' + IL_01a2: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_01a7: ldstr "DB/Event/Add" + IL_01ac: ldloca.s eventHandle + IL_01ae: constrained. [mscorlib]System.IntPtr + IL_01b4: callvirt instance string [mscorlib]System.Object::ToString() + IL_01b9: call string [mscorlib]System.String::Format(string, + object, + object) + IL_01be: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_01c3: throw + + .line 475,475 : 21,40 '' + IL_01c4: ldloc.s eventHandle + IL_01c6: stloc.s CS$1$0000 + IL_01c8: leave.s IL_01d5 + + .line 478,478 : 13,14 '' + } // end .try + finally + { + IL_01ca: nop + .line 479,479 : 17,37 '' + IL_01cb: ldloca.s nativeStruct + IL_01cd: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_01d2: nop + .line 480,480 : 13,14 '' + IL_01d3: nop + IL_01d4: endfinally + } // end handler + IL_01d5: nop + .line 481,481 : 9,10 '' + IL_01d6: ldloc.s CS$1$0000 + IL_01d8: ret + } // end of method MirandaDatabase::AddEvent + + .method public hidebysig instance class [mscorlib]System.Collections.Generic.IEnumerable`1 + GetEventHandles(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo owner) cil managed + { + // Code size 43 (0x2b) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.IEnumerable`1 CS$1$0000, + [1] bool CS$4$0001) + .line 484,484 : 9,10 '' + IL_0000: nop + .line 485,485 : 13,31 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.1 + IL_000c: ldloc.1 + IL_000d: brtrue.s IL_001a + + .line 486,486 : 17,58 '' + IL_000f: ldstr "owner" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 488,488 : 13,57 '' + IL_001a: ldarg.0 + IL_001b: ldarg.1 + IL_001c: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0021: call instance class [mscorlib]System.Collections.Generic.IEnumerable`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetEventHandles(native int) + IL_0026: stloc.0 + IL_0027: br.s IL_0029 + + .line 489,489 : 9,10 '' + IL_0029: ldloc.0 + IL_002a: ret + } // end of method MirandaDatabase::GetEventHandles + + .method public hidebysig instance class [mscorlib]System.Collections.Generic.IEnumerable`1 + GetEventHandles(native int ownerHandle) cil managed + { + // Code size 28 (0x1c) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c' V_0, + [1] class [mscorlib]System.Collections.Generic.IEnumerable`1 V_1) + IL_0000: ldc.i4.s -2 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::.ctor(int32) + IL_0007: stloc.0 + IL_0008: ldloc.0 + IL_0009: ldarg.0 + IL_000a: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>4__this' + IL_000f: ldloc.0 + IL_0010: ldarg.1 + IL_0011: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>3__ownerHandle' + IL_0016: ldloc.0 + IL_0017: stloc.1 + IL_0018: br.s IL_001a + + IL_001a: ldloc.1 + IL_001b: ret + } // end of method MirandaDatabase::GetEventHandles + + .method private hidebysig instance int32 + 'b__0'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 21 (0x15) + .maxstack 5 + .locals init ([0] int32 CS$1$0000) + .line 99,99 : 21,22 '' + IL_0000: nop + .line 100,100 : 25,92 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventAddedEventHandler + IL_0008: ldc.i4.0 + IL_0009: ldarg.1 + IL_000a: ldarg.2 + IL_000b: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseDbEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + bool, + native uint, + native int) + IL_0010: stloc.0 + IL_0011: br.s IL_0013 + + IL_0013: ldloc.0 + IL_0014: ret + } // end of method MirandaDatabase::'b__0' + + .method private hidebysig instance int32 + 'b__1'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 21 (0x15) + .maxstack 5 + .locals init ([0] int32 CS$1$0000) + .line 119,119 : 21,22 '' + IL_0000: nop + .line 120,120 : 25,94 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventDeletedEventHandler + IL_0008: ldc.i4.0 + IL_0009: ldarg.1 + IL_000a: ldarg.2 + IL_000b: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseDbEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + bool, + native uint, + native int) + IL_0010: stloc.0 + IL_0011: br.s IL_0013 + + IL_0013: ldloc.0 + IL_0014: ret + } // end of method MirandaDatabase::'b__1' + + .method private hidebysig instance int32 + 'b__2'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 21 (0x15) + .maxstack 5 + .locals init ([0] int32 CS$1$0000) + .line 142,142 : 21,22 '' + IL_0000: nop + .line 143,143 : 25,97 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::BeforeEventAddedEventHandler + IL_0008: ldc.i4.1 + IL_0009: ldarg.1 + IL_000a: ldarg.2 + IL_000b: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseDbEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + bool, + native uint, + native int) + IL_0010: stloc.0 + IL_0011: br.s IL_0013 + + IL_0013: ldloc.0 + IL_0014: ret + } // end of method MirandaDatabase::'b__2' + + .method private hidebysig instance int32 + 'b__3'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 19 (0x13) + .maxstack 3 + .locals init ([0] int32 CS$1$0000) + .line 202,202 : 21,22 '' + IL_0000: nop + .line 203,203 : 25,84 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactAddedEventHandler + IL_0008: ldarg.1 + IL_0009: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseContactEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + native uint) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + IL_0011: ldloc.0 + IL_0012: ret + } // end of method MirandaDatabase::'b__3' + + .method private hidebysig instance int32 + 'b__4'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 19 (0x13) + .maxstack 3 + .locals init ([0] int32 CS$1$0000) + .line 222,222 : 21,22 '' + IL_0000: nop + .line 223,223 : 25,86 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactDeletedEventHandler + IL_0008: ldarg.1 + IL_0009: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseContactEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + native uint) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + IL_0011: ldloc.0 + IL_0012: ret + } // end of method MirandaDatabase::'b__4' + + .method private hidebysig instance int32 + 'b__5'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 14 (0xe) + .maxstack 3 + .locals init ([0] int32 CS$1$0000) + .line 242,242 : 21,22 '' + IL_0000: nop + .line 243,243 : 25,73 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseContactSettingEvent(native uint, + native int) + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + IL_000c: ldloc.0 + IL_000d: ret + } // end of method MirandaDatabase::'b__5' + + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 EventAdded + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_EventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_EventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::EventAdded + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 EventDeleted + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_EventDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_EventDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::EventDeleted + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 BeforeEventAdded + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_BeforeEventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_BeforeEventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::BeforeEventAdded + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactAdded + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_ContactAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_ContactAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::ContactAdded + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactDeleted + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_ContactDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_ContactDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::ContactDeleted + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactSettingChanged + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_ContactSettingChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_ContactSettingChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::ContactSettingChanged + .property instance string ProfileName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::get_ProfileName() + } // end of property MirandaDatabase::ProfileName + .property instance string ProfilePath() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::get_ProfilePath() + } // end of property MirandaDatabase::ProfilePath +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject +{ + .field private static literal string MS_DB_EVENT_GETBLOBSIZE = "DB/Event/GetBlobSize" + .field private static literal string MS_DB_EVENT_GET = "DB/Event/Get" + .field private static literal string MS_DB_TIME_TIMESTAMPTOSTRING = "DB/Time/TimestampToString" + .field private static literal string MS_DB_EVENT_GETCONTACT = "DB/Event/GetContact" + .field private static literal string MS_DB_EVENT_GETTEXT = "DB/Event/GetText" + .field private native int mirandaHandle + .field private class Virtuoso.Miranda.Plugins.Infrastructure.Protocol owningModule + .field private valuetype [mscorlib]System.DateTime timestamp + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties 'flags' + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType 'type' + .field private string data + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 93,93 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\DatabaseEventInfo.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 93,93 : 39,40 '' + IL_0007: nop + .line 93,93 : 41,42 '' + IL_0008: nop + IL_0009: ret + } // end of method DatabaseEventInfo::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(native int eventHandle) cil managed + { + // Code size 83 (0x53) + .maxstack 6 + .locals init ([0] bool CS$4$0000) + .line 99,99 : 9,56 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 100,100 : 9,10 '' + IL_0007: nop + .line 101,101 : 13,44 '' + IL_0008: ldarg.1 + IL_0009: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000e: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0013: ldc.i4.0 + IL_0014: ceq + IL_0016: stloc.0 + IL_0017: ldloc.0 + IL_0018: brtrue.s IL_0025 + + .line 102,102 : 17,64 '' + IL_001a: ldstr "eventHandle" + IL_001f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0024: throw + + .line 104,104 : 13,46 '' + IL_0025: ldarg.0 + IL_0026: ldarg.1 + IL_0027: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::mirandaHandle + .line 105,105 : 13,101 '' + IL_002c: ldarg.1 + IL_002d: ldarg.0 + IL_002e: ldflda valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'type' + IL_0033: ldarg.0 + IL_0034: ldflda valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'flags' + IL_0039: ldarg.0 + IL_003a: ldflda string Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::data + IL_003f: ldarg.0 + IL_0040: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::owningModule + IL_0045: ldarg.0 + IL_0046: ldflda valuetype [mscorlib]System.DateTime Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::timestamp + IL_004b: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::FromHandle(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties&, + string&, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocol&, + valuetype [mscorlib]System.DateTime&) + IL_0050: nop + .line 106,106 : 9,10 '' + IL_0051: nop + IL_0052: ret + } // end of method DatabaseEventInfo::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + FromHandle(native int eventHandle) cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo CS$1$0000) + .line 114,114 : 9,10 '' + IL_0000: nop + .line 115,115 : 13,55 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::.ctor(native int) + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 116,116 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method DatabaseEventInfo::FromHandle + + .method public hidebysig static void FromHandle(native int eventHandle, + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType& 'type', + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties& 'flags', + [out] string& data, + [out] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol& owningModule, + [out] valuetype [mscorlib]System.DateTime& timestamp) cil managed + { + // Code size 87 (0x57) + .maxstack 8 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO dbEventInfo, + [2] class [mscorlib]System.Exception e, + [3] bool CS$4$0000) + .line 132,132 : 9,10 '' + IL_0000: nop + .line 133,133 : 13,41 '' + IL_0001: ldnull + IL_0002: stloc.0 + .line 136,136 : 13,14 '' + .try + { + .try + { + IL_0003: nop + .line 138,138 : 17,18 '' + IL_0004: nop + .line 140,140 : 21,82 '' + IL_0005: ldarg.0 + IL_0006: ldloca.s dbEventInfo + IL_0008: ldloca.s buffer + IL_000a: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::PrepareDbEventInfo(native int, + valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer&) + IL_000f: nop + .line 142,142 : 21,136 '' + IL_0010: ldloca.s dbEventInfo + IL_0012: ldarg.0 + IL_0013: ldloc.0 + IL_0014: ldarg.1 + IL_0015: ldarg.2 + IL_0016: ldarg.3 + IL_0017: ldarg.s owningModule + IL_0019: ldarg.s timestamp + IL_001b: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventInfo(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&, + native int, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties&, + string&, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocol&, + valuetype [mscorlib]System.DateTime&) + IL_0020: nop + .line 143,143 : 17,18 '' + IL_0021: nop + .line 144,144 : 13,14 '' + IL_0022: nop + IL_0023: leave.s IL_0037 + + .line 145,145 : 13,37 '' + } // end .try + catch Virtuoso.Miranda.Plugins.Native.MirandaException + { + IL_0025: pop + .line 146,146 : 13,14 '' + IL_0026: nop + .line 147,147 : 17,23 '' + IL_0027: rethrow + .line 149,149 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_0029: stloc.2 + .line 150,150 : 13,14 '' + IL_002a: nop + .line 151,151 : 17,107 '' + IL_002b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotFinishMarshaling() + IL_0030: ldloc.2 + IL_0031: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string, + class [mscorlib]System.Exception) + IL_0036: throw + + } // end handler + IL_0037: nop + IL_0038: leave.s IL_0055 + + .line 154,154 : 13,14 '' + } // end .try + finally + { + IL_003a: nop + .line 155,155 : 17,36 '' + IL_003b: ldloc.0 + IL_003c: ldnull + IL_003d: ceq + IL_003f: stloc.3 + IL_0040: ldloc.3 + IL_0041: brtrue.s IL_0053 + + .line 156,156 : 17,18 '' + IL_0043: nop + .line 157,157 : 21,37 '' + IL_0044: ldloc.0 + IL_0045: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + IL_004a: nop + .line 158,158 : 21,61 '' + IL_004b: ldloc.0 + IL_004c: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_0051: nop + .line 159,159 : 17,18 '' + IL_0052: nop + .line 160,160 : 13,14 '' + IL_0053: nop + IL_0054: endfinally + } // end handler + IL_0055: nop + .line 161,161 : 9,10 '' + IL_0056: ret + } // end of method DatabaseEventInfo::FromHandle + + .method private hidebysig static void PrepareDbEventInfo(native int eventHandle, + [out] valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo, + [out] class Virtuoso.Miranda.Plugins.Native.InteropBuffer& buffer) cil managed + { + // Code size 101 (0x65) + .maxstack 4 + .locals init ([0] int32 blobSize, + [1] bool CS$4$0000) + .line 170,170 : 9,10 '' + IL_0000: nop + .line 171,171 : 13,125 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "DB/Event/GetBlobSize" + IL_000b: ldarga.s eventHandle + IL_000d: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0012: ldc.i4.0 + IL_0013: conv.u + IL_0014: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0019: stloc.0 + .line 173,173 : 13,32 '' + IL_001a: ldloc.0 + IL_001b: ldc.i4.m1 + IL_001c: ceq + IL_001e: ldc.i4.0 + IL_001f: ceq + IL_0021: stloc.1 + IL_0022: ldloc.1 + IL_0023: brtrue.s IL_0041 + + .line 174,174 : 17,175 '' + IL_0025: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_002a: ldstr "DB/Event/GetBlobSize" + IL_002f: ldloca.s blobSize + IL_0031: call instance string [mscorlib]System.Int32::ToString() + IL_0036: call string [mscorlib]System.String::Format(string, + object, + object) + IL_003b: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0040: throw + + .line 177,177 : 13,64 '' + IL_0041: ldarg.2 + IL_0042: ldloc.0 + IL_0043: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer(int32) + IL_0048: stind.ref + .line 178,178 : 13,27 '' + IL_0049: ldarg.2 + IL_004a: ldind.ref + IL_004b: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + IL_0050: nop + .line 180,180 : 13,68 '' + IL_0051: ldarg.1 + IL_0052: ldloc.0 + IL_0053: ldarg.2 + IL_0054: ldind.ref + IL_0055: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_005a: newobj instance void Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::.ctor(int32, + native int) + IL_005f: stobj Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + .line 181,181 : 9,10 '' + IL_0064: ret + } // end of method DatabaseEventInfo::PrepareDbEventInfo + + .method private hidebysig instance void + MarshalEventInfo(native int pDbEventInfo) cil managed + { + // Code size 110 (0x6e) + .maxstack 8 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO info, + [1] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer) + .line 188,188 : 9,10 '' + IL_0000: nop + .line 189,189 : 13,103 '' + IL_0001: ldarg.1 + IL_0002: ldtoken Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + IL_0007: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000c: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_0011: unbox.any Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + IL_0016: stloc.0 + .line 192,192 : 13,88 '' + IL_0017: ldloca.s info + IL_0019: ldfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::BlobSize + IL_001e: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer(int32) + IL_0023: stloc.1 + .line 195,195 : 13,14 '' + .try + { + IL_0024: nop + .line 196,196 : 17,31 '' + IL_0025: ldloc.1 + IL_0026: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + IL_002b: nop + .line 197,197 : 17,125 '' + IL_002c: ldloca.s info + IL_002e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0033: ldloc.1 + IL_0034: ldarg.0 + IL_0035: ldflda valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'type' + IL_003a: ldarg.0 + IL_003b: ldflda valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'flags' + IL_0040: ldarg.0 + IL_0041: ldflda string Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::data + IL_0046: ldarg.0 + IL_0047: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::owningModule + IL_004c: ldarg.0 + IL_004d: ldflda valuetype [mscorlib]System.DateTime Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::timestamp + IL_0052: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventInfo(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&, + native int, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties&, + string&, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocol&, + valuetype [mscorlib]System.DateTime&) + IL_0057: nop + .line 198,198 : 13,14 '' + IL_0058: nop + IL_0059: leave.s IL_006c + + .line 200,200 : 13,14 '' + } // end .try + finally + { + IL_005b: nop + .line 201,201 : 17,33 '' + IL_005c: ldloc.1 + IL_005d: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + IL_0062: nop + .line 202,202 : 17,57 '' + IL_0063: ldloc.1 + IL_0064: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_0069: nop + .line 203,203 : 13,14 '' + IL_006a: nop + IL_006b: endfinally + } // end handler + IL_006c: nop + .line 204,204 : 9,10 '' + IL_006d: ret + } // end of method DatabaseEventInfo::MarshalEventInfo + + .method private hidebysig static void GetEventInfo(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo, + native int eventHandle, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer blobBuffer, + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType& 'type', + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties& 'flags', + [out] string& data, + [out] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol& owningModule, + [out] valuetype [mscorlib]System.DateTime& timestamp) cil managed + { + // Code size 82 (0x52) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context, + [1] bool CS$4$0000) + .line 218,218 : 9,10 '' + IL_0000: nop + .line 219,219 : 13,61 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: stloc.0 + .line 222,222 : 13,14 '' + IL_0007: nop + .line 224,224 : 17,48 '' + IL_0008: ldarg.1 + IL_0009: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000e: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0013: ldc.i4.0 + IL_0014: ceq + IL_0016: stloc.1 + IL_0017: ldloc.1 + IL_0018: brtrue.s IL_0022 + + .line 225,225 : 21,70 '' + IL_001a: ldarg.0 + IL_001b: ldarg.1 + IL_001c: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::PopulateBlobBuffer(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&, + native int) + IL_0021: nop + .line 227,227 : 17,65 '' + IL_0022: ldarg.3 + IL_0023: ldarg.0 + IL_0024: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::EventType + IL_0029: conv.i2 + IL_002a: stind.i2 + .line 228,228 : 17,68 '' + IL_002b: ldarg.s 'flags' + IL_002d: ldarg.0 + IL_002e: ldfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Flags + IL_0033: stind.i4 + .line 229,229 : 17,54 '' + IL_0034: ldarg.s data + IL_0036: ldarg.0 + IL_0037: call string Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventData(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&) + IL_003c: stind.ref + .line 230,230 : 13,14 '' + IL_003d: nop + .line 232,232 : 13,60 '' + IL_003e: ldarg.s owningModule + IL_0040: ldarg.0 + IL_0041: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventModule(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&) + IL_0046: stind.ref + .line 233,233 : 13,75 '' + IL_0047: ldarg.0 + IL_0048: ldarg.2 + IL_0049: ldarg.s timestamp + IL_004b: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventTimestamp(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer, + valuetype [mscorlib]System.DateTime&) + IL_0050: nop + .line 234,234 : 9,10 '' + IL_0051: ret + } // end of method DatabaseEventInfo::GetEventInfo + + .method private hidebysig static void PopulateBlobBuffer(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo, + native int eventHandle) cil managed + { + // Code size 68 (0x44) + .maxstack 4 + .locals init ([0] int32 result, + [1] native int& pinned pDbEventInfo, + [2] bool CS$4$0000) + .line 243,243 : 9,10 '' + IL_0000: nop + .line 246,246 : 20,53 '' + IL_0001: ldarg.0 + IL_0002: stloc.1 + .line 247,247 : 17,123 '' + IL_0003: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0008: ldstr "DB/Event/Get" + IL_000d: ldarga.s eventHandle + IL_000f: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0014: ldloc.1 + IL_0015: conv.i + IL_0016: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_001b: stloc.0 + IL_001c: ldc.i4.0 + IL_001d: conv.u + IL_001e: stloc.1 + .line 249,249 : 13,29 '' + IL_001f: ldloc.0 + IL_0020: ldc.i4.0 + IL_0021: ceq + IL_0023: stloc.2 + IL_0024: ldloc.2 + IL_0025: brtrue.s IL_0043 + + .line 250,250 : 17,165 '' + IL_0027: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_002c: ldstr "DB/Event/Get" + IL_0031: ldloca.s result + IL_0033: call instance string [mscorlib]System.Int32::ToString() + IL_0038: call string [mscorlib]System.String::Format(string, + object, + object) + IL_003d: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0042: throw + + .line 251,251 : 9,10 '' + IL_0043: ret + } // end of method DatabaseEventInfo::PopulateBlobBuffer + + .method private hidebysig static void GetEventTimestamp(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer blobBuffer, + [out] valuetype [mscorlib]System.DateTime& timestamp) cil managed + { + // Code size 118 (0x76) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING timeToString) + .line 260,260 : 9,10 '' + IL_0000: nop + .line 262,262 : 13,14 '' + .try + { + IL_0001: nop + .line 263,263 : 17,73 '' + IL_0002: ldloca.s timeToString + IL_0004: ldstr "s D" + IL_0009: newobj instance void Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::.ctor(string) + IL_000e: stobj Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING + .line 264,264 : 17,57 '' + IL_0013: ldloca.s timeToString + IL_0015: ldarg.1 + IL_0016: callvirt instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_001b: stfld int32 Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::MaxBytes + .line 265,265 : 17,57 '' + IL_0020: ldloca.s timeToString + IL_0022: ldarg.1 + IL_0023: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0028: stfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Output + .line 268,268 : 17,18 '' + IL_002d: nop + .line 269,269 : 21,137 '' + IL_002e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0033: ldstr "DB/Time/TimestampToString" + IL_0038: ldarg.0 + IL_0039: ldfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Timestamp + IL_003e: conv.u + IL_003f: ldloca.s timeToString + IL_0041: conv.u + IL_0042: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0047: pop + .line 270,270 : 17,18 '' + IL_0048: nop + .line 272,272 : 17,106 '' + IL_0049: ldarg.2 + IL_004a: ldloca.s timeToString + IL_004c: ldfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Output + IL_0051: ldc.i4.0 + IL_0052: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0057: call valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::Parse(string) + IL_005c: stobj [mscorlib]System.DateTime + .line 273,273 : 13,14 '' + IL_0061: nop + IL_0062: leave.s IL_0074 + + .line 274,274 : 13,36 '' + } // end .try + catch [mscorlib]System.FormatException + { + IL_0064: pop + .line 275,275 : 13,14 '' + IL_0065: nop + .line 276,276 : 17,47 '' + IL_0066: ldarg.2 + IL_0067: ldsfld valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::MinValue + IL_006c: stobj [mscorlib]System.DateTime + .line 277,277 : 13,14 '' + IL_0071: nop + IL_0072: leave.s IL_0074 + + } // end handler + IL_0074: nop + .line 278,278 : 9,10 '' + IL_0075: ret + } // end of method DatabaseEventInfo::GetEventTimestamp + + .method private hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + GetEventModule(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo) cil managed + { + // Code size 81 (0x51) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol owningModule, + [1] bool moduleFound, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol CS$1$0000, + [3] bool CS$4$0001) + .line 286,286 : 9,10 '' + IL_0000: nop + .line 288,288 : 13,38 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.1 + .line 290,290 : 13,51 '' + IL_0003: ldarg.0 + IL_0004: ldfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Module + IL_0009: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000e: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0013: ldc.i4.0 + IL_0014: ceq + IL_0016: stloc.3 + IL_0017: ldloc.3 + IL_0018: brtrue.s IL_003a + + .line 291,291 : 17,155 '' + IL_001a: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_001f: callvirt instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Protocols() + IL_0024: ldarg.0 + IL_0025: ldfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Module + IL_002a: ldc.i4.0 + IL_002b: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0030: ldloca.s owningModule + IL_0032: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::TryGetValue(!0, + !1&) + IL_0037: stloc.1 + IL_0038: br.s IL_0040 + + .line 293,293 : 17,57 '' + IL_003a: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_003f: stloc.0 + .line 295,295 : 13,30 '' + IL_0040: ldloc.1 + IL_0041: stloc.3 + IL_0042: ldloc.3 + IL_0043: brtrue.s IL_004b + + .line 296,296 : 17,57 '' + IL_0045: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_004a: stloc.0 + .line 298,298 : 13,33 '' + IL_004b: ldloc.0 + IL_004c: stloc.2 + IL_004d: br.s IL_004f + + .line 299,299 : 9,10 '' + IL_004f: ldloc.2 + IL_0050: ret + } // end of method DatabaseEventInfo::GetEventModule + + .method private hidebysig static string + GetEventData(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo) cil managed + { + // Code size 164 (0xa4) + .maxstack 4 + .locals init ([0] string data, + [1] valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT dbGetText, + [2] native int pText, + [3] native int& pinned pDbEventInfo, + [4] string CS$1$0000, + [5] bool CS$4$0001) + .line 307,307 : 9,10 '' + IL_0000: nop + .line 310,310 : 13,61 '' + IL_0001: ldloca.s dbGetText + IL_0003: initobj Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT + .line 311,311 : 13,36 '' + IL_0009: ldloca.s dbGetText + IL_000b: ldc.i4.0 + IL_000c: stfld int32 Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT::Codepage + .line 312,312 : 13,73 '' + IL_0011: ldloca.s dbGetText + IL_0013: ldc.i4 0xfc + IL_0018: stfld int32 Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT::DataType + .line 316,316 : 20,53 '' + IL_001d: ldarg.0 + IL_001e: stloc.3 + .line 317,317 : 13,14 '' + IL_001f: nop + .line 318,318 : 17,69 '' + IL_0020: ldloca.s dbGetText + IL_0022: ldloc.3 + IL_0023: conv.i + IL_0024: newobj instance void [mscorlib]System.IntPtr::.ctor(void*) + IL_0029: stfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT::DbEventInfoPtr + .line 319,319 : 17,113 '' + IL_002e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0033: ldstr "DB/Event/GetText" + IL_0038: ldc.i4.0 + IL_0039: conv.u + IL_003a: ldloca.s dbGetText + IL_003c: conv.u + IL_003d: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0042: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0047: stloc.2 + .line 320,320 : 13,14 '' + IL_0048: nop + IL_0049: ldc.i4.0 + IL_004a: conv.u + IL_004b: stloc.3 + .line 322,322 : 13,38 '' + IL_004c: ldloc.2 + IL_004d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0052: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0057: ldc.i4.0 + IL_0058: ceq + IL_005a: stloc.s CS$4$0001 + IL_005c: ldloc.s CS$4$0001 + IL_005e: brtrue.s IL_0082 + + .line 323,323 : 13,14 '' + IL_0060: nop + .line 324,324 : 17,74 '' + IL_0061: ldloc.2 + IL_0062: ldc.i4.1 + IL_0063: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0068: stloc.0 + .line 325,325 : 17,73 '' + IL_0069: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_006e: callvirt instance valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaMemoryManager() + IL_0073: ldfld class Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE::Free + IL_0078: ldloc.2 + IL_0079: callvirt instance native int Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype::Invoke(native int) + IL_007e: pop + .line 326,326 : 13,14 '' + IL_007f: nop + IL_0080: br.s IL_009c + + .line 328,328 : 17,158 '' + IL_0082: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0087: ldstr "DB/Event/GetText" + IL_008c: ldstr "null" + IL_0091: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0096: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_009b: throw + + .line 330,330 : 13,25 '' + IL_009c: ldloc.0 + IL_009d: stloc.s CS$1$0000 + IL_009f: br.s IL_00a1 + + .line 331,331 : 9,10 '' + IL_00a1: ldloc.s CS$1$0000 + IL_00a3: ret + } // end of method DatabaseEventInfo::GetEventData + + .method public hidebysig newslot specialname virtual final + instance native int get_MirandaHandle() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 340,340 : 17,18 '' + IL_0000: nop + .line 340,340 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::mirandaHandle + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 340,340 : 41,42 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method DatabaseEventInfo::get_MirandaHandle + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_OwningModule() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol CS$1$0000) + .line 346,346 : 17,18 '' + IL_0000: nop + .line 346,346 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::owningModule + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 346,346 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method DatabaseEventInfo::get_OwningModule + + .method public hidebysig specialname instance valuetype [mscorlib]System.DateTime + get_Timestamp() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype [mscorlib]System.DateTime CS$1$0000) + .line 352,352 : 17,18 '' + IL_0000: nop + .line 352,352 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype [mscorlib]System.DateTime Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::timestamp + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 352,352 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method DatabaseEventInfo::get_Timestamp + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties + get_Flags() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties CS$1$0000) + .line 358,358 : 17,18 '' + IL_0000: nop + .line 358,358 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'flags' + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 358,358 : 33,34 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method DatabaseEventInfo::get_Flags + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType + get_Type() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType CS$1$0000) + .line 364,364 : 17,18 '' + IL_0000: nop + .line 364,364 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'type' + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 364,364 : 32,33 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method DatabaseEventInfo::get_Type + + .method public hidebysig specialname instance string + get_Data() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 370,370 : 17,18 '' + IL_0000: nop + .line 370,370 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::data + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 370,370 : 32,33 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method DatabaseEventInfo::get_Data + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + FromPointer(native int pDbEventInfo) cil managed + { + // Code size 21 (0x15) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo info, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo CS$1$0000) + .line 383,383 : 9,10 '' + IL_0000: nop + .line 384,384 : 13,62 '' + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::.ctor() + IL_0006: stloc.0 + .line 385,385 : 13,49 '' + IL_0007: ldloc.0 + IL_0008: ldarg.0 + IL_0009: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::MarshalEventInfo(native int) + IL_000e: nop + .line 387,387 : 13,25 '' + IL_000f: ldloc.0 + IL_0010: stloc.1 + IL_0011: br.s IL_0013 + + .line 388,388 : 9,10 '' + IL_0013: ldloc.1 + IL_0014: ret + } // end of method DatabaseEventInfo::FromPointer + + .method public hidebysig instance native int + GetContactHandle() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 395,395 : 9,10 '' + IL_0000: nop + .line 396,396 : 13,52 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::mirandaHandle + IL_0007: call native int Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetContactHandle(native int) + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 397,397 : 9,10 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method DatabaseEventInfo::GetContactHandle + + .method public hidebysig static native int + GetContactHandle(native int eventHandle) cil managed + { + // Code size 90 (0x5a) + .maxstack 4 + .locals init ([0] int32 contactHandle, + [1] native int CS$1$0000, + [2] bool CS$4$0001) + .line 405,405 : 9,10 '' + IL_0000: nop + .line 406,406 : 13,44 '' + IL_0001: ldarg.0 + IL_0002: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0007: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.2 + IL_0010: ldloc.2 + IL_0011: brtrue.s IL_001e + + .line 407,407 : 17,64 '' + IL_0013: ldstr "eventHandle" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 409,409 : 13,118 '' + IL_001e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0023: ldstr "DB/Event/GetContact" + IL_0028: ldarg.0 + IL_0029: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002e: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0033: stloc.0 + .line 411,411 : 13,37 '' + IL_0034: ldloc.0 + IL_0035: ldc.i4.m1 + IL_0036: ceq + IL_0038: ldc.i4.0 + IL_0039: ceq + IL_003b: stloc.2 + IL_003c: ldloc.2 + IL_003d: brtrue.s IL_004f + + .line 412,412 : 17,102 '' + IL_003f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidHandle() + IL_0044: ldstr "eventHandle" + IL_0049: newobj instance void [mscorlib]System.ArgumentException::.ctor(string, + string) + IL_004e: throw + + .line 414,414 : 13,42 '' + IL_004f: ldloc.0 + IL_0050: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0055: stloc.1 + IL_0056: br.s IL_0058 + + .line 415,415 : 9,10 '' + IL_0058: ldloc.1 + IL_0059: ret + } // end of method DatabaseEventInfo::GetContactHandle + + .property instance native int MirandaHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_MirandaHandle() + } // end of property DatabaseEventInfo::MirandaHandle + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + OwningModule() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_OwningModule() + } // end of property DatabaseEventInfo::OwningModule + .property instance valuetype [mscorlib]System.DateTime + Timestamp() + { + .get instance valuetype [mscorlib]System.DateTime Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Timestamp() + } // end of property DatabaseEventInfo::Timestamp + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties + Flags() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Flags() + } // end of property DatabaseEventInfo::Flags + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType + Type() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Type() + } // end of property DatabaseEventInfo::Type + .property instance string Data() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Data() + } // end of property DatabaseEventInfo::Data +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname uint8 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Deleted = uint8(0x00) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Byte = uint8(0x01) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType UInt16 = uint8(0x02) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType UInt32 = uint8(0x04) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType AsciiString = uint8(0xFF) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Blob = uint8(0xFE) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType UTF8String = uint8(0xFD) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType UnicodeString = uint8(0xFC) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Ignore = int32(0x00000032) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Protocol = int32(0x000003E8) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Encryption = int32(0x000007D0) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Filter = int32(0x00000BB8) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Translation = int32(0x00000FA0) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Other = int32(0x00002710) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind Capabilities = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind StatusModes = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind AwayStatusModes = int32(0x00000003) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field public specialname rtspecialname uint32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities None = uint32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities IMSend = uint32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities IMReceive = uint32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities IM = uint32(0x00000003) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities UrlSend = uint32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities UrlReceive = uint32(0x00000008) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Url = uint32(0x0000000C) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities FileSend = uint32(0x00000010) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities FileReceive = uint32(0x00000020) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities File = uint32(0x00000030) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ModeMessageSend = uint32(0x00000040) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ModeMessageReceive = uint32(0x00000080) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ModeMessage = uint32(0x000000C0) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ServerContactList = uint32(0x00000100) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities AuthorizationRequired = uint32(0x00000200) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Added = uint32(0x00000400) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities VisibleList = uint32(0x00000800) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities InvisibleList = uint32(0x00001000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities IndividualStatus = uint32(0x00002000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Extensible = uint32(0x00004000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities P2P = uint32(0x00008000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities NewUser = uint32(0x00010000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Chat = uint32(0x00020000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities IndividualModeMessage = uint32(0x00040000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities BasicSearch = uint32(0x00080000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ExtendedSearch = uint32(0x00100000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities CanRenameFile = uint32(0x00200000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities FileResume = uint32(0x00400000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities AddSearches = uint32(0x00800000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ContactSend = uint32(0x01000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ContactReceive = uint32(0x02000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Contact = uint32(0x03000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ChangeInfo = uint32(0x04000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities SearchByEmail = uint32(0x08000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities UserIDIsEmail = uint32(0x10000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities SearchByName = uint32(0x20000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ExtendedSearchUI = uint32(0x40000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities NumericUserID = uint32(0x80000000) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Online = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Invisible = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes ShortAway = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes LongAway = int32(0x00000008) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes LightDND = int32(0x00000010) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes HeavyDND = int32(0x00000020) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes FreeForChat = int32(0x00000040) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes OutToLunch = int32(0x00000080) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes OnThePhone = int32(0x00000100) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Idle = int32(0x00000200) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int16 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Message = int16(0x0000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Url = int16(0x0001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Contacts = int16(0x0002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Added = int16(0x03E8) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType AuthorizationRequest = int16(0x03E9) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType File = int16(0x03EA) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties None = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties First = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Sent = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Read = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Rtl = int32(0x00000008) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Utf8 = int32(0x00000010) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties KeepCurrent = int32(0xFFFFFFFF) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties None = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Grayed = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Checked = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Hidden = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties OnlineOnly = int32(0x00000008) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties OfflineOnly = int32(0x00000010) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties NotOnListOnly = int32(0x00000020) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties NonNotOnListOnly = int32(0x00000040) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.HotKeys + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Alt = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Ctrl = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Shift = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys WinKey = int32(0x00000008) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.HotKeys + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType Unknown = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType Byte = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType UInt16 = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType UInt32 = int32(0x00000003) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType String = int32(0x00000004) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.CallbackResult + extends [mscorlib]System.Object +{ + .field public static literal int32 Success = int32(0x00000000) + .field public static literal int32 Failure = int32(0xFFFFFFFF) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.CallbackResult + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.EventResult + extends [mscorlib]System.Object +{ + .field public static literal bool HonourEventChain = bool(false) + .field public static literal bool BreakEventChain = bool(true) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.EventResult + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties None = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties Urgent = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties Minor = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + extends [mscorlib]System.Attribute + implements Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 44 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ..D.....T..Allow + 4D 75 6C 74 69 70 6C 65 01 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 01 ) // rited. + .field private static initonly class [mscorlib]System.Type StringResolverType + .field private string text + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties 'flags' + .field private int32 position + .field private int32 popUpPosition + .field private bool useEmbeddedIcon + .field private bool hasIcon + .field private string iconID + .field private string service + .field private string popUpMenu + .field private string owningModule + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys hotKey + .field private class [mscorlib]System.Type stringResolver + .field private string tag + .field private bool isContactMenuItem + .field private native int mirandaHandle + .field private bool isAdditional + .method public hidebysig specialname instance string + get_Text() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 38,38 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MenuItemDeclarationAttribute.cs' + IL_0000: nop + .line 38,38 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::text + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 38,38 : 32,33 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_Text + + .method public hidebysig specialname instance void + set_Text(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 39,39 : 17,18 '' + IL_0000: nop + .line 39,39 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::text + .line 39,39 : 33,34 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_Text + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties + get_Flags() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties CS$1$0000) + .line 45,45 : 17,18 '' + IL_0000: nop + .line 45,45 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::'flags' + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 45,45 : 33,34 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_Flags + + .method public hidebysig specialname instance void + set_Flags(valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 46,46 : 17,18 '' + IL_0000: nop + .line 46,46 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::'flags' + .line 46,46 : 34,35 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_Flags + + .method public hidebysig specialname instance int32 + get_PopUpPosition() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 52,52 : 17,18 '' + IL_0000: nop + .line 52,52 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::popUpPosition + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 52,52 : 41,42 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_PopUpPosition + + .method public hidebysig specialname instance void + set_PopUpPosition(int32 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 53,53 : 17,18 '' + IL_0000: nop + .line 53,53 : 19,41 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::popUpPosition + .line 53,53 : 42,43 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_PopUpPosition + + .method public hidebysig specialname instance int32 + get_Position() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 57,57 : 17,18 '' + IL_0000: nop + .line 57,57 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::position + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 57,57 : 36,37 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_Position + + .method public hidebysig specialname instance void + set_Position(int32 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 58,58 : 17,18 '' + IL_0000: nop + .line 58,58 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::position + .line 58,58 : 37,38 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_Position + + .method public hidebysig specialname instance bool + get_UseEmbeddedIcon() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 64,64 : 17,18 '' + IL_0000: nop + .line 64,64 : 19,42 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::useEmbeddedIcon + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 64,64 : 43,44 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_UseEmbeddedIcon + + .method public hidebysig specialname instance void + set_UseEmbeddedIcon(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 65,65 : 17,18 '' + IL_0000: nop + .line 65,65 : 19,43 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::useEmbeddedIcon + .line 65,65 : 44,45 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_UseEmbeddedIcon + + .method public hidebysig specialname instance bool + get_HasIcon() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 71,71 : 17,18 '' + IL_0000: nop + .line 71,71 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::hasIcon + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 71,71 : 35,36 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_HasIcon + + .method public hidebysig specialname instance void + set_HasIcon(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 72,72 : 17,18 '' + IL_0000: nop + .line 72,72 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::hasIcon + .line 72,72 : 36,37 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_HasIcon + + .method public hidebysig specialname instance string + get_IconID() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 78,78 : 17,18 '' + IL_0000: nop + .line 78,78 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::iconID + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 78,78 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_IconID + + .method public hidebysig specialname instance void + set_IconID(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 79,79 : 17,18 '' + IL_0000: nop + .line 79,79 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::iconID + .line 79,79 : 35,36 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_IconID + + .method public hidebysig specialname instance string + get_Service() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 85,85 : 17,18 '' + IL_0000: nop + .line 85,85 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::service + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 85,85 : 35,36 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_Service + + .method assembly hidebysig specialname + instance void set_Service(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 86,86 : 26,27 '' + IL_0000: nop + .line 86,86 : 28,44 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::service + .line 86,86 : 45,46 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_Service + + .method public hidebysig specialname instance string + get_PopUpMenu() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 92,92 : 17,18 '' + IL_0000: nop + .line 92,92 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::popUpMenu + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 92,92 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_PopUpMenu + + .method public hidebysig specialname instance string + get_OwningModule() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 98,98 : 17,18 '' + IL_0000: nop + .line 98,98 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::owningModule + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 98,98 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_OwningModule + + .method public hidebysig specialname instance void + set_OwningModule(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 99,99 : 17,18 '' + IL_0000: nop + .line 99,99 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::owningModule + .line 99,99 : 41,42 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_OwningModule + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys + get_HotKey() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys CS$1$0000) + .line 105,105 : 17,18 '' + IL_0000: nop + .line 105,105 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::hotKey + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 105,105 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_HotKey + + .method public hidebysig specialname instance void + set_HotKey(valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 106,106 : 17,18 '' + IL_0000: nop + .line 106,106 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::hotKey + .line 106,106 : 35,36 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_HotKey + + .method public hidebysig specialname instance class [mscorlib]System.Type + get_StringResolver() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Type CS$1$0000) + .line 112,112 : 17,18 '' + IL_0000: nop + .line 112,112 : 19,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::stringResolver + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 112,112 : 42,43 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_StringResolver + + .method public hidebysig specialname instance string + get_Tag() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 118,118 : 17,18 '' + IL_0000: nop + .line 118,118 : 19,30 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::tag + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 118,118 : 31,32 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_Tag + + .method public hidebysig specialname instance void + set_Tag(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 119,119 : 17,18 '' + IL_0000: nop + .line 119,119 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::tag + .line 119,119 : 32,33 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_Tag + + .method public hidebysig specialname instance bool + get_IsContactMenuItem() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 125,125 : 17,18 '' + IL_0000: nop + .line 125,125 : 19,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::isContactMenuItem + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 125,125 : 45,46 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_IsContactMenuItem + + .method public hidebysig specialname instance void + set_IsContactMenuItem(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 126,126 : 17,18 '' + IL_0000: nop + .line 126,126 : 19,45 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::isContactMenuItem + .line 126,126 : 46,47 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_IsContactMenuItem + + .method public hidebysig newslot specialname virtual final + instance native int get_MirandaHandle() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 133,133 : 13,14 '' + IL_0000: nop + .line 134,134 : 17,43 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::mirandaHandle + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 135,135 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_MirandaHandle + + .method assembly hidebysig specialname + instance void set_MirandaHandle(native int 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 137,137 : 13,14 '' + IL_0000: nop + .line 138,138 : 17,44 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::mirandaHandle + .line 139,139 : 13,14 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_MirandaHandle + + .method public hidebysig specialname instance bool + get_IsAdditional() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 145,145 : 17,18 '' + IL_0000: nop + .line 145,145 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::isAdditional + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 145,145 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MenuItemDeclarationAttribute::get_IsAdditional + + .method public hidebysig specialname instance void + set_IsAdditional(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 146,146 : 17,18 '' + IL_0000: nop + .line 146,146 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::isAdditional + .line 146,146 : 41,42 '' + IL_0008: ret + } // end of method MenuItemDeclarationAttribute::set_IsAdditional + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 153,153 : 9,88 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldnull + IL_0004: ldnull + IL_0005: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string, + class [mscorlib]System.Type) + IL_000a: nop + .line 153,153 : 89,90 '' + IL_000b: nop + .line 153,153 : 91,92 '' + IL_000c: nop + IL_000d: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + class [mscorlib]System.Type stringResolver) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 155,155 : 9,113 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldarg.2 + IL_0004: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + class [mscorlib]System.Type) + IL_0009: nop + .line 155,155 : 114,115 '' + IL_000a: nop + .line 155,155 : 116,117 '' + IL_000b: nop + IL_000c: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + string service) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 157,157 : 9,107 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldarg.2 + IL_0004: ldnull + IL_0005: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string, + class [mscorlib]System.Type) + IL_000a: nop + .line 157,157 : 108,109 '' + IL_000b: nop + .line 157,157 : 110,111 '' + IL_000c: nop + IL_000d: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + string popUpMenu, + string service) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 159,159 : 9,130 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldarg.3 + IL_0004: ldnull + IL_0005: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string, + class [mscorlib]System.Type) + IL_000a: nop + .line 159,159 : 131,132 '' + IL_000b: nop + .line 159,159 : 133,134 '' + IL_000c: nop + IL_000d: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + string service, + class [mscorlib]System.Type stringResolver) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 161,161 : 9,138 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldarg.2 + IL_0004: ldarg.3 + IL_0005: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string, + class [mscorlib]System.Type) + IL_000a: nop + .line 161,161 : 139,140 '' + IL_000b: nop + .line 161,161 : 141,142 '' + IL_000c: nop + IL_000d: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + string popUpMenu, + string service, + class [mscorlib]System.Type stringResolver) cil managed + { + // Code size 114 (0x72) + .maxstack 4 + .locals init ([0] bool CS$4$0000) + .line 163,163 : 9,112 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + IL_0006: nop + .line 164,164 : 9,10 '' + IL_0007: nop + .line 165,165 : 13,30 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 166,166 : 17,57 '' + IL_0013: ldstr "text" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 168,168 : 13,30 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::text + .line 169,169 : 13,71 '' + IL_0025: ldarg.0 + IL_0026: ldarg.3 + IL_0027: brfalse.s IL_002c + + IL_0029: ldarg.3 + IL_002a: br.s IL_0031 + + IL_002c: ldsfld string [mscorlib]System.String::Empty + IL_0031: nop + IL_0032: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::service + .line 170,170 : 13,40 '' + IL_0037: ldarg.0 + IL_0038: ldarg.2 + IL_0039: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::popUpMenu + .line 171,171 : 13,50 '' + IL_003e: ldarg.0 + IL_003f: ldarg.s stringResolver + IL_0041: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::stringResolver + .line 176,176 : 13,106 '' + IL_0046: ldarg.s stringResolver + IL_0048: brfalse.s IL_005f + + IL_004a: ldarg.s stringResolver + IL_004c: callvirt instance class [mscorlib]System.Type [mscorlib]System.Type::GetType() + IL_0051: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.LanguagePackStringResolver + IL_0056: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_005b: ceq + IL_005d: br.s IL_0060 + + IL_005f: ldc.i4.1 + IL_0060: nop + IL_0061: stloc.0 + IL_0062: ldloc.0 + IL_0063: brtrue.s IL_0070 + + .line 177,177 : 17,65 '' + IL_0065: ldarg.0 + IL_0066: ldarg.1 + IL_0067: ldarg.2 + IL_0068: ldarg.s stringResolver + IL_006a: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::ResolveStrings(string, + string, + class [mscorlib]System.Type) + IL_006f: nop + .line 178,178 : 9,10 '' + IL_0070: nop + IL_0071: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method private hidebysig instance void + ResolveStrings(string text, + string popUpMenu, + class [mscorlib]System.Type stringResolver) cil managed + { + // Code size 200 (0xc8) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver resolver, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache cache, + [2] class [mscorlib]System.Exception e, + [3] bool CS$4$0000, + [4] class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache CS$2$0001) + .line 181,181 : 9,10 '' + IL_0000: nop + .line 183,183 : 13,14 '' + .try + { + IL_0001: nop + .line 184,184 : 17,112 '' + IL_0002: ldarg.3 + IL_0003: brfalse.s IL_001a + + IL_0005: ldarg.3 + IL_0006: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::StringResolverType + IL_000b: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0010: callvirt instance class [mscorlib]System.Type [mscorlib]System.Type::GetInterface(string) + IL_0015: ldnull + IL_0016: ceq + IL_0018: br.s IL_001b + + IL_001a: ldc.i4.1 + IL_001b: nop + IL_001c: stloc.3 + IL_001d: ldloc.3 + IL_001e: brtrue IL_00a7 + + .line 185,185 : 17,18 '' + IL_0023: nop + .line 186,186 : 21,53 '' + IL_0024: ldnull + IL_0025: stloc.0 + .line 187,187 : 21,79 '' + IL_0026: call class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::get_Singleton() + IL_002b: stloc.1 + .line 189,189 : 21,33 '' + IL_002c: ldloc.1 + IL_002d: dup + IL_002e: stloc.s CS$2$0001 + IL_0030: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0035: nop + .line 190,190 : 21,22 '' + .try + { + IL_0036: nop + .line 191,191 : 25,78 '' + IL_0037: ldloc.1 + IL_0038: ldarg.3 + IL_0039: ldloca.s resolver + IL_003b: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::TryGetValue(!0, + !1&) + IL_0040: stloc.3 + IL_0041: ldloc.3 + IL_0042: brtrue.s IL_0073 + + .line 192,192 : 25,26 '' + IL_0044: nop + .line 193,193 : 29,104 '' + IL_0045: ldarg.3 + IL_0046: ldc.i4.1 + IL_0047: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type, + bool) + IL_004c: castclass Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver + IL_0051: stloc.0 + .line 195,195 : 29,50 '' + IL_0052: ldloc.0 + IL_0053: ldnull + IL_0054: ceq + IL_0056: ldc.i4.0 + IL_0057: ceq + IL_0059: stloc.3 + IL_005a: ldloc.3 + IL_005b: brtrue.s IL_0069 + + .line 196,196 : 33,86 '' + IL_005d: ldarg.3 + IL_005e: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0063: newobj instance void [mscorlib]System.TypeLoadException::.ctor(string) + IL_0068: throw + + .line 198,198 : 33,69 '' + IL_0069: ldloc.1 + IL_006a: ldarg.3 + IL_006b: ldloc.0 + IL_006c: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, + !1) + IL_0071: nop + .line 199,199 : 25,26 '' + IL_0072: nop + .line 200,200 : 21,22 '' + IL_0073: nop + IL_0074: leave.s IL_007f + + } // end .try + finally + { + IL_0076: ldloc.s CS$2$0001 + IL_0078: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_007d: nop + IL_007e: endfinally + } // end handler + IL_007f: nop + .line 202,202 : 21,67 '' + IL_0080: ldarg.0 + IL_0081: ldloc.0 + IL_0082: ldarg.1 + IL_0083: ldarg.0 + IL_0084: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::tag + IL_0089: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver::ResolveString(string, + string) + IL_008e: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::text + .line 203,203 : 21,77 '' + IL_0093: ldarg.0 + IL_0094: ldloc.0 + IL_0095: ldarg.2 + IL_0096: ldarg.0 + IL_0097: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::tag + IL_009c: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver::ResolveString(string, + string) + IL_00a1: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::popUpMenu + .line 204,204 : 17,18 '' + IL_00a6: nop + .line 205,205 : 13,14 '' + IL_00a7: nop + IL_00a8: leave.s IL_00c6 + + .line 206,206 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_00aa: stloc.2 + .line 207,207 : 13,14 '' + IL_00ab: nop + .line 208,208 : 17,169 '' + IL_00ac: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_CannotLoadStringResolver() + IL_00b1: ldarg.3 + IL_00b2: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_00b7: call string [mscorlib]System.String::Format(string, + object) + IL_00bc: ldnull + IL_00bd: ldnull + IL_00be: ldnull + IL_00bf: ldloc.2 + IL_00c0: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_00c5: throw + + } // end handler + IL_00c6: nop + .line 210,210 : 9,10 '' + IL_00c7: ret + } // end of method MenuItemDeclarationAttribute::ResolveStrings + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 33,33 : 9,83 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::StringResolverType + IL_000f: ret + } // end of method MenuItemDeclarationAttribute::.cctor + + .property instance string Text() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Text() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Text(string) + } // end of property MenuItemDeclarationAttribute::Text + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties + Flags() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Flags() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Flags(valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties) + } // end of property MenuItemDeclarationAttribute::Flags + .property instance int32 PopUpPosition() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_PopUpPosition(int32) + .get instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_PopUpPosition() + } // end of property MenuItemDeclarationAttribute::PopUpPosition + .property instance int32 Position() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Position(int32) + .get instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Position() + } // end of property MenuItemDeclarationAttribute::Position + .property instance bool UseEmbeddedIcon() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_UseEmbeddedIcon() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon(bool) + } // end of property MenuItemDeclarationAttribute::UseEmbeddedIcon + .property instance bool HasIcon() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon(bool) + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_HasIcon() + } // end of property MenuItemDeclarationAttribute::HasIcon + .property instance string IconID() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IconID() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID(string) + } // end of property MenuItemDeclarationAttribute::IconID + .property instance string Service() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Service() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Service(string) + } // end of property MenuItemDeclarationAttribute::Service + .property instance string PopUpMenu() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_PopUpMenu() + } // end of property MenuItemDeclarationAttribute::PopUpMenu + .property instance string OwningModule() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_OwningModule(string) + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_OwningModule() + } // end of property MenuItemDeclarationAttribute::OwningModule + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys + HotKey() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HotKey(valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys) + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_HotKey() + } // end of property MenuItemDeclarationAttribute::HotKey + .property instance class [mscorlib]System.Type + StringResolver() + { + .get instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_StringResolver() + } // end of property MenuItemDeclarationAttribute::StringResolver + .property instance string Tag() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Tag(string) + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Tag() + } // end of property MenuItemDeclarationAttribute::Tag + .property instance bool IsContactMenuItem() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IsContactMenuItem() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem(bool) + } // end of property MenuItemDeclarationAttribute::IsContactMenuItem + .property instance native int MirandaHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_MirandaHandle() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_MirandaHandle(native int) + } // end of property MenuItemDeclarationAttribute::MirandaHandle + .property instance bool IsAdditional() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsAdditional(bool) + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IsAdditional() + } // end of property MenuItemDeclarationAttribute::IsAdditional +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs +{ + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo) cil managed + { + // Code size 42 (0x2a) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 35,35 : 9,64 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaContactEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs::.ctor() + IL_0006: nop + .line 36,36 : 9,10 '' + IL_0007: nop + .line 37,37 : 13,37 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_000f: ldc.i4.0 + IL_0010: ceq + IL_0012: stloc.0 + IL_0013: ldloc.0 + IL_0014: brtrue.s IL_0021 + + .line 38,38 : 17,64 '' + IL_0016: ldstr "contactInfo" + IL_001b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0020: throw + + .line 40,40 : 13,44 '' + IL_0021: ldarg.0 + IL_0022: ldarg.1 + IL_0023: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::contactInfo + .line 41,41 : 9,10 '' + IL_0028: nop + IL_0029: ret + } // end of method MirandaContactEventArgs::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_ContactInfo() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 49,49 : 17,18 '' + IL_0000: nop + .line 49,49 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::contactInfo + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 49,49 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContactEventArgs::get_ContactInfo + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + ContactInfo() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::get_ContactInfo() + } // end of property MirandaContactEventArgs::ContactInfo +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs +{ + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo eventInfo + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo eventInfo) cil managed + { + // Code size 40 (0x28) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 29,29 : 9,106 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaDatabaseEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: nop + .line 30,30 : 9,10 '' + IL_0008: nop + .line 31,31 : 13,35 '' + IL_0009: ldarg.2 + IL_000a: ldnull + IL_000b: ceq + IL_000d: ldc.i4.0 + IL_000e: ceq + IL_0010: stloc.0 + IL_0011: ldloc.0 + IL_0012: brtrue.s IL_001f + + .line 32,32 : 17,62 '' + IL_0014: ldstr "eventInfo" + IL_0019: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001e: throw + + .line 34,34 : 13,40 '' + IL_001f: ldarg.0 + IL_0020: ldarg.2 + IL_0021: stfld class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs::eventInfo + .line 35,35 : 9,10 '' + IL_0026: nop + IL_0027: ret + } // end of method MirandaDatabaseEventArgs::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + get_EventInfo() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo CS$1$0000) + .line 44,44 : 17,18 '' + IL_0000: nop + .line 44,44 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs::eventInfo + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 44,44 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaDatabaseEventArgs::get_EventInfo + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + EventInfo() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs::get_EventInfo() + } // end of property MirandaDatabaseEventArgs::EventInfo +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver +{ + .method public hidebysig newslot abstract virtual + instance string ResolveString(string stringToResolve, + string tag) cil managed + { + } // end of method IStringResolver::ResolveString + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.LanguagePackStringResolver + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 26,26 : 9,44 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\LanguagePackStringResolver.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 26,26 : 45,46 '' + IL_0007: nop + .line 26,26 : 47,48 '' + IL_0008: nop + IL_0009: ret + } // end of method LanguagePackStringResolver::.ctor + + .method public hidebysig newslot virtual final + instance string ResolveString(string stringToResolve, + string tag) cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 29,29 : 9,10 '' + IL_0000: nop + .line 30,30 : 13,66 '' + IL_0001: ldarg.1 + IL_0002: call string Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack::TranslateString(string) + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 31,31 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method LanguagePackStringResolver::ResolveString + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.LanguagePackStringResolver + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs +{ + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode newStatus + .field private class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + get_NewStatus() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode CS$1$0000) + .line 31,31 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ProtocolStatusChangeEventArgs.cs' + IL_0000: nop + .line 31,31 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::newStatus + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 31,31 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ProtocolStatusChangeEventArgs::get_NewStatus + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_Protocol() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol CS$1$0000) + .line 37,37 : 17,18 '' + IL_0000: nop + .line 37,37 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::protocol + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 37,37 : 36,37 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ProtocolStatusChangeEventArgs::get_Protocol + + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode newStatus) cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 44,44 : 9,86 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs::.ctor() + IL_0006: nop + .line 45,45 : 9,10 '' + IL_0007: nop + .line 46,46 : 13,40 '' + IL_0008: ldarg.0 + IL_0009: ldarg.2 + IL_000a: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::newStatus + .line 47,47 : 13,38 '' + IL_000f: ldarg.0 + IL_0010: ldarg.1 + IL_0011: stfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::protocol + .line 48,48 : 9,10 '' + IL_0016: nop + IL_0017: ret + } // end of method ProtocolStatusChangeEventArgs::.ctor + + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + NewStatus() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::get_NewStatus() + } // end of property ProtocolStatusChangeEventArgs::NewStatus + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + Protocol() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::get_Protocol() + } // end of property ProtocolStatusChangeEventArgs::Protocol +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatus + extends [mscorlib]System.Object +{ + .field private static literal string MS_AWAYMSG_SHOWAWAYMSG = "SRAway/GetMessage" + .field private static literal string MS_AWAYMSG_GETSTATUSMSG = "SRAway/GetStatusMessage" + .method public hidebysig static bool ShowAwayMessage(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 47 (0x2f) + .maxstack 4 + .locals init ([0] int32 result, + [1] bool CS$1$0000) + .line 40,40 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ProtocolStatus.cs' + IL_0000: nop + .line 41,41 : 13,121 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "SRAway/GetMessage" + IL_000b: ldarg.0 + IL_000c: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0011: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0016: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_001b: stloc.0 + .line 42,42 : 13,39 '' + IL_001c: ldloc.0 + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0025: nop + .line 44,44 : 13,32 '' + IL_0026: ldloc.0 + IL_0027: ldc.i4.0 + IL_0028: ceq + IL_002a: stloc.1 + IL_002b: br.s IL_002d + + .line 45,45 : 9,10 '' + IL_002d: ldloc.1 + IL_002e: ret + } // end of method ProtocolStatus::ShowAwayMessage + + .method public hidebysig static string + GetStatusMessage(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode status) cil managed + { + // Code size 170 (0xaa) + .maxstack 4 + .locals init ([0] native int statusPtr, + [1] class [mscorlib]System.Exception e, + [2] string CS$1$0000, + [3] bool CS$4$0001) + .line 48,48 : 9,10 '' + IL_0000: nop + .line 49,49 : 13,61 '' + IL_0001: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: ldarg.0 + IL_000c: box Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + IL_0011: call bool [mscorlib]System.Enum::IsDefined(class [mscorlib]System.Type, + object) + IL_0016: stloc.3 + IL_0017: ldloc.3 + IL_0018: brtrue.s IL_0025 + + .line 50,50 : 17,65 '' + IL_001a: ldstr "status" + IL_001f: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0024: throw + + .line 52,52 : 13,44 '' + IL_0025: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002a: stloc.0 + .line 55,55 : 13,14 '' + .try + { + .try + { + IL_002b: nop + .line 56,56 : 17,134 '' + IL_002c: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0031: ldstr "SRAway/GetStatusMessage" + IL_0036: ldarg.0 + IL_0037: conv.i8 + IL_0038: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint64) + IL_003d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0042: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0047: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_004c: stloc.0 + .line 57,57 : 17,46 '' + IL_004d: ldloc.0 + IL_004e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0053: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0058: ldc.i4.0 + IL_0059: ceq + IL_005b: stloc.3 + IL_005c: ldloc.3 + IL_005d: brtrue.s IL_0063 + + .line 57,57 : 47,59 '' + IL_005f: ldnull + IL_0060: stloc.2 + IL_0061: leave.s IL_00a7 + + .line 59,59 : 17,107 '' + IL_0063: ldloc.0 + IL_0064: ldc.i4.0 + IL_0065: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_006a: stloc.2 + IL_006b: leave.s IL_00a7 + + .line 61,61 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_006d: stloc.1 + .line 62,62 : 13,14 '' + IL_006e: nop + .line 63,63 : 17,160 '' + IL_006f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0074: ldstr "SRAway/GetStatusMessage" + IL_0079: ldc.i4.0 + IL_007a: box [mscorlib]System.Int32 + IL_007f: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0084: ldloc.1 + IL_0085: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_008a: throw + + .line 66,66 : 13,14 '' + } // end handler + } // end .try + finally + { + IL_008b: nop + .line 67,67 : 17,46 '' + IL_008c: ldloc.0 + IL_008d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0092: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0097: ldc.i4.0 + IL_0098: ceq + IL_009a: stloc.3 + IL_009b: ldloc.3 + IL_009c: brtrue.s IL_00a5 + + .line 68,68 : 21,52 '' + IL_009e: ldloc.0 + IL_009f: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_00a4: nop + .line 69,69 : 13,14 '' + IL_00a5: nop + IL_00a6: endfinally + } // end handler + IL_00a7: nop + .line 70,70 : 9,10 '' + IL_00a8: ldloc.2 + IL_00a9: ret + } // end of method ProtocolStatus::GetStatusMessage + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatus + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute + extends Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 40 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ..@.....T..Allow + 4D 75 6C 74 69 70 6C 65 01 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 01 ) // rited. + .field private string serviceName + .method public hidebysig specialname instance string + get_ServiceName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 33,33 : 13,14 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ServiceFunctionAttribute.cs' + IL_0000: nop + .line 34,34 : 17,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::serviceName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 35,35 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ServiceFunctionAttribute::get_ServiceName + + .method public hidebysig specialname instance void + set_ServiceName(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 37,37 : 13,14 '' + IL_0000: nop + .line 38,38 : 17,42 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::serviceName + .line 39,39 : 13,14 '' + IL_0008: ret + } // end of method ServiceFunctionAttribute::set_ServiceName + + .method assembly hidebysig specialname strict virtual + instance string get_HookName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 44,44 : 17,18 '' + IL_0000: nop + .line 44,44 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: call instance string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_ServiceName() + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 44,44 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ServiceFunctionAttribute::get_HookName + + .method assembly hidebysig specialname strict virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + get_HookType() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType CS$1$0000) + .line 49,49 : 17,18 '' + IL_0000: nop + .line 49,49 : 19,51 '' + IL_0001: ldc.i4.2 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 49,49 : 52,53 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method ServiceFunctionAttribute::get_HookType + + .method public hidebysig specialname rtspecialname + instance void .ctor(string serviceName) cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 56,56 : 9,60 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::.ctor() + IL_0006: nop + .line 57,57 : 9,10 '' + IL_0007: nop + .line 58,58 : 13,37 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 59,59 : 17,64 '' + IL_0013: ldstr "serviceName" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 61,61 : 13,44 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::serviceName + .line 62,62 : 9,10 '' + IL_0025: nop + IL_0026: ret + } // end of method ServiceFunctionAttribute::.ctor + + .property instance string ServiceName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_ServiceName() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::set_ServiceName(string) + } // end of property ServiceFunctionAttribute::ServiceName + .property instance string HookName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_HookName() + } // end of property ServiceFunctionAttribute::HookName + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + HookType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_HookType() + } // end of property ServiceFunctionAttribute::HookType +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Forms.ErrorDialog + extends [System.Windows.Forms]System.Windows.Forms.Form +{ + .field private class Virtuoso.Miranda.Plugins.IExceptionReporter Reporter + .field private class [mscorlib]System.Exception Exception + .field private class [System]System.ComponentModel.IContainer components + .field private class [System.Windows.Forms]System.Windows.Forms.Label MessageLABEL + .field private class [System.Windows.Forms]System.Windows.Forms.TextBox DetailsTBOX + .field private class [System.Windows.Forms]System.Windows.Forms.Label label2 + .field private class [System.Windows.Forms]System.Windows.Forms.Button OkBTN + .field private class [System.Windows.Forms]System.Windows.Forms.Label label3 + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Panel1 + .field private class [System.Windows.Forms]System.Windows.Forms.Button CancelBTN + .field private class [System.Windows.Forms]System.Windows.Forms.Label label1 + .field private class [System.Windows.Forms]System.Windows.Forms.Label label4 + .field private class [System.Windows.Forms]System.Windows.Forms.LinkLabel SendReportLBTN + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 8,8 : 9,68 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\ErrorDialog.Designer.cs' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: stfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.ErrorDialog::components + .line 43,43 : 9,30 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\ErrorDialog.cs' + IL_0007: ldarg.0 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Form::.ctor() + IL_000d: nop + .line 44,44 : 9,10 '' + IL_000e: nop + .line 45,45 : 13,35 '' + IL_000f: ldarg.0 + IL_0010: call instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::InitializeComponent() + IL_0015: nop + .line 46,46 : 9,10 '' + IL_0016: nop + IL_0017: ret + } // end of method ErrorDialog::.ctor + + .method public hidebysig static valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult + PresentModal(class [mscorlib]System.Exception e) cil managed + { + // Code size 15 (0xf) + .maxstack 4 + .locals init ([0] valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult CS$1$0000) + .line 49,49 : 9,10 '' + IL_0000: nop + .line 50,50 : 13,55 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ldnull + IL_0004: ldc.i4.0 + IL_0005: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_000a: stloc.0 + IL_000b: br.s IL_000d + + .line 51,51 : 9,10 '' + IL_000d: ldloc.0 + IL_000e: ret + } // end of method ErrorDialog::PresentModal + + .method public hidebysig static valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult + PresentModal(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.IExceptionReporter reporter) cil managed + { + // Code size 15 (0xf) + .maxstack 4 + .locals init ([0] valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult CS$1$0000) + .line 54,54 : 9,10 '' + IL_0000: nop + .line 55,55 : 13,59 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldnull + IL_0004: ldc.i4.0 + IL_0005: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_000a: stloc.0 + IL_000b: br.s IL_000d + + .line 56,56 : 9,10 '' + IL_000d: ldloc.0 + IL_000e: ret + } // end of method ErrorDialog::PresentModal + + .method public hidebysig static valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult + PresentModal(class [mscorlib]System.Exception e, + string message, + bool canCancel) cil managed + { + // Code size 15 (0xf) + .maxstack 4 + .locals init ([0] valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult CS$1$0000) + .line 59,59 : 9,10 '' + IL_0000: nop + .line 60,60 : 13,62 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ldarg.1 + IL_0004: ldarg.2 + IL_0005: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_000a: stloc.0 + IL_000b: br.s IL_000d + + .line 61,61 : 9,10 '' + IL_000d: ldloc.0 + IL_000e: ret + } // end of method ErrorDialog::PresentModal + + .method public hidebysig static valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult + PresentModal(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.IExceptionReporter reporter, + string message, + bool canCancel) cil managed + { + // Code size 40 (0x28) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Forms.ErrorDialog dlg, + [1] valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult CS$1$0000, + [2] bool CS$4$0001) + .line 64,64 : 9,10 '' + IL_0000: nop + .line 65,65 : 20,55 '' + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::.ctor() + IL_0006: stloc.0 + .line 66,66 : 13,14 '' + .try + { + IL_0007: nop + .line 67,67 : 17,73 '' + IL_0008: ldloc.0 + IL_0009: ldarg.0 + IL_000a: ldarg.1 + IL_000b: ldarg.2 + IL_000c: ldarg.3 + IL_000d: callvirt instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::BindAndShow(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_0012: stloc.1 + IL_0013: leave.s IL_0025 + + } // end .try + finally + { + IL_0015: ldloc.0 + IL_0016: ldnull + IL_0017: ceq + IL_0019: stloc.2 + IL_001a: ldloc.2 + IL_001b: brtrue.s IL_0024 + + IL_001d: ldloc.0 + IL_001e: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0023: nop + IL_0024: endfinally + } // end handler + IL_0025: nop + .line 69,69 : 9,10 '' + IL_0026: ldloc.1 + IL_0027: ret + } // end of method ErrorDialog::PresentModal + + .method private hidebysig instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult + BindAndShow(class [mscorlib]System.Exception exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter reporter, + string message, + bool canCancel) cil managed + { + // Code size 107 (0x6b) + .maxstack 3 + .locals init ([0] valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult CS$1$0000, + [1] bool CS$4$0001) + .line 76,76 : 9,10 '' + IL_0000: nop + .line 77,77 : 13,35 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 78,78 : 17,62 '' + IL_000c: ldstr "exception" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 80,80 : 13,40 '' + IL_0017: ldarg.0 + IL_0018: ldarg.1 + IL_0019: stfld class [mscorlib]System.Exception Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Exception + .line 81,81 : 13,67 '' + IL_001e: ldarg.0 + IL_001f: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::MessageLABEL + IL_0024: ldarg.3 + IL_0025: dup + IL_0026: brtrue.s IL_002f + + IL_0028: pop + IL_0029: ldarg.1 + IL_002a: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_002f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0034: nop + .line 83,83 : 13,52 '' + IL_0035: ldarg.0 + IL_0036: ldarg.1 + IL_0037: ldarg.2 + IL_0038: call instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PrepareReportLink(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter) + IL_003d: nop + .line 84,84 : 13,38 '' + IL_003e: ldarg.0 + IL_003f: ldarg.1 + IL_0040: call instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DumpException(class [mscorlib]System.Exception) + IL_0045: nop + .line 86,86 : 13,43 '' + IL_0046: ldarg.0 + IL_0047: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_004c: ldarg.s canCancel + IL_004e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Visible(bool) + IL_0053: nop + .line 87,87 : 13,27 '' + IL_0054: ldarg.0 + IL_0055: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_005a: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.Control::Focus() + IL_005f: pop + .line 89,89 : 13,33 '' + IL_0060: ldarg.0 + IL_0061: call instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.Form::ShowDialog() + IL_0066: stloc.0 + IL_0067: br.s IL_0069 + + .line 90,90 : 9,10 '' + IL_0069: ldloc.0 + IL_006a: ret + } // end of method ErrorDialog::BindAndShow + + .method private hidebysig instance void + PrepareReportLink(class [mscorlib]System.Exception exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter reporter) cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 93,93 : 9,10 '' + IL_0000: nop + .line 94,94 : 13,34 '' + IL_0001: ldarg.2 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_001d + + .line 95,95 : 13,14 '' + IL_000c: nop + .line 96,96 : 17,48 '' + IL_000d: ldarg.0 + IL_000e: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_0013: ldc.i4.0 + IL_0014: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_0019: nop + .line 97,97 : 13,14 '' + IL_001a: nop + IL_001b: br.s IL_0026 + + .line 99,99 : 13,14 '' + IL_001d: nop + .line 100,100 : 17,42 '' + IL_001e: ldarg.0 + IL_001f: ldarg.2 + IL_0020: stfld class Virtuoso.Miranda.Plugins.IExceptionReporter Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Reporter + .line 101,101 : 13,14 '' + IL_0025: nop + .line 102,102 : 9,10 '' + IL_0026: ret + } // end of method ErrorDialog::PrepareReportLink + + .method private hidebysig instance void + DumpException(class [mscorlib]System.Exception e) cil managed + { + // Code size 81 (0x51) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Text.StringBuilder dump, + [1] bool CS$4$0000) + .line 105,105 : 9,10 '' + IL_0000: nop + .line 106,106 : 13,54 '' + IL_0001: newobj instance void [mscorlib]System.Text.StringBuilder::.ctor() + IL_0006: stloc.0 + .line 108,108 : 13,47 '' + IL_0007: ldarg.1 + IL_0008: isinst Virtuoso.Miranda.Plugins.IExceptionDumpController + IL_000d: ldnull + IL_000e: cgt.un + IL_0010: ldc.i4.0 + IL_0011: ceq + IL_0013: stloc.1 + IL_0014: ldloc.1 + IL_0015: brtrue.s IL_0027 + + .line 109,109 : 13,14 '' + IL_0017: nop + .line 110,110 : 17,70 '' + IL_0018: ldarg.1 + IL_0019: castclass Virtuoso.Miranda.Plugins.IExceptionDumpController + IL_001e: ldarg.1 + IL_001f: ldloc.0 + IL_0020: callvirt instance void Virtuoso.Miranda.Plugins.IExceptionDumpController::DumpException(class [mscorlib]System.Exception, + class [mscorlib]System.Text.StringBuilder) + IL_0025: nop + .line 111,111 : 13,14 '' + IL_0026: nop + .line 113,113 : 13,104 '' + IL_0027: ldloc.0 + IL_0028: ldstr "=== Exception dump ==={0}{1}{0}{0}" + IL_002d: call string [mscorlib]System.Environment::get_NewLine() + IL_0032: ldarg.1 + IL_0033: callvirt instance string [mscorlib]System.Object::ToString() + IL_0038: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::AppendFormat(string, + object, + object) + IL_003d: pop + .line 114,114 : 13,48 '' + IL_003e: ldarg.0 + IL_003f: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_0044: ldloc.0 + IL_0045: callvirt instance string [mscorlib]System.Object::ToString() + IL_004a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_004f: nop + .line 115,115 : 9,10 '' + IL_0050: ret + } // end of method ErrorDialog::DumpException + + .method private hidebysig instance void + PluginErrorDialog_Shown(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 122,122 : 9,10 '' + IL_0000: nop + .line 123,123 : 13,38 '' + IL_0001: call class [System]System.Media.SystemSound [System]System.Media.SystemSounds::get_Hand() + IL_0006: callvirt instance void [System]System.Media.SystemSound::Play() + IL_000b: nop + .line 124,124 : 9,10 '' + IL_000c: ret + } // end of method ErrorDialog::PluginErrorDialog_Shown + + .method private hidebysig instance void + SendReportLBTN_LinkClicked(object sender, + class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventArgs e) cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 127,127 : 9,10 '' + IL_0000: nop + .line 128,128 : 13,49 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.IExceptionReporter Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Reporter + IL_0007: ldarg.0 + IL_0008: ldfld class [mscorlib]System.Exception Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Exception + IL_000d: callvirt instance void Virtuoso.Miranda.Plugins.IExceptionReporter::ReportException(class [mscorlib]System.Exception) + IL_0012: nop + .line 129,129 : 9,10 '' + IL_0013: ret + } // end of method ErrorDialog::SendReportLBTN_LinkClicked + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 44 (0x2c) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 15,15 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\ErrorDialog.Designer.cs' + IL_0000: nop + .line 16,16 : 13,51 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_000f + + IL_0004: ldarg.0 + IL_0005: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.ErrorDialog::components + IL_000a: ldnull + IL_000b: ceq + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.1 + IL_0010: nop + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0023 + + .line 17,17 : 13,14 '' + IL_0015: nop + .line 18,18 : 17,38 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.ErrorDialog::components + IL_001c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0021: nop + .line 19,19 : 13,14 '' + IL_0022: nop + .line 20,20 : 13,37 '' + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Dispose(bool) + IL_002a: nop + .line 21,21 : 9,10 '' + IL_002b: ret + } // end of method ErrorDialog::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 1105 (0x451) + .maxstack 6 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources) + .line 30,30 : 9,10 '' + IL_0000: nop + .line 31,31 : 13,144 '' + IL_0001: ldtoken Virtuoso.Miranda.Plugins.Forms.ErrorDialog + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_0010: stloc.0 + .line 32,32 : 13,66 '' + IL_0011: ldarg.0 + IL_0012: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0017: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::MessageLABEL + .line 33,33 : 13,67 '' + IL_001c: ldarg.0 + IL_001d: newobj instance void [System.Windows.Forms]System.Windows.Forms.TextBox::.ctor() + IL_0022: stfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + .line 34,34 : 13,60 '' + IL_0027: ldarg.0 + IL_0028: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_002d: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label2 + .line 35,35 : 13,60 '' + IL_0032: ldarg.0 + IL_0033: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0038: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + .line 36,36 : 13,60 '' + IL_003d: ldarg.0 + IL_003e: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0043: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label3 + .line 37,37 : 13,106 '' + IL_0048: ldarg.0 + IL_0049: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor() + IL_004e: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + .line 38,38 : 13,64 '' + IL_0053: ldarg.0 + IL_0054: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0059: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + .line 39,39 : 13,60 '' + IL_005e: ldarg.0 + IL_005f: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0064: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label1 + .line 40,40 : 13,60 '' + IL_0069: ldarg.0 + IL_006a: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_006f: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label4 + .line 41,41 : 13,72 '' + IL_0074: ldarg.0 + IL_0075: newobj instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::.ctor() + IL_007a: stfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + .line 42,42 : 13,41 '' + IL_007f: ldarg.0 + IL_0080: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_0085: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_008a: nop + .line 43,43 : 13,34 '' + IL_008b: ldarg.0 + IL_008c: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0091: nop + .line 47,47 : 13,73 '' + IL_0092: ldloc.0 + IL_0093: ldarg.0 + IL_0094: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::MessageLABEL + IL_0099: ldstr "MessageLABEL" + IL_009e: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_00a3: nop + .line 48,48 : 13,53 '' + IL_00a4: ldarg.0 + IL_00a5: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::MessageLABEL + IL_00aa: ldstr "MessageLABEL" + IL_00af: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_00b4: nop + .line 52,52 : 13,77 '' + IL_00b5: ldarg.0 + IL_00b6: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_00bb: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Window() + IL_00c0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_00c5: nop + .line 53,53 : 13,71 '' + IL_00c6: ldloc.0 + IL_00c7: ldarg.0 + IL_00c8: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_00cd: ldstr "DetailsTBOX" + IL_00d2: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_00d7: nop + .line 54,54 : 13,51 '' + IL_00d8: ldarg.0 + IL_00d9: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_00de: ldstr "DetailsTBOX" + IL_00e3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_00e8: nop + .line 55,55 : 13,46 '' + IL_00e9: ldarg.0 + IL_00ea: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_00ef: ldc.i4.1 + IL_00f0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.TextBoxBase::set_ReadOnly(bool) + IL_00f5: nop + .line 59,59 : 13,61 '' + IL_00f6: ldloc.0 + IL_00f7: ldarg.0 + IL_00f8: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label2 + IL_00fd: ldstr "label2" + IL_0102: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_0107: nop + .line 60,60 : 13,41 '' + IL_0108: ldarg.0 + IL_0109: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label2 + IL_010e: ldstr "label2" + IL_0113: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0118: nop + .line 64,64 : 13,59 '' + IL_0119: ldloc.0 + IL_011a: ldarg.0 + IL_011b: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_0120: ldstr "OkBTN" + IL_0125: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_012a: nop + .line 65,65 : 13,76 '' + IL_012b: ldarg.0 + IL_012c: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_0131: ldc.i4.1 + IL_0132: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Button::set_DialogResult(valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult) + IL_0137: nop + .line 66,66 : 13,39 '' + IL_0138: ldarg.0 + IL_0139: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_013e: ldstr "OkBTN" + IL_0143: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0148: nop + .line 67,67 : 13,55 '' + IL_0149: ldarg.0 + IL_014a: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_014f: ldc.i4.1 + IL_0150: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + IL_0155: nop + .line 71,71 : 13,61 '' + IL_0156: ldloc.0 + IL_0157: ldarg.0 + IL_0158: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label3 + IL_015d: ldstr "label3" + IL_0162: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_0167: nop + .line 72,72 : 13,70 '' + IL_0168: ldarg.0 + IL_0169: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label3 + IL_016e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0173: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0178: nop + .line 73,73 : 13,41 '' + IL_0179: ldarg.0 + IL_017a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label3 + IL_017f: ldstr "label3" + IL_0184: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0189: nop + .line 77,77 : 13,70 '' + IL_018a: ldarg.0 + IL_018b: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_0190: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0195: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_019a: nop + .line 78,78 : 13,75 '' + IL_019b: ldarg.0 + IL_019c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_01a1: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_ActiveCaption() + IL_01a6: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + IL_01ab: nop + .line 79,79 : 13,51 '' + IL_01ac: ldarg.0 + IL_01ad: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_01b2: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_01b7: ldarg.0 + IL_01b8: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label3 + IL_01bd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_01c2: nop + .line 80,80 : 13,61 '' + IL_01c3: ldloc.0 + IL_01c4: ldarg.0 + IL_01c5: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_01ca: ldstr "Panel1" + IL_01cf: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_01d4: nop + .line 81,81 : 13,157 '' + IL_01d5: ldarg.0 + IL_01d6: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_01db: ldstr "Tahoma" + IL_01e0: ldc.r4 8. + IL_01e5: ldc.i4.1 + IL_01e6: ldc.i4.3 + IL_01e7: ldc.i4 0xee + IL_01ec: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_01f1: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + IL_01f6: nop + .line 82,82 : 13,95 '' + IL_01f7: ldarg.0 + IL_01f8: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_01fd: ldloc.0 + IL_01fe: ldstr "Panel1.Image" + IL_0203: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0208: castclass [System.Drawing]System.Drawing.Image + IL_020d: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0212: nop + .line 83,83 : 13,72 '' + IL_0213: ldarg.0 + IL_0214: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_0219: ldc.i4 0x12c + IL_021e: ldc.i4.s 40 + IL_0220: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0225: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_022a: nop + .line 84,84 : 13,41 '' + IL_022b: ldarg.0 + IL_022c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_0231: ldstr "Panel1" + IL_0236: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_023b: nop + .line 88,88 : 13,84 '' + IL_023c: ldarg.0 + IL_023d: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0242: ldc.i4.2 + IL_0243: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Button::set_DialogResult(valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult) + IL_0248: nop + .line 89,89 : 13,67 '' + IL_0249: ldloc.0 + IL_024a: ldarg.0 + IL_024b: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0250: ldstr "CancelBTN" + IL_0255: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_025a: nop + .line 90,90 : 13,47 '' + IL_025b: ldarg.0 + IL_025c: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0261: ldstr "CancelBTN" + IL_0266: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_026b: nop + .line 91,91 : 13,59 '' + IL_026c: ldarg.0 + IL_026d: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0272: ldc.i4.1 + IL_0273: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + IL_0278: nop + .line 95,95 : 13,61 '' + IL_0279: ldloc.0 + IL_027a: ldarg.0 + IL_027b: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label1 + IL_0280: ldstr "label1" + IL_0285: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_028a: nop + .line 96,96 : 13,41 '' + IL_028b: ldarg.0 + IL_028c: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label1 + IL_0291: ldstr "label1" + IL_0296: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_029b: nop + .line 100,100 : 13,61 '' + IL_029c: ldloc.0 + IL_029d: ldarg.0 + IL_029e: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label4 + IL_02a3: ldstr "label4" + IL_02a8: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_02ad: nop + .line 101,101 : 13,41 '' + IL_02ae: ldarg.0 + IL_02af: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label4 + IL_02b4: ldstr "label4" + IL_02b9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_02be: nop + .line 105,105 : 13,77 '' + IL_02bf: ldloc.0 + IL_02c0: ldarg.0 + IL_02c1: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_02c6: ldstr "SendReportLBTN" + IL_02cb: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_02d0: nop + .line 106,106 : 13,57 '' + IL_02d1: ldarg.0 + IL_02d2: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_02d7: ldstr "SendReportLBTN" + IL_02dc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_02e1: nop + .line 107,107 : 13,48 '' + IL_02e2: ldarg.0 + IL_02e3: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_02e8: ldc.i4.1 + IL_02e9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_TabStop(bool) + IL_02ee: nop + .line 108,108 : 13,67 '' + IL_02ef: ldarg.0 + IL_02f0: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_02f5: ldc.i4.1 + IL_02f6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::set_UseCompatibleTextRendering(bool) + IL_02fb: nop + .line 109,109 : 13,139 '' + IL_02fc: ldarg.0 + IL_02fd: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_0302: ldarg.0 + IL_0303: ldftn instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN_LinkClicked(object, + class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventArgs) + IL_0309: newobj instance void [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventHandler::.ctor(object, + native int) + IL_030e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::add_LinkClicked(class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventHandler) + IL_0313: nop + .line 113,113 : 13,44 '' + IL_0314: ldarg.0 + IL_0315: ldarg.0 + IL_0316: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_031b: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_AcceptButton(class [System.Windows.Forms]System.Windows.Forms.IButtonControl) + IL_0320: nop + .line 114,114 : 13,53 '' + IL_0321: ldloc.0 + IL_0322: ldarg.0 + IL_0323: ldstr "$this" + IL_0328: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + IL_032d: nop + .line 115,115 : 13,74 '' + IL_032e: ldarg.0 + IL_032f: ldc.i4.1 + IL_0330: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + IL_0335: nop + .line 116,116 : 13,65 '' + IL_0336: ldarg.0 + IL_0337: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Window() + IL_033c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0341: nop + .line 117,117 : 13,48 '' + IL_0342: ldarg.0 + IL_0343: ldarg.0 + IL_0344: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0349: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_CancelButton(class [System.Windows.Forms]System.Windows.Forms.IButtonControl) + IL_034e: nop + .line 118,118 : 13,52 '' + IL_034f: ldarg.0 + IL_0350: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0355: ldarg.0 + IL_0356: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_035b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0360: nop + .line 119,119 : 13,44 '' + IL_0361: ldarg.0 + IL_0362: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0367: ldarg.0 + IL_0368: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label4 + IL_036d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0372: nop + .line 120,120 : 13,47 '' + IL_0373: ldarg.0 + IL_0374: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0379: ldarg.0 + IL_037a: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_037f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0384: nop + .line 121,121 : 13,50 '' + IL_0385: ldarg.0 + IL_0386: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_038b: ldarg.0 + IL_038c: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::MessageLABEL + IL_0391: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0396: nop + .line 122,122 : 13,49 '' + IL_0397: ldarg.0 + IL_0398: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_039d: ldarg.0 + IL_039e: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_03a3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_03a8: nop + .line 123,123 : 13,43 '' + IL_03a9: ldarg.0 + IL_03aa: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03af: ldarg.0 + IL_03b0: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_03b5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_03ba: nop + .line 124,124 : 13,44 '' + IL_03bb: ldarg.0 + IL_03bc: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03c1: ldarg.0 + IL_03c2: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label1 + IL_03c7: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_03cc: nop + .line 125,125 : 13,44 '' + IL_03cd: ldarg.0 + IL_03ce: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03d3: ldarg.0 + IL_03d4: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_03d9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_03de: nop + .line 126,126 : 13,44 '' + IL_03df: ldarg.0 + IL_03e0: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03e5: ldarg.0 + IL_03e6: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label2 + IL_03eb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_03f0: nop + .line 127,127 : 13,85 '' + IL_03f1: ldarg.0 + IL_03f2: ldc.i4.3 + IL_03f3: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_FormBorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FormBorderStyle) + IL_03f8: nop + .line 128,128 : 13,38 '' + IL_03f9: ldarg.0 + IL_03fa: ldc.i4.0 + IL_03fb: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MaximizeBox(bool) + IL_0400: nop + .line 129,129 : 13,38 '' + IL_0401: ldarg.0 + IL_0402: ldc.i4.0 + IL_0403: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MinimizeBox(bool) + IL_0408: nop + .line 130,130 : 13,39 '' + IL_0409: ldarg.0 + IL_040a: ldstr "ErrorDialog" + IL_040f: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0414: nop + .line 131,131 : 13,81 '' + IL_0415: ldarg.0 + IL_0416: ldarg.0 + IL_0417: ldftn instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PluginErrorDialog_Shown(object, + class [mscorlib]System.EventArgs) + IL_041d: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0422: call instance void [System.Windows.Forms]System.Windows.Forms.Form::add_Shown(class [mscorlib]System.EventHandler) + IL_0427: nop + .line 132,132 : 13,45 '' + IL_0428: ldarg.0 + IL_0429: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_042e: ldc.i4.0 + IL_042f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_0434: nop + .line 133,133 : 13,41 '' + IL_0435: ldarg.0 + IL_0436: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_043b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + IL_0440: nop + .line 134,134 : 13,38 '' + IL_0441: ldarg.0 + IL_0442: ldc.i4.0 + IL_0443: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_0448: nop + .line 135,135 : 13,34 '' + IL_0449: ldarg.0 + IL_044a: call instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + IL_044f: nop + .line 137,137 : 9,10 '' + IL_0450: ret + } // end of method ErrorDialog::InitializeComponent + +} // end of class Virtuoso.Miranda.Plugins.Forms.ErrorDialog + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.IExceptionDumpController +{ + .method public hidebysig newslot abstract virtual + instance void DumpException(class [mscorlib]System.Exception e, + class [mscorlib]System.Text.StringBuilder dump) cil managed + { + } // end of method IExceptionDumpController::DumpException + +} // end of class Virtuoso.Miranda.Plugins.IExceptionDumpController + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.FusionException + extends [mscorlib]System.Exception + implements Virtuoso.Miranda.Plugins.IExceptionDumpController +{ + .field private initonly class [mscorlib]System.Reflection.Assembly 'assembly' + .field private initonly class [mscorlib]System.Type pluginType + .field private initonly class Virtuoso.Miranda.Plugins.MirandaPlugin instantiatedPlugin + .field private initonly string fusionLog + .method public hidebysig specialname rtspecialname + instance void .ctor(string message, + class [mscorlib]System.Reflection.Assembly 'assembly', + class [mscorlib]System.Type 'type', + class Virtuoso.Miranda.Plugins.MirandaPlugin plugin, + class [mscorlib]System.Exception inner) cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 42,43 : 9,89 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\FusionException.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Empty() + IL_0007: ldarg.2 + IL_0008: ldarg.3 + IL_0009: ldarg.s plugin + IL_000b: ldarg.s inner + IL_000d: call instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_0012: nop + .line 44,44 : 9,10 '' + IL_0013: nop + .line 44,44 : 11,12 '' + IL_0014: nop + IL_0015: ret + } // end of method FusionException::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string message, + string fusionLog, + class [mscorlib]System.Reflection.Assembly 'assembly', + class [mscorlib]System.Type 'type', + class Virtuoso.Miranda.Plugins.MirandaPlugin plugin, + class [mscorlib]System.Exception inner) cil managed + { + // Code size 43 (0x2b) + .maxstack 8 + .line 46,46 : 9,157 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.s inner + IL_0004: call instance void [mscorlib]System.Exception::.ctor(string, + class [mscorlib]System.Exception) + IL_0009: nop + .line 47,47 : 9,10 '' + IL_000a: nop + .line 48,48 : 13,38 '' + IL_000b: ldarg.0 + IL_000c: ldarg.3 + IL_000d: stfld class [mscorlib]System.Reflection.Assembly Virtuoso.Miranda.Plugins.FusionException::'assembly' + .line 49,49 : 13,36 '' + IL_0012: ldarg.0 + IL_0013: ldarg.s 'type' + IL_0015: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.FusionException::pluginType + .line 50,50 : 13,46 '' + IL_001a: ldarg.0 + IL_001b: ldarg.s plugin + IL_001d: stfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.FusionException::instantiatedPlugin + .line 51,51 : 13,40 '' + IL_0022: ldarg.0 + IL_0023: ldarg.2 + IL_0024: stfld string Virtuoso.Miranda.Plugins.FusionException::fusionLog + .line 52,52 : 9,10 '' + IL_0029: nop + IL_002a: ret + } // end of method FusionException::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 54,54 : 9,106 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext) + IL_0008: nop + .line 54,54 : 107,108 '' + IL_0009: nop + .line 54,54 : 108,109 '' + IL_000a: nop + IL_000b: ret + } // end of method FusionException::.ctor + + .method public hidebysig specialname instance class [mscorlib]System.Reflection.Assembly + get_Assembly() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Reflection.Assembly CS$1$0000) + .line 62,62 : 17,18 '' + IL_0000: nop + .line 62,62 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Reflection.Assembly Virtuoso.Miranda.Plugins.FusionException::'assembly' + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 62,62 : 36,37 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method FusionException::get_Assembly + + .method public hidebysig specialname instance class [mscorlib]System.Type + get_PluginType() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Type CS$1$0000) + .line 67,67 : 17,18 '' + IL_0000: nop + .line 67,67 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.FusionException::pluginType + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 67,67 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method FusionException::get_PluginType + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.MirandaPlugin + get_InstantiatedPlugin() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin CS$1$0000) + .line 72,72 : 17,18 '' + IL_0000: nop + .line 72,72 : 19,45 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.FusionException::instantiatedPlugin + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 72,72 : 46,47 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method FusionException::get_InstantiatedPlugin + + .method public hidebysig specialname instance string + get_FusionLog() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 77,77 : 17,18 '' + IL_0000: nop + .line 77,77 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.FusionException::fusionLog + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 77,77 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method FusionException::get_FusionLog + + .method private hidebysig newslot virtual final + instance void Virtuoso.Miranda.Plugins.IExceptionDumpController.DumpException(class [mscorlib]System.Exception e, + class [mscorlib]System.Text.StringBuilder dump) cil managed + { + .override Virtuoso.Miranda.Plugins.IExceptionDumpController::DumpException + // Code size 143 (0x8f) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.FusionException ex) + .line 85,85 : 9,10 '' + IL_0000: nop + .line 86,86 : 13,53 '' + IL_0001: ldarg.1 + IL_0002: castclass Virtuoso.Miranda.Plugins.FusionException + IL_0007: stloc.0 + .line 88,88 : 13,99 '' + IL_0008: ldarg.2 + IL_0009: ldstr "=== Description ==={0}{1}{0}{0}" + IL_000e: call string [mscorlib]System.Environment::get_NewLine() + IL_0013: ldloc.0 + IL_0014: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0019: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::AppendFormat(string, + object, + object) + IL_001e: pop + .line 89,89 : 13,163 '' + IL_001f: ldarg.2 + IL_0020: ldstr "=== Assembly ==={0}{1}{0}{0}" + IL_0025: call string [mscorlib]System.Environment::get_NewLine() + IL_002a: ldloc.0 + IL_002b: callvirt instance class [mscorlib]System.Reflection.Assembly Virtuoso.Miranda.Plugins.FusionException::get_Assembly() + IL_0030: brfalse.s IL_003f + + IL_0032: ldloc.0 + IL_0033: callvirt instance class [mscorlib]System.Reflection.Assembly Virtuoso.Miranda.Plugins.FusionException::get_Assembly() + IL_0038: callvirt instance string [mscorlib]System.Object::ToString() + IL_003d: br.s IL_0044 + + IL_003f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Unknown() + IL_0044: nop + IL_0045: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::AppendFormat(string, + object, + object) + IL_004a: pop + .line 90,90 : 13,161 '' + IL_004b: ldarg.2 + IL_004c: ldstr "=== Type ==={0}{1}{0}{0}" + IL_0051: call string [mscorlib]System.Environment::get_NewLine() + IL_0056: ldloc.0 + IL_0057: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.FusionException::get_PluginType() + IL_005c: brfalse.s IL_006b + + IL_005e: ldloc.0 + IL_005f: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.FusionException::get_PluginType() + IL_0064: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0069: br.s IL_0070 + + IL_006b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Unknown() + IL_0070: nop + IL_0071: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::AppendFormat(string, + object, + object) + IL_0076: pop + .line 91,91 : 13,100 '' + IL_0077: ldarg.2 + IL_0078: ldstr "=== Fusion log ==={0}{1}{0}{0}" + IL_007d: call string [mscorlib]System.Environment::get_NewLine() + IL_0082: ldloc.0 + IL_0083: callvirt instance string Virtuoso.Miranda.Plugins.FusionException::get_FusionLog() + IL_0088: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::AppendFormat(string, + object, + object) + IL_008d: pop + .line 92,92 : 9,10 '' + IL_008e: ret + } // end of method FusionException::Virtuoso.Miranda.Plugins.IExceptionDumpController.DumpException + + .property instance class [mscorlib]System.Reflection.Assembly + Assembly() + { + .get instance class [mscorlib]System.Reflection.Assembly Virtuoso.Miranda.Plugins.FusionException::get_Assembly() + } // end of property FusionException::Assembly + .property instance class [mscorlib]System.Type + PluginType() + { + .get instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.FusionException::get_PluginType() + } // end of property FusionException::PluginType + .property instance class Virtuoso.Miranda.Plugins.MirandaPlugin + InstantiatedPlugin() + { + .get instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.FusionException::get_InstantiatedPlugin() + } // end of property FusionException::InstantiatedPlugin + .property instance string FusionLog() + { + .get instance string Virtuoso.Miranda.Plugins.FusionException::get_FusionLog() + } // end of property FusionException::FusionLog +} // end of class Virtuoso.Miranda.Plugins.FusionException + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocol + extends Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + implements Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner +{ + .field static assembly literal string PS_GETSTATUS = "/GetStatus" + .field static assembly literal string PS_SETSTATUS = "/SetStatus" + .field static assembly literal string PS_GETCAPS = "/GetCaps" + .field static assembly literal string PS_GETNAME = "/GetName" + .field static assembly literal string PS_LOADICON = "/LoadIcon" + .field static assembly literal string PSS_MESSAGE = "/SendMsg" + .field private static literal string MS_PROTO_ISPROTOONCONTACT = "Proto/IsProtoOnContact" + .field private static initonly class Virtuoso.Miranda.Plugins.Infrastructure.Protocol unknownProtocol + .field private initonly string name + .field private initonly valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType 'type' + .field private static class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 StatusChangedEventHandler + .field private valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle namePtr + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 32 (0x20) + .maxstack 8 + .line 56,56 : 9,28 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocol.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor() + IL_0006: nop + .line 57,57 : 9,10 '' + IL_0007: nop + .line 58,58 : 13,38 '' + IL_0008: ldarg.0 + IL_0009: ldsfld string [mscorlib]System.String::Empty + IL_000e: stfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::name + .line 59,59 : 13,44 '' + IL_0013: ldarg.0 + IL_0014: ldc.i4 0x2710 + IL_0019: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::'type' + .line 60,60 : 9,10 '' + IL_001e: nop + IL_001f: ret + } // end of method Protocol::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(string name, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType 'type') cil managed + { + // Code size 84 (0x54) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 62,62 : 9,58 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor() + IL_0006: nop + .line 63,63 : 9,10 '' + IL_0007: nop + .line 64,64 : 13,44 '' + IL_0008: ldarg.1 + IL_0009: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000e: ldc.i4.0 + IL_000f: ceq + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0020 + + .line 65,65 : 17,57 '' + IL_0015: ldstr "name" + IL_001a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001f: throw + + .line 67,67 : 13,61 '' + IL_0020: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + IL_0025: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_002a: ldarg.2 + IL_002b: box Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + IL_0030: call bool [mscorlib]System.Enum::IsDefined(class [mscorlib]System.Type, + object) + IL_0035: stloc.0 + IL_0036: ldloc.0 + IL_0037: brtrue.s IL_0044 + + .line 68,68 : 17,63 '' + IL_0039: ldstr "type" + IL_003e: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0043: throw + + .line 70,70 : 13,30 '' + IL_0044: ldarg.0 + IL_0045: ldarg.1 + IL_0046: stfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::name + .line 71,71 : 13,30 '' + IL_004b: ldarg.0 + IL_004c: ldarg.2 + IL_004d: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::'type' + .line 72,72 : 9,10 '' + IL_0052: nop + IL_0053: ret + } // end of method Protocol::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR& descriptor) cil managed + { + // Code size 69 (0x45) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 74,74 : 9,61 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor() + IL_0006: nop + .line 75,75 : 9,10 '' + IL_0007: nop + .line 76,76 : 13,48 '' + IL_0008: ldarg.1 + IL_0009: ldfld native int Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Name + IL_000e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0013: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: stloc.0 + IL_001c: ldloc.0 + IL_001d: brtrue.s IL_0025 + + .line 77,77 : 17,47 '' + IL_001f: newobj instance void [mscorlib]System.ArgumentException::.ctor() + IL_0024: throw + + .line 79,79 : 13,82 '' + IL_0025: ldarg.0 + IL_0026: ldarg.1 + IL_0027: ldfld native int Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Name + IL_002c: ldc.i4.0 + IL_002d: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0032: stfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::name + .line 80,80 : 13,55 '' + IL_0037: ldarg.0 + IL_0038: ldarg.1 + IL_0039: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Type + IL_003e: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::'type' + .line 81,81 : 9,10 '' + IL_0043: nop + IL_0044: ret + } // end of method Protocol::.ctor + + .method family hidebysig virtual instance void + Finalize() cil managed + { + // Code size 44 (0x2c) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 84,84 : 9,10 '' + .try + { + IL_0000: nop + .line 85,85 : 13,33 '' + IL_0001: ldarg.0 + IL_0002: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Protocol::namePtr + IL_0007: call instance bool Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid() + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001f + + .line 86,86 : 17,32 '' + IL_0013: ldarg.0 + IL_0014: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Protocol::namePtr + IL_0019: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_001e: nop + .line 87,87 : 9,10 '' + IL_001f: nop + IL_0020: leave.s IL_002a + + .line 87,87 : 9,10 '' + } // end .try + finally + { + IL_0022: ldarg.0 + IL_0023: call instance void [mscorlib]System.Object::Finalize() + IL_0028: nop + IL_0029: endfinally + } // end handler + IL_002a: nop + .line 87,87 : 9,10 '' + IL_002b: ret + } // end of method Protocol::Finalize + + .method public hidebysig specialname static + void add_StatusChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 69 (0x45) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 98,98 : 13,14 '' + IL_0000: nop + .line 100,100 : 17,35 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 101,101 : 21,62 '' + IL_000c: ldstr "value" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 104,104 : 17,55 '' + IL_0017: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_001c: ldnull + IL_001d: ceq + IL_001f: ldc.i4.0 + IL_0020: ceq + IL_0022: stloc.0 + IL_0023: ldloc.0 + IL_0024: brtrue.s IL_0038 + + .line 105,105 : 21,68 '' + IL_0026: ldnull + IL_0027: ldftn bool Virtuoso.Miranda.Plugins.Infrastructure.Protocol::AckRouter_AckReceived(object, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs) + IL_002d: newobj instance void class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1::.ctor(object, + native int) + IL_0032: call void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::add_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + IL_0037: nop + .line 107,107 : 17,138 '' + IL_0038: ldsflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_003d: ldarg.0 + IL_003e: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + IL_0043: nop + .line 108,108 : 13,14 '' + IL_0044: ret + } // end of method Protocol::add_StatusChanged + + .method public hidebysig specialname static + void remove_StatusChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 47 (0x2f) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 111,111 : 13,14 '' + IL_0000: nop + .line 112,112 : 17,138 '' + IL_0001: ldsflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_0006: ldarg.0 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + IL_000c: nop + .line 115,115 : 17,55 '' + IL_000d: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_0012: ldnull + IL_0013: ceq + IL_0015: ldc.i4.0 + IL_0016: ceq + IL_0018: stloc.0 + IL_0019: ldloc.0 + IL_001a: brtrue.s IL_002e + + .line 116,116 : 21,68 '' + IL_001c: ldnull + IL_001d: ldftn bool Virtuoso.Miranda.Plugins.Infrastructure.Protocol::AckRouter_AckReceived(object, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs) + IL_0023: newobj instance void class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1::.ctor(object, + native int) + IL_0028: call void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::remove_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + IL_002d: nop + .line 117,117 : 13,14 '' + IL_002e: ret + } // end of method Protocol::remove_StatusChanged + + .method private hidebysig static bool AckRouter_AckReceived(object sender, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs e) cil managed + { + // Code size 77 (0x4d) + .maxstack 4 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 121,121 : 9,10 '' + IL_0000: nop + .line 122,122 : 13,42 '' + IL_0001: ldarg.1 + IL_0002: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Type() + IL_0007: ldc.i4.s 12 + IL_0009: ceq + IL_000b: ldc.i4.0 + IL_000c: ceq + IL_000e: stloc.1 + IL_000f: ldloc.1 + IL_0010: brtrue.s IL_0047 + + .line 123,123 : 13,14 '' + IL_0012: nop + .line 124,124 : 17,55 '' + IL_0013: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_0018: ldnull + IL_0019: ceq + IL_001b: stloc.1 + IL_001c: ldloc.1 + IL_001d: brtrue.s IL_0046 + + .line 125,125 : 21,128 '' + IL_001f: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_0024: ldarg.1 + IL_0025: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Protocol() + IL_002a: ldarg.1 + IL_002b: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Protocol() + IL_0030: ldarg.1 + IL_0031: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_LParam() + IL_0036: call int32 [mscorlib]System.IntPtr::op_Explicit(native int) + IL_003b: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.Protocol, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + IL_0040: callvirt instance bool class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1::Invoke(object, + !0) + IL_0045: pop + .line 126,126 : 13,14 '' + IL_0046: nop + .line 128,128 : 13,49 '' + IL_0047: ldc.i4.0 + IL_0048: stloc.0 + IL_0049: br.s IL_004b + + .line 129,129 : 9,10 '' + IL_004b: ldloc.0 + IL_004c: ret + } // end of method Protocol::AckRouter_AckReceived + + .method private hidebysig instance void + CheckUnknown() cil managed + { + // Code size 31 (0x1f) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 136,136 : 9,10 '' + IL_0000: nop + .line 137,137 : 13,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::name + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 138,138 : 17,118 '' + IL_0013: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CallInvalidForUnknownNetworkProtocol() + IL_0018: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001d: throw + + .line 139,139 : 9,10 '' + IL_001e: ret + } // end of method Protocol::CheckUnknown + + .method public hidebysig instance int32 + CallProtocolService(string serviceName, + native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 54 (0x36) + .maxstack 4 + .locals init ([0] int32 CS$1$0000, + [1] bool CS$4$0001) + .line 143,143 : 9,10 '' + IL_0000: nop + .line 144,144 : 13,37 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 145,145 : 17,64 '' + IL_000c: ldstr "serviceName" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 147,147 : 13,28 '' + IL_0017: ldarg.0 + IL_0018: call instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::CheckUnknown() + IL_001d: nop + .line 148,148 : 13,105 '' + IL_001e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: call instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_002a: ldarg.2 + IL_002b: ldarg.3 + IL_002c: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0031: stloc.0 + IL_0032: br.s IL_0034 + + .line 149,149 : 9,10 '' + IL_0034: ldloc.0 + IL_0035: ret + } // end of method Protocol::CallProtocolService + + .method public hidebysig instance string + GetProtoServiceName(string service) cil managed + { + // Code size 45 (0x2d) + .maxstack 3 + .locals init ([0] string CS$1$0000, + [1] bool CS$4$0001) + .line 152,152 : 9,10 '' + IL_0000: nop + .line 153,153 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 154,154 : 17,60 '' + IL_000c: ldstr "service" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 156,156 : 13,59 '' + IL_0017: ldstr "{0}{1}" + IL_001c: ldarg.0 + IL_001d: call instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_0022: ldarg.1 + IL_0023: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0028: stloc.0 + IL_0029: br.s IL_002b + + .line 157,157 : 9,10 '' + IL_002b: ldloc.0 + IL_002c: ret + } // end of method Protocol::GetProtoServiceName + + .method public hidebysig instance bool + HasInChain(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 43 (0x2b) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 160,160 : 9,10 '' + IL_0000: nop + .line 161,161 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.1 + IL_000c: ldloc.1 + IL_000d: brtrue.s IL_001a + + .line 162,162 : 17,60 '' + IL_000f: ldstr "contact" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 164,164 : 13,54 '' + IL_001a: ldarg.0 + IL_001b: ldarg.1 + IL_001c: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0021: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.Protocol::HasInChain(native int) + IL_0026: stloc.0 + IL_0027: br.s IL_0029 + + .line 165,165 : 9,10 '' + IL_0029: ldloc.0 + IL_002a: ret + } // end of method Protocol::HasInChain + + .method public hidebysig instance bool + HasInChain(native int contactHandle) cil managed + { + // Code size 34 (0x22) + .maxstack 4 + .locals init ([0] bool CS$1$0000) + .line 168,168 : 9,10 '' + IL_0000: nop + .line 169,169 : 13,110 '' + IL_0001: ldarg.0 + IL_0002: call instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::get_Context() + IL_0007: ldstr "Proto/IsProtoOnContact" + IL_000c: ldarg.1 + IL_000d: ldarg.0 + IL_000e: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_NamePtr() + IL_0013: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0018: call bool [mscorlib]System.Convert::ToBoolean(int32) + IL_001d: stloc.0 + IL_001e: br.s IL_0020 + + .line 170,170 : 9,10 '' + IL_0020: ldloc.0 + IL_0021: ret + } // end of method Protocol::HasInChain + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_UnknownProtocol() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol CS$1$0000) + .line 178,178 : 17,18 '' + IL_0000: nop + .line 178,178 : 19,51 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::unknownProtocol + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 178,178 : 52,53 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method Protocol::get_UnknownProtocol + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + get_Status() cil managed + { + // Code size 27 (0x1b) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode CS$1$0000) + .line 184,184 : 13,14 '' + IL_0000: nop + .line 185,185 : 17,97 '' + IL_0001: ldarg.0 + IL_0002: ldstr "/GetStatus" + IL_0007: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_000c: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0011: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::CallProtocolService(string, + native uint, + native int) + IL_0016: stloc.0 + IL_0017: br.s IL_0019 + + .line 186,186 : 13,14 '' + IL_0019: ldloc.0 + IL_001a: ret + } // end of method Protocol::get_Status + + .method public hidebysig specialname instance void + set_Status(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode 'value') cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 188,188 : 13,14 '' + IL_0000: nop + .line 189,189 : 17,80 '' + IL_0001: ldarg.0 + IL_0002: ldstr "/SetStatus" + IL_0007: ldarg.1 + IL_0008: conv.i8 + IL_0009: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint64) + IL_000e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0013: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::CallProtocolService(string, + native uint, + native int) + IL_0018: pop + .line 190,190 : 13,14 '' + IL_0019: ret + } // end of method Protocol::set_Status + + .method public hidebysig newslot specialname virtual final + instance string get_Name() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 195,195 : 17,18 '' + IL_0000: nop + .line 195,195 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::name + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 195,195 : 32,33 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Protocol::get_Name + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + get_Type() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType CS$1$0000) + .line 200,200 : 17,18 '' + IL_0000: nop + .line 200,200 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::'type' + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 200,200 : 32,33 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Protocol::get_Type + + .method public hidebysig specialname instance bool + get_IsUnknown() cil managed + { + // Code size 17 (0x11) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 206,206 : 13,14 '' + IL_0000: nop + .line 207,207 : 17,70 '' + IL_0001: ldarg.0 + IL_0002: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_0007: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 208,208 : 13,14 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method Protocol::get_IsUnknown + + .method family hidebysig newslot specialname virtual + instance native int get_NamePtr() cil managed + { + // Code size 50 (0x32) + .maxstack 3 + .locals init ([0] native int CS$1$0000, + [1] bool CS$4$0001) + .line 215,215 : 13,14 '' + IL_0000: nop + .line 216,216 : 17,38 '' + IL_0001: ldarg.0 + IL_0002: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Protocol::namePtr + IL_0007: call instance bool Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid() + IL_000c: stloc.1 + IL_000d: ldloc.1 + IL_000e: brtrue.s IL_0022 + + .line 217,217 : 21,77 '' + IL_0010: ldarg.0 + IL_0011: ldarg.0 + IL_0012: call instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_0017: ldc.i4.0 + IL_0018: call valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_001d: stfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Protocol::namePtr + .line 219,219 : 17,39 '' + IL_0022: ldarg.0 + IL_0023: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Protocol::namePtr + IL_0028: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_002d: stloc.0 + IL_002e: br.s IL_0030 + + .line 220,220 : 13,14 '' + IL_0030: ldloc.0 + IL_0031: ret + } // end of method Protocol::get_NamePtr + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 47,47 : 9,75 '' + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor() + IL_0005: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::unknownProtocol + IL_000a: ret + } // end of method Protocol::.cctor + + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 StatusChanged + { + .addon void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::add_StatusChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .removeon void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::remove_StatusChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event Protocol::StatusChanged + .property class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + UnknownProtocol() + { + .get class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + } // end of property Protocol::UnknownProtocol + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + Status() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::set_Status(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Status() + } // end of property Protocol::Status + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + } // end of property Protocol::Name + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + Type() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Type() + } // end of property Protocol::Type + .property instance bool IsUnknown() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_IsUnknown() + } // end of property Protocol::IsUnknown + .property instance native int NamePtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_NamePtr() + } // end of property Protocol::NamePtr +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + +.class private abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaEvents + extends [mscorlib]System.Object +{ + .field public static literal string ME_SYSTEM_SHUTDOWN = "Miranda/System/Shutdown" + .field public static literal string ME_SYSTEM_OKTOEXIT = "Miranda/System/OkToExitEvent" + .field public static literal string ME_DB_EVENT_ADDED = "DB/Event/Added" + .field public static literal string ME_DB_EVENT_DELETED = "DB/Event/Deleted" + .field public static literal string ME_DB_CONTACT_ADDED = "DB/Contact/Added" + .field public static literal string ME_DB_CONTACT_DELETED = "DB/Contact/Deleted" + .field public static literal string ME_DB_CONTACT_SETTINGCHANGED = "DB/Contact/SettingChanged" + .field public static literal string ME_SYSTEM_MODULESLOADED = "Miranda/System/ModulesLoaded" +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEvents + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Offline = int32(0x00009C87) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Online = int32(0x00009C88) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Away = int32(0x00009C89) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode DND = int32(0x00009C8A) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode NA = int32(0x00009C8B) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Occupied = int32(0x00009C8C) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode FreeForChat = int32(0x00009C8D) + .custom instance void Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::.ctor(string) = ( 01 00 0D 46 72 65 65 20 66 6F 72 20 63 68 61 74 // ...Free for chat + 00 00 ) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Invisible = int32(0x00009C8E) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode OnThePhone = int32(0x00009C8F) + .custom instance void Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::.ctor(string) = ( 01 00 0C 4F 6E 20 74 68 65 20 70 68 6F 6E 65 00 // ...On the phone. + 00 ) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode OutToLunch = int32(0x00009C90) + .custom instance void Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::.ctor(string) = ( 01 00 0C 4F 75 74 20 74 6F 20 6C 75 6E 63 68 00 // ...Out to lunch. + 00 ) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Idle = int32(0x00009C91) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + extends [mscorlib]System.Object +{ + .field private static literal string MS_SYSTEM_GETVERSIONTEXT = "Miranda/System/GetVersionText" + .field private static literal string MS_SYSTEM_GET_MMI = "Miranda/System/GetMMI" + .field private static class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext singleton + .field private class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager serviceInterceptors + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase mirandaDatabase + .field private class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary protocols + .field private initonly class Virtuoso.Hyphen.MirandaPluginLink pluginLink + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.ContactList contactList + .field private valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE mirandaMemoryManager + .field private class [mscorlib]System.EventHandler ModulesLoaded + .field private class [mscorlib]System.EventHandler IsolatedModePluginsUnloading + .method private hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager, + class Virtuoso.Hyphen.MirandaPluginLink mirandaLink, + bool skipContextInfo) cil managed + { + // Code size 119 (0x77) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 66,66 : 9,117 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaContext.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 67,67 : 9,10 '' + IL_0007: nop + .line 68,68 : 13,37 '' + IL_0008: ldarg.2 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 69,69 : 17,64 '' + IL_0013: ldstr "mirandaLink" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 71,71 : 13,48 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + .line 72,72 : 13,58 '' + IL_0025: ldarg.0 + IL_0026: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::.ctor() + IL_002b: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaDatabase + .line 73,73 : 13,43 '' + IL_0030: ldarg.0 + IL_0031: ldarg.2 + IL_0032: stfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginLink + .line 74,74 : 13,50 '' + IL_0037: ldarg.0 + IL_0038: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::.ctor() + IL_003d: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::contactList + .line 75,75 : 13,77 '' + IL_0042: ldarg.0 + IL_0043: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::.ctor() + IL_0048: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::serviceInterceptors + .line 77,77 : 13,30 '' + IL_004d: ldarg.0 + IL_004e: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::GetMMInterface() + IL_0053: nop + .line 79,79 : 13,46 '' + IL_0054: ldarg.0 + IL_0055: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateEnvironmentInformation() + IL_005a: nop + .line 81,81 : 13,34 '' + IL_005b: ldarg.3 + IL_005c: stloc.0 + IL_005d: ldloc.0 + IL_005e: brtrue.s IL_0069 + + .line 82,82 : 17,46 '' + IL_0060: ldarg.0 + IL_0061: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateContextInformation() + IL_0066: nop + IL_0067: br.s IL_0075 + + .line 84,84 : 17,60 '' + IL_0069: ldarg.0 + IL_006a: ldc.i4.0 + IL_006b: newobj instance void Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::.ctor(int32) + IL_0070: stfld class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::protocols + .line 85,85 : 9,10 '' + IL_0075: nop + IL_0076: ret + } // end of method MirandaContext::.ctor + + .method assembly hidebysig static void + InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink mirandaLink, + bool skipContextPopulation) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 93,93 : 9,10 '' + IL_0000: nop + .line 94,94 : 13,73 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ldarg.1 + IL_0004: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink, + class Virtuoso.Miranda.Plugins.PluginManagerBase, + bool) + IL_0009: nop + .line 95,95 : 9,10 '' + IL_000a: ret + } // end of method MirandaContext::InitializeCurrent + + .method assembly hidebysig static void + InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink mirandaLink, + class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 98,98 : 9,10 '' + IL_0000: nop + .line 99,99 : 13,66 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldc.i4.0 + IL_0004: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink, + class Virtuoso.Miranda.Plugins.PluginManagerBase, + bool) + IL_0009: nop + .line 100,100 : 9,10 '' + IL_000a: ret + } // end of method MirandaContext::InitializeCurrent + + .method assembly hidebysig static void + InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink mirandaLink, + class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager, + bool skipContextPopulation) cil managed synchronized + { + // Code size 30 (0x1e) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 104,104 : 9,10 '' + IL_0000: nop + .line 105,105 : 13,35 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: stloc.0 + IL_000d: ldloc.0 + IL_000e: brtrue.s IL_001d + + .line 106,106 : 17,99 '' + IL_0010: ldarg.1 + IL_0011: ldarg.0 + IL_0012: ldarg.2 + IL_0013: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::.ctor(class Virtuoso.Miranda.Plugins.PluginManagerBase, + class Virtuoso.Hyphen.MirandaPluginLink, + bool) + IL_0018: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + .line 107,107 : 9,10 '' + IL_001d: ret + } // end of method MirandaContext::InitializeCurrent + + .method assembly hidebysig static void + InitializeCurrent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) cil managed synchronized + { + // Code size 53 (0x35) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 111,111 : 9,10 '' + IL_0000: nop + .line 112,112 : 13,33 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 113,113 : 17,60 '' + IL_000c: ldstr "context" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 115,115 : 13,35 '' + IL_0017: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_001c: ldnull + IL_001d: ceq + IL_001f: ldc.i4.0 + IL_0020: ceq + IL_0022: stloc.0 + IL_0023: ldloc.0 + IL_0024: brtrue.s IL_002e + + .line 116,116 : 17,37 '' + IL_0026: ldarg.0 + IL_0027: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_002c: br.s IL_0034 + + .line 118,118 : 17,55 '' + IL_002e: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0033: throw + + .line 119,119 : 9,10 '' + IL_0034: ret + } // end of method MirandaContext::InitializeCurrent + + .method assembly hidebysig static void + InvalidateCurrent() cil managed synchronized + { + // Code size 33 (0x21) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 123,123 : 9,10 '' + IL_0000: nop + .line 124,124 : 13,29 '' + IL_0001: call bool Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Initialized() + IL_0006: ldc.i4.0 + IL_0007: ceq + IL_0009: stloc.0 + IL_000a: ldloc.0 + IL_000b: brtrue.s IL_0020 + + .line 125,125 : 13,14 '' + IL_000d: nop + .line 126,126 : 17,49 '' + IL_000e: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_0013: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::DetachPluginManager() + IL_0018: nop + .line 127,127 : 17,34 '' + IL_0019: ldnull + IL_001a: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + .line 128,128 : 13,14 '' + IL_001f: nop + .line 129,129 : 9,10 '' + IL_0020: ret + } // end of method MirandaContext::InvalidateCurrent + + .method assembly hidebysig instance void + AssociatePluginManager(class Virtuoso.Miranda.Plugins.PluginManagerBase manager) cil managed synchronized + { + // Code size 31 (0x1f) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 133,133 : 9,10 '' + IL_0000: nop + .line 134,134 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 135,135 : 17,60 '' + IL_000c: ldstr "manager" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 137,137 : 13,37 '' + IL_0017: ldarg.0 + IL_0018: ldarg.1 + IL_0019: stfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + .line 138,138 : 9,10 '' + IL_001e: ret + } // end of method MirandaContext::AssociatePluginManager + + .method assembly hidebysig instance void + DetachPluginManager() cil managed synchronized + { + // Code size 9 (0x9) + .maxstack 8 + .line 142,142 : 9,10 '' + IL_0000: nop + .line 143,143 : 13,34 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: stfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + .line 144,144 : 9,10 '' + IL_0008: ret + } // end of method MirandaContext::DetachPluginManager + + .method private hidebysig instance void + GetMMInterface() cil managed + { + // Code size 145 (0x91) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 mmiHandle, + [1] bool CS$4$0000) + .line 151,151 : 9,10 '' + IL_0000: nop + .line 152,152 : 13,55 '' + IL_0001: ldarg.0 + IL_0002: ldflda valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaMemoryManager + IL_0007: initobj Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + .line 153,153 : 13,78 '' + IL_000d: ldarg.0 + IL_000e: ldflda valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaMemoryManager + IL_0013: ldtoken Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + IL_0018: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_001d: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0022: stfld int32 Virtuoso.Miranda.Plugins.Native.MM_INTERFACE::Size + .line 155,155 : 13,127 '' + IL_0027: ldloca.s mmiHandle + IL_0029: ldarg.0 + IL_002a: ldflda valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaMemoryManager + IL_002f: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0034: nop + .line 158,158 : 13,14 '' + .try + { + IL_0035: nop + .line 159,159 : 17,109 '' + IL_0036: ldarg.0 + IL_0037: ldstr "Miranda/System/GetMMI" + IL_003c: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0041: ldloca.s mmiHandle + IL_0043: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0048: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_004d: ldc.i4.0 + IL_004e: ceq + IL_0050: ldc.i4.0 + IL_0051: ceq + IL_0053: stloc.1 + IL_0054: ldloc.1 + IL_0055: brtrue.s IL_0067 + + .line 160,160 : 21,69 '' + IL_0057: ldloca.s mmiHandle + IL_0059: ldarg.0 + IL_005a: ldflda valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaMemoryManager + IL_005f: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalBack(!0&) + IL_0064: nop + IL_0065: br.s IL_0081 + + .line 162,162 : 21,157 '' + IL_0067: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_006c: ldstr "Miranda/System/GetMMI" + IL_0071: ldstr "1" + IL_0076: call string [mscorlib]System.String::Format(string, + object, + object) + IL_007b: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0080: throw + + .line 163,163 : 13,14 '' + IL_0081: nop + IL_0082: leave.s IL_008f + + .line 165,165 : 13,14 '' + } // end .try + finally + { + IL_0084: nop + .line 166,166 : 17,34 '' + IL_0085: ldloca.s mmiHandle + IL_0087: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_008c: nop + .line 167,167 : 13,14 '' + IL_008d: nop + IL_008e: endfinally + } // end handler + IL_008f: nop + .line 168,168 : 9,10 '' + IL_0090: ret + } // end of method MirandaContext::GetMMInterface + + .method assembly hidebysig instance void + PopulateContextInformation() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 171,171 : 9,10 '' + IL_0000: nop + .line 172,172 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateNetworkProtocols() + IL_0007: nop + .line 173,173 : 9,10 '' + IL_0008: ret + } // end of method MirandaContext::PopulateContextInformation + + .method private hidebysig instance void + PopulateNetworkProtocols() cil managed + { + // Code size 163 (0xa3) + .maxstack 4 + .locals init ([0] int32 count, + [1] valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR** pointerArrayPtr, + [2] int32 result, + [3] class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary protocols, + [4] int32 i, + [5] valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR nativeDescriptor, + [6] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol, + [7] bool CS$4$0000) + .line 176,176 : 9,10 '' + IL_0000: nop + .line 178,178 : 13,14 '' + .try + { + IL_0001: nop + .line 182,182 : 17,114 '' + IL_0002: ldarg.0 + IL_0003: ldstr "Proto/EnumProtocols" + IL_0008: ldloca.s count + IL_000a: conv.u + IL_000b: ldloca.s pointerArrayPtr + IL_000d: conv.u + IL_000e: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0013: stloc.2 + .line 183,183 : 17,33 '' + IL_0014: ldloc.2 + IL_0015: ldc.i4.0 + IL_0016: ceq + IL_0018: stloc.s CS$4$0000 + IL_001a: ldloc.s CS$4$0000 + IL_001c: brtrue.s IL_003a + + .line 183,183 : 34,205 '' + IL_001e: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0023: ldstr "Proto/EnumProtocols" + IL_0028: ldloca.s result + IL_002a: call instance string [mscorlib]System.Int32::ToString() + IL_002f: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0034: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0039: throw + + .line 185,185 : 17,78 '' + IL_003a: ldloc.0 + IL_003b: newobj instance void Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::.ctor(int32) + IL_0040: stloc.3 + .line 187,187 : 22,32 '' + IL_0041: ldc.i4.0 + IL_0042: stloc.s i + IL_0044: br.s IL_007b + + .line 188,188 : 17,18 '' + IL_0046: nop + .line 190,190 : 21,107 '' + IL_0047: ldloc.1 + IL_0048: ldloc.s i + IL_004a: conv.i + IL_004b: sizeof valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR* + IL_0051: mul + IL_0052: add + IL_0053: ldind.i + IL_0054: ldobj Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + IL_0059: stloc.s nativeDescriptor + .line 191,191 : 21,76 '' + IL_005b: ldloca.s nativeDescriptor + IL_005d: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor(valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR&) + IL_0062: stloc.s protocol + .line 193,193 : 21,60 '' + IL_0064: ldloc.3 + IL_0065: ldloc.s protocol + IL_0067: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_006c: ldloc.s protocol + IL_006e: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, + !1) + IL_0073: nop + .line 194,194 : 17,18 '' + IL_0074: nop + .line 187,187 : 44,47 '' + IL_0075: ldloc.s i + IL_0077: ldc.i4.1 + IL_0078: add + IL_0079: stloc.s i + .line 187,187 : 33,42 '' + IL_007b: ldloc.s i + IL_007d: ldloc.0 + IL_007e: clt + IL_0080: stloc.s CS$4$0000 + IL_0082: ldloc.s CS$4$0000 + IL_0084: brtrue.s IL_0046 + + .line 196,196 : 17,44 '' + IL_0086: ldarg.0 + IL_0087: ldloc.3 + IL_0088: stfld class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::protocols + .line 197,197 : 13,14 '' + IL_008d: nop + IL_008e: leave.s IL_00a1 + + .line 198,198 : 13,30 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0090: pop + .line 199,199 : 13,14 '' + IL_0091: nop + .line 200,200 : 17,60 '' + IL_0092: ldarg.0 + IL_0093: ldc.i4.0 + IL_0094: newobj instance void Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::.ctor(int32) + IL_0099: stfld class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::protocols + .line 201,201 : 13,14 '' + IL_009e: nop + IL_009f: leave.s IL_00a1 + + } // end handler + IL_00a1: nop + .line 202,202 : 9,10 '' + IL_00a2: ret + } // end of method MirandaContext::PopulateNetworkProtocols + + .method private hidebysig instance void + PopulateEnvironmentInformation() cil managed + { + // Code size 145 (0x91) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] int32 result, + [2] bool CS$4$0000) + .line 205,205 : 9,10 '' + IL_0000: nop + .line 206,206 : 13,70 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer() + IL_0006: stloc.0 + .line 209,209 : 13,14 '' + .try + { + IL_0007: nop + .line 210,210 : 17,31 '' + IL_0008: ldloc.0 + IL_0009: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + IL_000e: nop + .line 212,212 : 17,105 '' + IL_000f: ldarg.0 + IL_0010: ldstr "Miranda/System/GetVersionText" + IL_0015: ldloc.0 + IL_0016: callvirt instance native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsUIntPtr() + IL_001b: ldloc.0 + IL_001c: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0021: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0026: stloc.1 + .line 213,213 : 17,43 '' + IL_0027: ldloc.1 + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0030: nop + .line 215,215 : 17,116 '' + IL_0031: ldloc.1 + IL_0032: brtrue.s IL_004f + + IL_0034: ldloc.0 + IL_0035: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_003a: ldc.i4.0 + IL_003b: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0040: ldstr "Unicode" + IL_0045: callvirt instance int32 [mscorlib]System.String::IndexOf(string) + IL_004a: ldc.i4.m1 + IL_004b: ceq + IL_004d: br.s IL_0050 + + IL_004f: ldc.i4.1 + IL_0050: nop + IL_0051: stloc.2 + IL_0052: ldloc.2 + IL_0053: brtrue.s IL_005e + + .line 216,216 : 21,87 '' + IL_0055: ldc.i4.1 + IL_0056: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaStringEncoding(valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_005b: nop + IL_005c: br.s IL_0065 + + .line 218,218 : 21,84 '' + IL_005e: ldc.i4.0 + IL_005f: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaStringEncoding(valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0064: nop + .line 219,219 : 13,14 '' + IL_0065: nop + IL_0066: leave.s IL_0079 + + .line 221,221 : 13,14 '' + } // end .try + finally + { + IL_0068: nop + .line 222,222 : 17,33 '' + IL_0069: ldloc.0 + IL_006a: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + IL_006f: nop + .line 223,223 : 17,57 '' + IL_0070: ldloc.0 + IL_0071: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_0076: nop + .line 224,224 : 13,14 '' + IL_0077: nop + IL_0078: endfinally + } // end handler + IL_0079: nop + .line 226,226 : 13,135 '' + IL_007a: ldarg.0 + IL_007b: ldstr "Miranda/System/GetVersion" + IL_0080: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_0085: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.Translate::FromMirandaVersion(uint32) + IL_008a: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaVersion(class [mscorlib]System.Version) + IL_008f: nop + .line 227,227 : 9,10 '' + IL_0090: ret + } // end of method MirandaContext::PopulateEnvironmentInformation + + .method assembly hidebysig specialname + instance class Virtuoso.Hyphen.MirandaPluginLink + get_PluginLink() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Hyphen.MirandaPluginLink CS$1$0000) + .line 236,236 : 13,14 '' + IL_0000: nop + .line 237,237 : 17,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginLink + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 238,238 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContext::get_PluginLink + + .method assembly hidebysig specialname + instance valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + get_MirandaMemoryManager() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE CS$1$0000) + .line 244,244 : 17,18 '' + IL_0000: nop + .line 244,244 : 19,47 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaMemoryManager + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 244,244 : 48,49 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContext::get_MirandaMemoryManager + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.PluginManagerBase + get_PluginManager() cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginManagerBase CS$1$0000, + [1] bool CS$4$0001) + .line 250,250 : 13,14 '' + IL_0000: nop + .line 251,251 : 17,48 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.1 + IL_000e: ldloc.1 + IL_000f: brtrue.s IL_001c + + .line 252,252 : 21,108 '' + IL_0011: ldstr "No plugin manager associated with this context." + IL_0016: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001b: throw + + .line 254,254 : 17,43 '' + IL_001c: ldarg.0 + IL_001d: ldfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + IL_0022: stloc.0 + IL_0023: br.s IL_0025 + + .line 255,255 : 13,14 '' + IL_0025: ldloc.0 + IL_0026: ret + } // end of method MirandaContext::get_PluginManager + + .method public hidebysig specialname instance bool + get_HasPluginManager() cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 261,261 : 13,14 '' + IL_0000: nop + .line 262,262 : 17,51 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 263,263 : 13,14 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method MirandaContext::get_HasPluginManager + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + get_Current() cil managed + { + // Code size 37 (0x25) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext CS$1$0000, + [1] bool CS$4$0001) + .line 269,269 : 13,14 '' + IL_0000: nop + .line 270,270 : 17,39 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: stloc.1 + IL_000d: ldloc.1 + IL_000e: brtrue.s IL_001b + + .line 271,271 : 21,112 '' + IL_0010: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaContextNotAvailable() + IL_0015: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001a: throw + + .line 273,273 : 17,34 '' + IL_001b: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_0020: stloc.0 + IL_0021: br.s IL_0023 + + .line 274,274 : 13,14 '' + IL_0023: ldloc.0 + IL_0024: ret + } // end of method MirandaContext::get_Current + + .method public hidebysig specialname static + bool get_Initialized() cil managed + { + // Code size 17 (0x11) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 280,280 : 13,14 '' + IL_0000: nop + .line 281,281 : 17,42 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 282,282 : 13,14 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method MirandaContext::get_Initialized + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager + get_ServiceCallInterceptors() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager CS$1$0000) + .line 288,288 : 13,14 '' + IL_0000: nop + .line 289,289 : 17,49 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::serviceInterceptors + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 290,290 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContext::get_ServiceCallInterceptors + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase + get_MirandaDatabase() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase CS$1$0000) + .line 296,296 : 13,14 '' + IL_0000: nop + .line 297,297 : 17,45 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaDatabase + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 298,298 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContext::get_MirandaDatabase + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary + get_Protocols() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary CS$1$0000) + .line 304,304 : 13,14 '' + IL_0000: nop + .line 305,305 : 17,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::protocols + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 306,306 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContext::get_Protocols + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList + get_ContactList() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactList CS$1$0000) + .line 311,311 : 17,18 '' + IL_0000: nop + .line 311,311 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::contactList + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 311,311 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContext::get_ContactList + + .method public hidebysig specialname instance void + add_ModulesLoaded(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method MirandaContext::add_ModulesLoaded + + .method public hidebysig specialname instance void + remove_ModulesLoaded(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method MirandaContext::remove_ModulesLoaded + + .method assembly hidebysig instance void + RaiseModulesLoadedEvent() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 321,321 : 9,10 '' + IL_0000: nop + .line 322,322 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0020 + + .line 323,323 : 17,54 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_0014: ldarg.0 + IL_0015: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_001a: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + IL_001f: nop + .line 324,324 : 9,10 '' + IL_0020: ret + } // end of method MirandaContext::RaiseModulesLoadedEvent + + .method assembly hidebysig specialname + instance void add_IsolatedModePluginsUnloading(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method MirandaContext::add_IsolatedModePluginsUnloading + + .method assembly hidebysig specialname + instance void remove_IsolatedModePluginsUnloading(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method MirandaContext::remove_IsolatedModePluginsUnloading + + .method assembly hidebysig instance void + RaiseIsolatedModePluginsUnloadingEvent() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 329,329 : 9,10 '' + IL_0000: nop + .line 330,330 : 13,54 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0020 + + .line 331,331 : 17,69 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_0014: ldnull + IL_0015: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_001a: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + IL_001f: nop + .line 332,332 : 9,10 '' + IL_0020: ret + } // end of method MirandaContext::RaiseIsolatedModePluginsUnloadingEvent + + .method public hidebysig instance int32 + CallService(string serviceName) cil managed + { + // Code size 24 (0x18) + .maxstack 5 + .locals init ([0] int32 CS$1$0000) + .line 339,339 : 9,10 '' + IL_0000: nop + .line 340,340 : 13,79 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0008: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000d: ldc.i4.0 + IL_000e: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int, + bool) + IL_0013: stloc.0 + IL_0014: br.s IL_0016 + + .line 341,341 : 9,10 '' + IL_0016: ldloc.0 + IL_0017: ret + } // end of method MirandaContext::CallService + + .method public hidebysig instance int32 + CallService(string serviceName, + native int wParam, + native int lParam) cil managed + { + // Code size 21 (0x15) + .maxstack 5 + .locals init ([0] int32 CS$1$0000) + .line 344,344 : 9,10 '' + IL_0000: nop + .line 345,345 : 13,88 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call native uint Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native int) + IL_0009: ldarg.3 + IL_000a: ldc.i4.0 + IL_000b: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int, + bool) + IL_0010: stloc.0 + IL_0011: br.s IL_0013 + + .line 346,346 : 9,10 '' + IL_0013: ldloc.0 + IL_0014: ret + } // end of method MirandaContext::CallService + + .method public hidebysig instance int32 + CallService(string serviceName, + native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 16 (0x10) + .maxstack 5 + .locals init ([0] int32 CS$1$0000) + .line 350,350 : 9,10 '' + IL_0000: nop + .line 351,351 : 13,68 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldarg.3 + IL_0005: ldc.i4.0 + IL_0006: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int, + bool) + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + .line 352,352 : 9,10 '' + IL_000e: ldloc.0 + IL_000f: ret + } // end of method MirandaContext::CallService + + .method assembly hidebysig instance int32 + CallService(string serviceName, + native uint wParam, + native int lParam, + bool noInterception) cil managed + { + // Code size 96 (0x60) + .maxstack 4 + .locals init ([0] int32 returnCode, + [1] int32 CS$1$0000, + [2] bool CS$4$0001) + .line 355,355 : 9,10 '' + IL_0000: nop + .line 356,356 : 13,51 '' + IL_0001: ldarg.1 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.2 + IL_000b: ldloc.2 + IL_000c: brtrue.s IL_0019 + + .line 357,357 : 17,60 '' + IL_000e: ldstr "service" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 359,361 : 13,137 '' + IL_0019: ldarg.0 + IL_001a: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::serviceInterceptors + IL_001f: ldarg.1 + IL_0020: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::RequiresInterception(string) + IL_0025: brfalse.s IL_002b + + IL_0027: ldarg.s noInterception + IL_0029: brfalse.s IL_0045 + + IL_002b: ldarg.0 + IL_002c: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginLink + IL_0031: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0036: ldfld class Virtuoso.Hyphen.Native.CallServicePrototype Virtuoso.Hyphen.Native.NativePluginLink::CallService + IL_003b: ldarg.1 + IL_003c: ldarg.2 + IL_003d: ldarg.3 + IL_003e: callvirt instance int32 Virtuoso.Hyphen.Native.CallServicePrototype::Invoke(string, + native uint, + native int) + IL_0043: br.s IL_0058 + + IL_0045: ldarg.0 + IL_0046: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::serviceInterceptors + IL_004b: ldarg.1 + IL_004c: callvirt instance class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::get_Item(string) + IL_0051: ldarg.2 + IL_0052: ldarg.3 + IL_0053: callvirt instance int32 Virtuoso.Miranda.Plugins.Callback::Invoke(native uint, + native int) + IL_0058: nop + IL_0059: stloc.0 + .line 363,363 : 13,31 '' + IL_005a: ldloc.0 + IL_005b: stloc.1 + IL_005c: br.s IL_005e + + .line 364,364 : 9,10 '' + IL_005e: ldloc.1 + IL_005f: ret + } // end of method MirandaContext::CallService + + .method assembly hidebysig instance int32 + CallServiceUnsafe(string serviceName, + void* wParam, + void* lParam) cil managed + { + // Code size 25 (0x19) + .maxstack 4 + .locals init ([0] int32 CS$1$0000) + .line 367,367 : 9,10 '' + IL_0000: nop + .line 368,368 : 13,78 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginLink + IL_0007: ldfld class Virtuoso.Hyphen.Native.CallServiceUnsafePrototype Virtuoso.Hyphen.MirandaPluginLink::CallServiceUnsafe + IL_000c: ldarg.1 + IL_000d: ldarg.2 + IL_000e: ldarg.3 + IL_000f: callvirt instance int32 Virtuoso.Hyphen.Native.CallServiceUnsafePrototype::Invoke(string, + void*, + void*) + IL_0014: stloc.0 + IL_0015: br.s IL_0017 + + .line 369,369 : 9,10 '' + IL_0017: ldloc.0 + IL_0018: ret + } // end of method MirandaContext::CallServiceUnsafe + + .event [mscorlib]System.EventHandler ModulesLoaded + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::add_ModulesLoaded(class [mscorlib]System.EventHandler) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::remove_ModulesLoaded(class [mscorlib]System.EventHandler) + } // end of event MirandaContext::ModulesLoaded + .event [mscorlib]System.EventHandler IsolatedModePluginsUnloading + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::remove_IsolatedModePluginsUnloading(class [mscorlib]System.EventHandler) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::add_IsolatedModePluginsUnloading(class [mscorlib]System.EventHandler) + } // end of event MirandaContext::IsolatedModePluginsUnloading + .property instance class Virtuoso.Hyphen.MirandaPluginLink + PluginLink() + { + .get instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + } // end of property MirandaContext::PluginLink + .property instance valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + MirandaMemoryManager() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaMemoryManager() + } // end of property MirandaContext::MirandaMemoryManager + .property instance class Virtuoso.Miranda.Plugins.PluginManagerBase + PluginManager() + { + .get instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + } // end of property MirandaContext::PluginManager + .property instance bool HasPluginManager() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_HasPluginManager() + } // end of property MirandaContext::HasPluginManager + .property class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + Current() + { + .get class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + } // end of property MirandaContext::Current + .property bool Initialized() + { + .get bool Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Initialized() + } // end of property MirandaContext::Initialized + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager + ServiceCallInterceptors() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors() + } // end of property MirandaContext::ServiceCallInterceptors + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase + MirandaDatabase() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaDatabase() + } // end of property MirandaContext::MirandaDatabase + .property instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary + Protocols() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Protocols() + } // end of property MirandaContext::Protocols + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList + ContactList() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList() + } // end of property MirandaContext::ContactList +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + +.class private abstract auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder + extends [mscorlib]System.Object +{ + .field private static initonly class [mscorlib]System.Collections.Generic.Dictionary`2 EventHandlerDescriptorsTable + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 44,44 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\LazyEventBinder.cs' + IL_0000: nop + .line 45,45 : 13,86 '' + IL_0001: ldc.i4.3 + IL_0002: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0007: stsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + .line 46,46 : 9,10 '' + IL_000c: ret + } // end of method LazyEventBinder::.cctor + + .method public hidebysig static void AttachDelegate(!!T& destination, + !!T 'value') cil managed + { + // Code size 117 (0x75) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 53,53 : 9,10 '' + IL_0000: nop + .line 54,54 : 13,31 '' + IL_0001: ldarg.1 + IL_0002: box !!T + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.0 + IL_000e: ldloc.0 + IL_000f: brtrue.s IL_001c + + .line 55,55 : 17,58 '' + IL_0011: ldstr "value" + IL_0016: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001b: throw + + .line 57,57 : 13,59 '' + IL_001c: ldtoken !!T + IL_0021: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0026: ldtoken [mscorlib]System.Delegate + IL_002b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0030: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0035: stloc.0 + IL_0036: ldloc.0 + IL_0037: brtrue.s IL_0044 + + .line 58,58 : 17,50 '' + IL_0039: ldstr "T" + IL_003e: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0043: throw + + .line 60,60 : 13,93 '' + IL_0044: ldarg.0 + IL_0045: ldarg.0 + IL_0046: ldobj !!T + IL_004b: box !!T + IL_0050: isinst [mscorlib]System.Delegate + IL_0055: ldarg.1 + IL_0056: box !!T + IL_005b: isinst [mscorlib]System.Delegate + IL_0060: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0065: isinst !!T + IL_006a: unbox.any !!T + IL_006f: stobj !!T + .line 61,61 : 9,10 '' + IL_0074: ret + } // end of method LazyEventBinder::AttachDelegate + + .method public hidebysig static void DetachDelegate(!!T& destination, + !!T 'value') cil managed + { + // Code size 90 (0x5a) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 64,64 : 9,10 '' + IL_0000: nop + .line 65,65 : 13,59 '' + IL_0001: ldtoken !!T + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: ldtoken [mscorlib]System.Delegate + IL_0010: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0015: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_001a: stloc.0 + IL_001b: ldloc.0 + IL_001c: brtrue.s IL_0029 + + .line 66,66 : 17,50 '' + IL_001e: ldstr "T" + IL_0023: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0028: throw + + .line 68,68 : 13,92 '' + IL_0029: ldarg.0 + IL_002a: ldarg.0 + IL_002b: ldobj !!T + IL_0030: box !!T + IL_0035: isinst [mscorlib]System.Delegate + IL_003a: ldarg.1 + IL_003b: box !!T + IL_0040: isinst [mscorlib]System.Delegate + IL_0045: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_004a: isinst !!T + IL_004f: unbox.any !!T + IL_0054: stobj !!T + .line 69,69 : 9,10 '' + IL_0059: ret + } // end of method LazyEventBinder::DetachDelegate + + .method public hidebysig static void HookMirandaEvent(string eventName, + class Virtuoso.Miranda.Plugins.Callback callback) cil managed + { + // Code size 80 (0x50) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [1] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000, + [2] bool CS$4$0001) + .line 72,72 : 9,10 '' + IL_0000: nop + .line 73,73 : 13,48 '' + IL_0001: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 74,74 : 13,14 '' + .try + { + IL_000e: nop + .line 75,75 : 17,73 '' + IL_000f: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0014: ldarg.0 + IL_0015: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_001a: ldc.i4.0 + IL_001b: ceq + IL_001d: stloc.2 + IL_001e: ldloc.2 + IL_001f: brtrue.s IL_0023 + + .line 76,76 : 21,28 '' + IL_0021: leave.s IL_004e + + .line 78,78 : 17,188 '' + IL_0023: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0028: ldarg.0 + IL_0029: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_002e: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0033: ldarg.1 + IL_0034: ldc.i4.1 + IL_0035: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IDictionary`2, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_003a: stloc.0 + .line 79,79 : 17,52 '' + IL_003b: ldloc.0 + IL_003c: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0041: nop + .line 80,80 : 13,14 '' + IL_0042: nop + IL_0043: leave.s IL_004d + + } // end .try + finally + { + IL_0045: ldloc.1 + IL_0046: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_004b: nop + IL_004c: endfinally + } // end handler + IL_004d: nop + IL_004e: nop + .line 81,81 : 9,10 '' + IL_004f: ret + } // end of method LazyEventBinder::HookMirandaEvent + + .method public hidebysig static void UnhookMirandaEvent(string eventName, + class [mscorlib]System.Delegate callback) cil managed + { + // Code size 120 (0x78) + .maxstack 3 + .locals init ([0] int32 result, + [1] bool CS$4$0000, + [2] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 84,84 : 9,10 '' + IL_0000: nop + .line 85,85 : 13,34 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: stloc.1 + IL_0006: ldloc.1 + IL_0007: brtrue.s IL_000b + + .line 86,86 : 17,24 '' + IL_0009: br.s IL_0076 + + .line 88,88 : 13,48 '' + IL_000b: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0010: dup + IL_0011: stloc.2 + IL_0012: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0017: nop + .line 89,89 : 13,14 '' + .try + { + IL_0018: nop + .line 90,90 : 17,74 '' + IL_0019: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_001e: ldarg.0 + IL_001f: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0024: stloc.1 + IL_0025: ldloc.1 + IL_0026: brtrue.s IL_002a + + .line 91,91 : 21,28 '' + IL_0028: leave.s IL_0076 + + .line 93,93 : 17,148 '' + IL_002a: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_002f: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0034: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0039: ldfld class Virtuoso.Hyphen.Native.UnhookEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::UnhookEvent + IL_003e: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0043: ldarg.0 + IL_0044: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0049: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_004e: callvirt instance int32 Virtuoso.Hyphen.Native.UnhookEventPrototype::Invoke(native int) + IL_0053: stloc.0 + .line 94,94 : 17,43 '' + IL_0054: ldloc.0 + IL_0055: ldc.i4.0 + IL_0056: ceq + IL_0058: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_005d: nop + .line 96,96 : 17,64 '' + IL_005e: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0063: ldarg.0 + IL_0064: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::Remove(!0) + IL_0069: pop + .line 97,97 : 13,14 '' + IL_006a: nop + IL_006b: leave.s IL_0075 + + } // end .try + finally + { + IL_006d: ldloc.2 + IL_006e: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0073: nop + IL_0074: endfinally + } // end handler + IL_0075: nop + IL_0076: nop + .line 98,98 : 9,10 '' + IL_0077: ret + } // end of method LazyEventBinder::UnhookMirandaEvent + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection + extends class [mscorlib]System.Collections.Generic.List`1 + implements class Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 +{ + .custom instance void [mscorlib]System.Reflection.DefaultMemberAttribute::.ctor(string) = ( 01 00 04 49 74 65 6D 00 00 ) // ...Item.. + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 29,29 : 9,59 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\MenuItemDeclarationCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.3 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0007: nop + .line 29,29 : 60,61 '' + IL_0008: nop + .line 29,29 : 62,63 '' + IL_0009: nop + IL_000a: ret + } // end of method MenuItemDeclarationCollection::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + get_Item(string tag) cil managed + { + // Code size 13 (0xd) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute CS$1$0000) + .line 38,38 : 13,14 '' + IL_0000: nop + .line 39,39 : 17,34 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection::Find(string) + IL_0008: stloc.0 + IL_0009: br.s IL_000b + + .line 40,40 : 13,14 '' + IL_000b: ldloc.0 + IL_000c: ret + } // end of method MenuItemDeclarationCollection::get_Item + + .method public hidebysig newslot virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + Find(string tag) cil managed + { + // Code size 79 (0x4f) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute CS$1$0000, + [2] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001, + [3] bool CS$4$0002) + .line 44,44 : 9,10 '' + IL_0000: nop + .line 45,45 : 13,20 '' + IL_0001: nop + .line 45,45 : 59,63 '' + IL_0002: ldarg.0 + IL_0003: call instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0008: stloc.2 + .try + { + IL_0009: br.s IL_002b + + .line 45,45 : 22,55 '' + IL_000b: ldloca.s CS$5$0001 + IL_000d: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0012: stloc.0 + .line 46,46 : 17,68 '' + IL_0013: ldloc.0 + IL_0014: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Tag() + IL_0019: ldarg.1 + IL_001a: ldc.i4.4 + IL_001b: callvirt instance bool [mscorlib]System.String::Equals(string, + valuetype [mscorlib]System.StringComparison) + IL_0020: ldc.i4.0 + IL_0021: ceq + IL_0023: stloc.3 + IL_0024: ldloc.3 + IL_0025: brtrue.s IL_002b + + .line 46,46 : 69,81 '' + IL_0027: ldloc.0 + IL_0028: stloc.1 + IL_0029: leave.s IL_004c + + .line 45,45 : 56,58 '' + IL_002b: ldloca.s CS$5$0001 + IL_002d: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0032: stloc.3 + IL_0033: ldloc.3 + IL_0034: brtrue.s IL_000b + + IL_0036: leave.s IL_0047 + + } // end .try + finally + { + IL_0038: ldloca.s CS$5$0001 + IL_003a: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0040: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0045: nop + IL_0046: endfinally + } // end handler + IL_0047: nop + .line 48,48 : 13,25 '' + IL_0048: ldnull + IL_0049: stloc.1 + IL_004a: br.s IL_004c + + IL_004c: nop + .line 49,49 : 9,10 '' + IL_004d: ldloc.1 + IL_004e: ret + } // end of method MenuItemDeclarationCollection::Find + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + Item(string) + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection::get_Item(string) + } // end of property MenuItemDeclarationCollection::Item +} // end of class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection + extends class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 + implements class Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 +{ + .custom instance void [mscorlib]System.Reflection.DefaultMemberAttribute::.ctor(string) = ( 01 00 04 49 74 65 6D 00 00 ) // ...Item.. + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection list) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 30,30 : 9,104 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\MenuItemDeclarationReadOnlyCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::.ctor(class [mscorlib]System.Collections.Generic.IList`1) + IL_0007: nop + .line 30,30 : 105,106 '' + IL_0008: nop + .line 30,30 : 107,108 '' + IL_0009: nop + IL_000a: ret + } // end of method MenuItemDeclarationReadOnlyCollection::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + get_Item(string tag) cil managed + { + // Code size 13 (0xd) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute CS$1$0000) + .line 39,39 : 13,14 '' + IL_0000: nop + .line 40,40 : 17,34 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection::Find(string) + IL_0008: stloc.0 + IL_0009: br.s IL_000b + + .line 41,41 : 13,14 '' + IL_000b: ldloc.0 + IL_000c: ret + } // end of method MenuItemDeclarationReadOnlyCollection::get_Item + + .method public hidebysig newslot virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + Find(string tag) cil managed + { + // Code size 102 (0x66) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute CS$1$0000, + [2] bool CS$4$0001, + [3] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0002) + .line 45,45 : 9,10 '' + IL_0000: nop + .line 46,46 : 13,43 '' + IL_0001: ldarg.1 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.2 + IL_000b: ldloc.2 + IL_000c: brtrue.s IL_0019 + + .line 47,47 : 17,56 '' + IL_000e: ldstr "tag" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 49,49 : 13,20 '' + IL_0019: nop + .line 49,49 : 59,63 '' + IL_001a: ldarg.0 + IL_001b: call instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_0020: stloc.3 + .try + { + IL_0021: br.s IL_0042 + + .line 49,49 : 22,55 '' + IL_0023: ldloc.3 + IL_0024: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0029: stloc.0 + .line 50,50 : 17,68 '' + IL_002a: ldarg.1 + IL_002b: ldloc.0 + IL_002c: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Tag() + IL_0031: ldc.i4.4 + IL_0032: callvirt instance bool [mscorlib]System.String::Equals(string, + valuetype [mscorlib]System.StringComparison) + IL_0037: ldc.i4.0 + IL_0038: ceq + IL_003a: stloc.2 + IL_003b: ldloc.2 + IL_003c: brtrue.s IL_0042 + + .line 51,51 : 21,33 '' + IL_003e: ldloc.0 + IL_003f: stloc.1 + IL_0040: leave.s IL_0063 + + .line 49,49 : 56,58 '' + IL_0042: ldloc.3 + IL_0043: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0048: stloc.2 + IL_0049: ldloc.2 + IL_004a: brtrue.s IL_0023 + + IL_004c: leave.s IL_005e + + } // end .try + finally + { + IL_004e: ldloc.3 + IL_004f: ldnull + IL_0050: ceq + IL_0052: stloc.2 + IL_0053: ldloc.2 + IL_0054: brtrue.s IL_005d + + IL_0056: ldloc.3 + IL_0057: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_005c: nop + IL_005d: endfinally + } // end handler + IL_005e: nop + .line 53,53 : 13,25 '' + IL_005f: ldnull + IL_0060: stloc.1 + IL_0061: br.s IL_0063 + + IL_0063: nop + .line 54,54 : 9,10 '' + IL_0064: ldloc.1 + IL_0065: ret + } // end of method MenuItemDeclarationReadOnlyCollection::Find + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + Item(string) + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection::get_Item(string) + } // end of property MenuItemDeclarationReadOnlyCollection::Item +} // end of class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private int32 size + .field private int32 isTreeFocused + .field private int32 isGroup + .field private native int itemPtr + .field private valuetype [System.Drawing]System.Drawing.Point point + .field private valuetype [System.Drawing]System.Drawing.Rectangle rectangle + .method public hidebysig specialname instance bool + get_IsTreeFocused() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 43,43 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContactListInfoTip.cs' + IL_0000: nop + .line 43,43 : 19,59 '' + IL_0001: ldarg.0 + IL_0002: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::isTreeFocused + IL_0007: call bool [mscorlib]System.Convert::ToBoolean(int32) + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 43,43 : 60,61 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method ContactListInfoTip::get_IsTreeFocused + + .method public hidebysig specialname instance bool + get_IsGroup() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 48,48 : 17,18 '' + IL_0000: nop + .line 48,48 : 19,53 '' + IL_0001: ldarg.0 + IL_0002: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::isGroup + IL_0007: call bool [mscorlib]System.Convert::ToBoolean(int32) + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 48,48 : 54,55 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method ContactListInfoTip::get_IsGroup + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + get_Item() cil managed + { + // Code size 39 (0x27) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem CS$1$0000) + .line 54,54 : 13,14 '' + IL_0000: nop + .line 55,55 : 17,117 '' + IL_0001: ldarg.0 + IL_0002: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_IsGroup() + IL_0007: brtrue.s IL_0016 + + IL_0009: ldarg.0 + IL_000a: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::itemPtr + IL_000f: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_0014: br.s IL_0021 + + IL_0016: ldarg.0 + IL_0017: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::itemPtr + IL_001c: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo::.ctor(native int) + IL_0021: nop + IL_0022: stloc.0 + IL_0023: br.s IL_0025 + + .line 56,56 : 13,14 '' + IL_0025: ldloc.0 + IL_0026: ret + } // end of method ContactListInfoTip::get_Item + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Point + get_Point() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype [System.Drawing]System.Drawing.Point CS$1$0000) + .line 61,61 : 17,18 '' + IL_0000: nop + .line 61,61 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype [System.Drawing]System.Drawing.Point Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::point + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 61,61 : 33,34 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactListInfoTip::get_Point + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Rectangle + get_Rectangle() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype [System.Drawing]System.Drawing.Rectangle CS$1$0000) + .line 66,66 : 17,18 '' + IL_0000: nop + .line 66,66 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype [System.Drawing]System.Drawing.Rectangle Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::rectangle + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 66,66 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactListInfoTip::get_Rectangle + + .property instance bool IsTreeFocused() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_IsTreeFocused() + } // end of property ContactListInfoTip::IsTreeFocused + .property instance bool IsGroup() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_IsGroup() + } // end of property ContactListInfoTip::IsGroup + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + Item() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_Item() + } // end of property ContactListInfoTip::Item + .property instance valuetype [System.Drawing]System.Drawing.Point + Point() + { + .get instance valuetype [System.Drawing]System.Drawing.Point Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_Point() + } // end of property ContactListInfoTip::Point + .property instance valuetype [System.Drawing]System.Drawing.Rectangle + Rectangle() + { + .get instance valuetype [System.Drawing]System.Drawing.Rectangle Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_Rectangle() + } // end of property ContactListInfoTip::Rectangle +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.CONTACTINFO + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field public uint8 Flag + .field public native int ContactHandle + .field public native int Module + .field public uint8 Type + .field public native int Value + .method public hidebysig specialname rtspecialname + instance void .ctor(native int contactHandle, + native int module) cil managed + { + // Code size 62 (0x3e) + .maxstack 8 + .line 45,45 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\CONTACTINFO.cs' + IL_0000: nop + .line 46,46 : 13,48 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::ContactHandle + .line 47,47 : 13,27 '' + IL_0008: ldarg.0 + IL_0009: ldc.i4.0 + IL_000a: stfld uint8 Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Flag + .line 48,48 : 13,34 '' + IL_000f: ldarg.0 + IL_0010: ldarg.2 + IL_0011: stfld native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Module + .line 49,49 : 13,27 '' + IL_0016: ldarg.0 + IL_0017: ldc.i4.0 + IL_0018: stfld uint8 Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Type + .line 50,50 : 13,38 '' + IL_001d: ldarg.0 + IL_001e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0023: stfld native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Value + .line 51,51 : 13,61 '' + IL_0028: ldarg.0 + IL_0029: ldtoken Virtuoso.Miranda.Plugins.Native.CONTACTINFO + IL_002e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0033: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0038: stfld int32 Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Size + .line 52,52 : 9,10 '' + IL_003d: ret + } // end of method CONTACTINFO::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Native.CONTACTINFO + +.class public sequential ansi serializable sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field private initonly int32 Size + .field public native int Module + .field public uint32 Timestamp + .field public uint32 Flags + .field public uint16 EventType + .field public uint32 BlobSize + .field public notserialized native int BlobPtr + .method public hidebysig specialname rtspecialname + instance void .ctor(int32 blobSize, + native int blobPtr) cil managed + { + // Code size 66 (0x42) + .maxstack 5 + .locals init ([0] uint16 CS$0$0000, + [1] uint32 CS$0$0001) + .line 46,46 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\DBEVENTINFO.cs' + IL_0000: nop + .line 47,47 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0007: stfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Module + .line 48,48 : 13,62 '' + IL_000c: ldarg.0 + IL_000d: ldarg.0 + IL_000e: ldarg.0 + IL_000f: ldc.i4.0 + IL_0010: dup + IL_0011: stloc.0 + IL_0012: stfld uint16 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::EventType + IL_0017: ldloc.0 + IL_0018: dup + IL_0019: stloc.1 + IL_001a: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Flags + IL_001f: ldloc.1 + IL_0020: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Timestamp + .line 49,49 : 13,44 '' + IL_0025: ldarg.0 + IL_0026: ldarg.1 + IL_0027: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::BlobSize + .line 50,50 : 13,36 '' + IL_002c: ldarg.0 + IL_002d: ldarg.2 + IL_002e: stfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::BlobPtr + .line 53,53 : 13,14 '' + IL_0033: nop + .line 54,54 : 17,49 '' + IL_0034: ldarg.0 + IL_0035: sizeof Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + IL_003b: stfld int32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Size + .line 55,55 : 13,14 '' + IL_0040: nop + .line 56,56 : 9,10 '' + IL_0041: ret + } // end of method DBEVENTINFO::.ctor + + .method public hidebysig static int32 LayoutAnsiUniString(string data, + [out] native int& pBlob) cil managed + { + // Code size 187 (0xbb) + .maxstack 4 + .locals init ([0] int32 ansiBytesCount, + [1] int32 unicodeBytesCount, + [2] int32 terminatorBytesCount, + [3] int32 totalBytes, + [4] native int pAnsiEnd, + [5] native int pAnsiTermEnd, + [6] int32 CS$1$0000, + [7] char[] CS$0$0001) + .line 70,70 : 9,10 '' + IL_0000: nop + .line 71,71 : 13,70 '' + IL_0001: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Default() + IL_0006: ldarg.0 + IL_0007: callvirt instance int32 [mscorlib]System.Text.Encoding::GetByteCount(string) + IL_000c: stloc.0 + .line 72,72 : 13,73 '' + IL_000d: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Unicode() + IL_0012: ldarg.0 + IL_0013: callvirt instance int32 [mscorlib]System.Text.Encoding::GetByteCount(string) + IL_0018: stloc.1 + .line 73,73 : 13,42 '' + IL_0019: ldc.i4.3 + IL_001a: stloc.2 + .line 75,75 : 13,88 '' + IL_001b: ldloc.0 + IL_001c: ldloc.1 + IL_001d: add + IL_001e: ldloc.2 + IL_001f: add + IL_0020: stloc.3 + .line 77,77 : 13,54 '' + IL_0021: ldarg.1 + IL_0022: ldloc.3 + IL_0023: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_0028: stobj [mscorlib]System.IntPtr + .line 78,78 : 13,82 '' + IL_002d: ldloca.s pAnsiEnd + IL_002f: ldarg.1 + IL_0030: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0035: ldloc.0 + IL_0036: conv.i8 + IL_0037: add + IL_0038: call instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_003d: nop + .line 79,79 : 13,71 '' + IL_003e: ldloca.s pAnsiTermEnd + IL_0040: ldloca.s pAnsiEnd + IL_0042: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0047: ldc.i4.1 + IL_0048: conv.i8 + IL_0049: add + IL_004a: call instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_004f: nop + .line 81,81 : 13,85 '' + IL_0050: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Default() + IL_0055: ldarg.0 + IL_0056: callvirt instance uint8[] [mscorlib]System.Text.Encoding::GetBytes(string) + IL_005b: ldc.i4.0 + IL_005c: ldarg.1 + IL_005d: ldobj [mscorlib]System.IntPtr + IL_0062: ldloc.0 + IL_0063: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + IL_0068: nop + .line 82,82 : 13,63 '' + IL_0069: ldc.i4.1 + IL_006a: newarr [mscorlib]System.Char + IL_006f: stloc.s CS$0$0001 + IL_0071: ldloc.s CS$0$0001 + IL_0073: ldc.i4.0 + IL_0074: ldloc.s pAnsiEnd + IL_0076: ldc.i4.1 + IL_0077: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(char[], + int32, + native int, + int32) + IL_007c: nop + .line 84,84 : 13,95 '' + IL_007d: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Unicode() + IL_0082: ldarg.0 + IL_0083: callvirt instance uint8[] [mscorlib]System.Text.Encoding::GetBytes(string) + IL_0088: ldc.i4.0 + IL_0089: ldloc.s pAnsiTermEnd + IL_008b: ldloc.1 + IL_008c: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + IL_0091: nop + .line 85,85 : 13,121 '' + IL_0092: ldc.i4.2 + IL_0093: newarr [mscorlib]System.Char + IL_0098: stloc.s CS$0$0001 + IL_009a: ldloc.s CS$0$0001 + IL_009c: ldc.i4.0 + IL_009d: ldloca.s pAnsiTermEnd + IL_009f: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_00a4: ldloc.1 + IL_00a5: conv.i8 + IL_00a6: add + IL_00a7: newobj instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_00ac: ldc.i4.2 + IL_00ad: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(char[], + int32, + native int, + int32) + IL_00b2: nop + .line 87,87 : 13,31 '' + IL_00b3: ldloc.3 + IL_00b4: stloc.s CS$1$0000 + IL_00b6: br.s IL_00b8 + + .line 88,88 : 9,10 '' + IL_00b8: ldloc.s CS$1$0000 + IL_00ba: ret + } // end of method DBEVENTINFO::LayoutAnsiUniString + +} // end of class Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING + extends [mscorlib]System.ValueType +{ + .field public native int Format + .field public native int Output + .field public int32 MaxBytes + .method public hidebysig specialname rtspecialname + instance void .ctor(string format) cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle CS$0$0000) + .line 107,107 : 9,10 '' + IL_0000: nop + .line 108,108 : 13,84 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldc.i4.0 + IL_0004: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0009: stloc.0 + IL_000a: ldloca.s CS$0$0000 + IL_000c: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0011: stfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Format + .line 109,109 : 13,34 '' + IL_0016: ldarg.0 + IL_0017: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_001c: stfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Output + .line 110,110 : 13,26 '' + IL_0021: ldarg.0 + IL_0022: ldc.i4.0 + IL_0023: stfld int32 Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::MaxBytes + .line 111,111 : 9,10 '' + IL_0028: ret + } // end of method DBTIMETOSTRING::.ctor + + .method public hidebysig instance void + Free() cil managed + { + // Code size 37 (0x25) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 114,114 : 9,10 '' + IL_0000: nop + .line 115,115 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Format + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: stloc.0 + IL_0015: ldloc.0 + IL_0016: brtrue.s IL_0024 + + .line 116,116 : 17,45 '' + IL_0018: ldarg.0 + IL_0019: ldfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Format + IL_001e: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_0023: nop + .line 117,117 : 9,10 '' + IL_0024: ret + } // end of method DBTIMETOSTRING::Free + +} // end of class Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field public initonly native int Name + .field public initonly valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Type + .method public hidebysig specialname rtspecialname + instance void .ctor(string name, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType 'type') cil managed + { + // Code size 48 (0x30) + .maxstack 8 + .line 41,41 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\PROTOCOLDESCRIPTOR.cs' + IL_0000: nop + .line 42,42 : 13,71 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldc.i4.0 + IL_0004: call valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0009: call native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle) + IL_000e: stfld native int Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Name + .line 43,43 : 13,30 '' + IL_0013: ldarg.0 + IL_0014: ldarg.2 + IL_0015: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Type + .line 45,45 : 13,68 '' + IL_001a: ldarg.0 + IL_001b: ldtoken Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + IL_0020: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0025: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_002a: stfld int32 Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Size + .line 46,46 : 9,10 '' + IL_002f: ret + } // end of method PROTOCOLDESCRIPTOR::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Native.StringEncoding + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Ansi = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Unicode = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding MirandaDefault = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.Native.StringEncoding + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle + extends [mscorlib]System.ValueType + implements Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle, + [mscorlib]System.IDisposable +{ + .field private native int intPtr + .field public static initonly valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Empty + .field private string originalString + .field private valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding encoding + .method public hidebysig specialname rtspecialname + instance void .ctor(string str, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding encoding) cil managed + { + // Code size 93 (0x5d) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding CS$4$0000, + [1] bool CS$4$0001) + .line 49,49 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\UnmanagedStringHandle.cs' + IL_0000: nop + .line 51,51 : 13,30 '' + IL_0001: ldarg.2 + IL_0002: stloc.0 + IL_0003: ldloc.0 + IL_0004: switch ( + IL_0021, + IL_0013) + IL_0011: br.s IL_002f + + .line 54,54 : 21,67 '' + IL_0013: ldarg.0 + IL_0014: ldarg.1 + IL_0015: call native int [mscorlib]System.Runtime.InteropServices.Marshal::StringToHGlobalUni(string) + IL_001a: stfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + .line 55,55 : 21,27 '' + IL_001f: br.s IL_004e + + .line 57,57 : 21,68 '' + IL_0021: ldarg.0 + IL_0022: ldarg.1 + IL_0023: call native int [mscorlib]System.Runtime.InteropServices.Marshal::StringToHGlobalAnsi(string) + IL_0028: stfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + .line 58,58 : 21,27 '' + IL_002d: br.s IL_004e + + .line 60,60 : 21,73 '' + IL_002f: call valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaStringEncoding() + IL_0034: starg.s encoding + .line 62,62 : 21,67 '' + IL_0036: ldarg.2 + IL_0037: ldc.i4.2 + IL_0038: ceq + IL_003a: ldc.i4.0 + IL_003b: ceq + IL_003d: stloc.1 + IL_003e: ldloc.1 + IL_003f: brtrue.s IL_004c + + .line 63,63 : 25,122 '' + IL_0041: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding() + IL_0046: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_004b: throw + + .line 65,65 : 21,33 '' + IL_004c: br.s IL_0001 + + .line 68,68 : 13,39 '' + IL_004e: ldarg.0 + IL_004f: ldarg.1 + IL_0050: stfld string Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::originalString + .line 69,69 : 13,38 '' + IL_0055: ldarg.0 + IL_0056: ldarg.2 + IL_0057: stfld valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::encoding + .line 70,70 : 9,10 '' + IL_005c: ret + } // end of method UnmanagedStringHandle::.ctor + + .method public hidebysig specialname instance string + get_OriginalString() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 78,78 : 17,18 '' + IL_0000: nop + .line 78,78 : 19,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::originalString + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 78,78 : 42,43 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method UnmanagedStringHandle::get_OriginalString + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding + get_Encoding() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding CS$1$0000) + .line 84,84 : 13,14 '' + IL_0000: nop + .line 85,85 : 17,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::encoding + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 86,86 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method UnmanagedStringHandle::get_Encoding + + .method public hidebysig newslot specialname virtual final + instance native int get_IntPtr() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 91,91 : 17,18 '' + IL_0000: nop + .line 91,91 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 91,91 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method UnmanagedStringHandle::get_IntPtr + + .method public hidebysig specialname static + native int op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle operand) cil managed + { + // Code size 13 (0xd) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 95,95 : 9,10 '' + IL_0000: nop + .line 96,96 : 13,35 '' + IL_0001: ldarga.s operand + IL_0003: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0008: stloc.0 + IL_0009: br.s IL_000b + + .line 97,97 : 9,10 '' + IL_000b: ldloc.0 + IL_000c: ret + } // end of method UnmanagedStringHandle::op_Implicit + + .method public hidebysig specialname static + native uint op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle operand) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 18 (0x12) + .maxstack 1 + .locals init ([0] native uint CS$1$0000) + .line 101,101 : 9,10 '' + IL_0000: nop + .line 102,102 : 13,55 '' + IL_0001: ldarga.s operand + IL_0003: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0008: call native uint Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native int) + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 103,103 : 9,10 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method UnmanagedStringHandle::op_Implicit + + .method public hidebysig specialname instance int32 + get_Size() cil managed + { + // Code size 82 (0x52) + .maxstack 2 + .locals init ([0] int32 CS$1$0000, + [1] bool CS$4$0001, + [2] valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding CS$4$0002) + .line 108,108 : 13,14 '' + IL_0000: nop + .line 109,109 : 17,30 '' + IL_0001: ldarg.0 + IL_0002: call instance bool Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid() + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: brtrue.s IL_000f + + .line 110,110 : 21,30 '' + IL_000b: ldc.i4.0 + IL_000c: stloc.0 + IL_000d: br.s IL_0050 + + .line 112,112 : 17,34 '' + IL_000f: ldarg.0 + IL_0010: ldfld valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::encoding + IL_0015: stloc.2 + IL_0016: ldloc.2 + IL_0017: switch ( + IL_0026, + IL_0039) + IL_0024: br.s IL_004c + + .line 115,115 : 25,90 '' + IL_0026: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Default() + IL_002b: ldarg.0 + IL_002c: ldfld string Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::originalString + IL_0031: callvirt instance int32 [mscorlib]System.Text.Encoding::GetByteCount(string) + IL_0036: stloc.0 + IL_0037: br.s IL_0050 + + .line 117,117 : 25,90 '' + IL_0039: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Unicode() + IL_003e: ldarg.0 + IL_003f: ldfld string Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::originalString + IL_0044: callvirt instance int32 [mscorlib]System.Text.Encoding::GetByteCount(string) + IL_0049: stloc.0 + IL_004a: br.s IL_0050 + + .line 119,119 : 25,35 '' + IL_004c: ldc.i4.m1 + IL_004d: stloc.0 + IL_004e: br.s IL_0050 + + .line 121,121 : 13,14 '' + IL_0050: ldloc.0 + IL_0051: ret + } // end of method UnmanagedStringHandle::get_Size + + .method public hidebysig specialname instance bool + get_IsValid() cil managed + { + // Code size 22 (0x16) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 127,127 : 13,14 '' + IL_0000: nop + .line 128,128 : 17,48 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 129,129 : 13,14 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method UnmanagedStringHandle::get_IsValid + + .method public hidebysig newslot virtual final + instance void Free() cil managed + { + // Code size 40 (0x28) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 137,137 : 9,10 '' + IL_0000: nop + .line 138,138 : 13,25 '' + IL_0001: ldarg.0 + IL_0002: call instance bool Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid() + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0027 + + .line 139,139 : 13,14 '' + IL_000e: nop + .line 140,140 : 17,45 '' + IL_000f: ldarg.0 + IL_0010: ldfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + IL_0015: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_001a: nop + .line 141,141 : 17,38 '' + IL_001b: ldarg.0 + IL_001c: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0021: stfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + .line 142,142 : 13,14 '' + IL_0026: nop + .line 143,143 : 9,10 '' + IL_0027: ret + } // end of method UnmanagedStringHandle::Free + + .method private hidebysig newslot virtual final + instance void System.IDisposable.Dispose() cil managed + { + .override [mscorlib]System.IDisposable::Dispose + // Code size 9 (0x9) + .maxstack 8 + .line 146,146 : 9,10 '' + IL_0000: nop + .line 147,147 : 13,20 '' + IL_0001: ldarg.0 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_0007: nop + .line 148,148 : 9,10 '' + IL_0008: ret + } // end of method UnmanagedStringHandle::System.IDisposable.Dispose + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 39,39 : 9,90 '' + IL_0000: ldsflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_0005: initobj Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle + IL_000b: ret + } // end of method UnmanagedStringHandle::.cctor + + .property instance string OriginalString() + { + .get instance string Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_OriginalString() + } // end of property UnmanagedStringHandle::OriginalString + .property instance valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding + Encoding() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_Encoding() + } // end of property UnmanagedStringHandle::Encoding + .property instance native int IntPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + } // end of property UnmanagedStringHandle::IntPtr + .property instance int32 Size() + { + .get instance int32 Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_Size() + } // end of property UnmanagedStringHandle::Size + .property instance bool IsValid() + { + .get instance bool Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid() + } // end of property UnmanagedStringHandle::IsValid +} // end of class Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary + extends class [mscorlib]System.Collections.Generic.Dictionary`2 +{ + .custom instance void [mscorlib]System.Reflection.DefaultMemberAttribute::.ctor(string) = ( 01 00 04 49 74 65 6D 00 00 ) // ...Item.. + .method assembly hidebysig specialname rtspecialname + instance void .ctor(int32 count) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 31,31 : 9,61 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\ProtocolDictionary.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0007: nop + .line 31,31 : 62,63 '' + IL_0008: nop + .line 31,31 : 64,65 '' + IL_0009: nop + IL_000a: ret + } // end of method ProtocolDictionary::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_Item(string key) cil managed + { + // Code size 57 (0x39) + .maxstack 2 + .locals init ([0] bool notFound, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol CS$1$0000, + [2] bool CS$4$0001) + .line 40,40 : 13,14 '' + IL_0000: nop + .line 41,41 : 17,68 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_0010 + + IL_0004: ldarg.0 + IL_0005: ldarg.1 + IL_0006: call instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_000b: ldc.i4.0 + IL_000c: ceq + IL_000e: br.s IL_0011 + + IL_0010: ldc.i4.1 + IL_0011: nop + IL_0012: stloc.0 + .line 42,42 : 17,41 '' + IL_0013: ldloc.0 + IL_0014: ldc.i4.0 + IL_0015: ceq + IL_0017: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_001c: nop + .line 44,44 : 17,30 '' + IL_001d: ldloc.0 + IL_001e: ldc.i4.0 + IL_001f: ceq + IL_0021: stloc.2 + IL_0022: ldloc.2 + IL_0023: brtrue.s IL_002d + + .line 45,45 : 21,53 '' + IL_0025: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_002a: stloc.1 + IL_002b: br.s IL_0037 + + .line 47,47 : 17,34 '' + IL_002d: ldarg.0 + IL_002e: ldarg.1 + IL_002f: call instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0034: stloc.1 + IL_0035: br.s IL_0037 + + .line 48,48 : 13,14 '' + IL_0037: ldloc.1 + IL_0038: ret + } // end of method ProtocolDictionary::get_Item + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + Item(string) + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::get_Item(string) + } // end of property ProtocolDictionary::Item +} // end of class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 30,30 : 9,56 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\PluginDescriptorCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.3 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0007: nop + .line 30,30 : 57,58 '' + IL_0008: nop + .line 30,30 : 59,60 '' + IL_0009: nop + IL_000a: ret + } // end of method PluginDescriptorCollection::.ctor + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.PluginDescriptor + FindDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 97 (0x61) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000, + [2] bool CS$4$0001, + [3] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0002) + .line 37,37 : 9,10 '' + IL_0000: nop + .line 38,38 : 13,32 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 39,39 : 17,59 '' + IL_000c: ldstr "plugin" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 41,41 : 13,20 '' + IL_0017: nop + .line 41,41 : 53,57 '' + IL_0018: ldarg.0 + IL_0019: call instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_001e: stloc.3 + .try + { + IL_001f: br.s IL_003d + + .line 41,41 : 22,49 '' + IL_0021: ldloca.s CS$5$0002 + IL_0023: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0028: stloc.0 + .line 42,42 : 17,49 '' + IL_0029: ldloc.0 + IL_002a: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_002f: ldarg.1 + IL_0030: ceq + IL_0032: ldc.i4.0 + IL_0033: ceq + IL_0035: stloc.2 + IL_0036: ldloc.2 + IL_0037: brtrue.s IL_003d + + .line 42,42 : 50,68 '' + IL_0039: ldloc.0 + IL_003a: stloc.1 + IL_003b: leave.s IL_005e + + .line 41,41 : 50,52 '' + IL_003d: ldloca.s CS$5$0002 + IL_003f: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0044: stloc.2 + IL_0045: ldloc.2 + IL_0046: brtrue.s IL_0021 + + IL_0048: leave.s IL_0059 + + } // end .try + finally + { + IL_004a: ldloca.s CS$5$0002 + IL_004c: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0052: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0057: nop + IL_0058: endfinally + } // end handler + IL_0059: nop + .line 44,44 : 13,25 '' + IL_005a: ldnull + IL_005b: stloc.1 + IL_005c: br.s IL_005e + + IL_005e: nop + .line 45,45 : 9,10 '' + IL_005f: ldloc.1 + IL_0060: ret + } // end of method PluginDescriptorCollection::FindDescriptorOf + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.PluginDescriptor + FindDescriptorOf(class [mscorlib]System.Type pluginType) cil managed + { + // Code size 121 (0x79) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000, + [2] bool CS$4$0001, + [3] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0002) + .line 48,48 : 9,10 '' + IL_0000: nop + .line 49,49 : 13,36 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 50,50 : 17,59 '' + IL_000c: ldstr "plugin" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 52,52 : 13,75 '' + IL_0017: ldarg.1 + IL_0018: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::PluginType + IL_001d: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0022: stloc.2 + IL_0023: ldloc.2 + IL_0024: brtrue.s IL_002a + + .line 53,53 : 17,29 '' + IL_0026: ldnull + IL_0027: stloc.1 + IL_0028: br.s IL_0076 + + .line 55,55 : 13,20 '' + IL_002a: nop + .line 55,55 : 53,57 '' + IL_002b: ldarg.0 + IL_002c: call instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0031: stloc.3 + .try + { + IL_0032: br.s IL_0055 + + .line 55,55 : 22,49 '' + IL_0034: ldloca.s CS$5$0002 + IL_0036: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_003b: stloc.0 + .line 56,56 : 17,63 '' + IL_003c: ldloc.0 + IL_003d: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0042: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0047: ldarg.1 + IL_0048: ceq + IL_004a: ldc.i4.0 + IL_004b: ceq + IL_004d: stloc.2 + IL_004e: ldloc.2 + IL_004f: brtrue.s IL_0055 + + .line 56,56 : 64,82 '' + IL_0051: ldloc.0 + IL_0052: stloc.1 + IL_0053: leave.s IL_0076 + + .line 55,55 : 50,52 '' + IL_0055: ldloca.s CS$5$0002 + IL_0057: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_005c: stloc.2 + IL_005d: ldloc.2 + IL_005e: brtrue.s IL_0034 + + IL_0060: leave.s IL_0071 + + } // end .try + finally + { + IL_0062: ldloca.s CS$5$0002 + IL_0064: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_006a: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_006f: nop + IL_0070: endfinally + } // end handler + IL_0071: nop + .line 58,58 : 13,25 '' + IL_0072: ldnull + IL_0073: stloc.1 + IL_0074: br.s IL_0076 + + IL_0076: nop + .line 59,59 : 9,10 '' + IL_0077: ldloc.1 + IL_0078: ret + } // end of method PluginDescriptorCollection::FindDescriptorOf + + .method public hidebysig instance bool + ContainsDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 19 (0x13) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 66,66 : 9,10 '' + IL_0000: nop + .line 67,67 : 13,55 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0008: ldnull + IL_0009: ceq + IL_000b: ldc.i4.0 + IL_000c: ceq + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 68,68 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method PluginDescriptorCollection::ContainsDescriptorOf + + .method public hidebysig instance bool + ContainsDescriptorOf(class [mscorlib]System.Type pluginType) cil managed + { + // Code size 19 (0x13) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 71,71 : 9,10 '' + IL_0000: nop + .line 72,72 : 13,59 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class [mscorlib]System.Type) + IL_0008: ldnull + IL_0009: ceq + IL_000b: ldc.i4.0 + IL_000c: ceq + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 73,73 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method PluginDescriptorCollection::ContainsDescriptorOf + +} // end of class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection + extends class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection list) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 32,32 : 9,98 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\PluginDescriptorReadOnlyCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::.ctor(class [mscorlib]System.Collections.Generic.IList`1) + IL_0007: nop + .line 32,32 : 99,100 '' + IL_0008: nop + .line 32,32 : 101,102 '' + IL_0009: nop + IL_000a: ret + } // end of method PluginDescriptorReadOnlyCollection::.ctor + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.PluginDescriptor + FindDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 23 (0x17) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000) + .line 39,39 : 9,10 '' + IL_0000: nop + .line 40,40 : 13,81 '' + IL_0001: ldarg.0 + IL_0002: call instance class [mscorlib]System.Collections.Generic.IList`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Items() + IL_0007: castclass Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + IL_000c: ldarg.1 + IL_000d: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0012: stloc.0 + IL_0013: br.s IL_0015 + + .line 41,41 : 9,10 '' + IL_0015: ldloc.0 + IL_0016: ret + } // end of method PluginDescriptorReadOnlyCollection::FindDescriptorOf + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.PluginDescriptor + FindDescriptorOf(class [mscorlib]System.Type pluginType) cil managed + { + // Code size 23 (0x17) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000) + .line 44,44 : 9,10 '' + IL_0000: nop + .line 45,45 : 13,85 '' + IL_0001: ldarg.0 + IL_0002: call instance class [mscorlib]System.Collections.Generic.IList`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Items() + IL_0007: castclass Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + IL_000c: ldarg.1 + IL_000d: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class [mscorlib]System.Type) + IL_0012: stloc.0 + IL_0013: br.s IL_0015 + + .line 46,46 : 9,10 '' + IL_0015: ldloc.0 + IL_0016: ret + } // end of method PluginDescriptorReadOnlyCollection::FindDescriptorOf + + .method public hidebysig instance bool + ContainsDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 29 (0x1d) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 53,53 : 9,10 '' + IL_0000: nop + .line 54,54 : 13,89 '' + IL_0001: ldarg.0 + IL_0002: call instance class [mscorlib]System.Collections.Generic.IList`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Items() + IL_0007: castclass Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + IL_000c: ldarg.1 + IL_000d: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0012: ldnull + IL_0013: ceq + IL_0015: ldc.i4.0 + IL_0016: ceq + IL_0018: stloc.0 + IL_0019: br.s IL_001b + + .line 55,55 : 9,10 '' + IL_001b: ldloc.0 + IL_001c: ret + } // end of method PluginDescriptorReadOnlyCollection::ContainsDescriptorOf + + .method public hidebysig instance bool + ContainsDescriptorOf(class [mscorlib]System.Type pluginType) cil managed + { + // Code size 29 (0x1d) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 58,58 : 9,10 '' + IL_0000: nop + .line 59,59 : 13,93 '' + IL_0001: ldarg.0 + IL_0002: call instance class [mscorlib]System.Collections.Generic.IList`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Items() + IL_0007: castclass Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + IL_000c: ldarg.1 + IL_000d: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class [mscorlib]System.Type) + IL_0012: ldnull + IL_0013: ceq + IL_0015: ldc.i4.0 + IL_0016: ceq + IL_0018: stloc.0 + IL_0019: br.s IL_001b + + .line 60,60 : 9,10 '' + IL_001b: ldloc.0 + IL_001c: ret + } // end of method PluginDescriptorReadOnlyCollection::ContainsDescriptorOf + +} // end of class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Translate + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field private static initonly class [mscorlib]System.Type StatusEnumType + .method public hidebysig static valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + ToStatus(native uint wParam) cil managed + { + // Code size 54 (0x36) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode CS$1$0000, + [1] bool CS$4$0001) + .line 41,41 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Translate.cs' + IL_0000: nop + .line 42,42 : 13,73 '' + IL_0001: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.Translate::StatusEnumType + IL_0006: ldarga.s wParam + IL_0008: call instance uint32 [mscorlib]System.UIntPtr::ToUInt32() + IL_000d: box [mscorlib]System.Int32 + IL_0012: call bool [mscorlib]System.Enum::IsDefined(class [mscorlib]System.Type, + object) + IL_0017: stloc.1 + IL_0018: ldloc.1 + IL_0019: brtrue.s IL_002b + + .line 43,43 : 17,107 '' + IL_001b: ldstr "wParam" + IL_0020: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidValueToTranslate() + IL_0025: newobj instance void [mscorlib]System.ArgumentException::.ctor(string, + string) + IL_002a: throw + + .line 45,45 : 13,41 '' + IL_002b: ldarg.0 + IL_002c: call uint32 [mscorlib]System.UIntPtr::op_Explicit(native uint) + IL_0031: stloc.0 + IL_0032: br.s IL_0034 + + .line 46,46 : 9,10 '' + IL_0034: ldloc.0 + IL_0035: ret + } // end of method Translate::ToStatus + + .method public hidebysig static string + ToString(native int lParam, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding marshalAs) cil managed + { + // Code size 15 (0xf) + .maxstack 4 + .locals init ([0] string CS$1$0000) + .line 53,53 : 9,10 '' + IL_0000: nop + .line 54,54 : 13,58 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: ldarg.1 + IL_0004: ldc.i4.0 + IL_0005: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + int32, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding, + bool) + IL_000a: stloc.0 + IL_000b: br.s IL_000d + + .line 55,55 : 9,10 '' + IL_000d: ldloc.0 + IL_000e: ret + } // end of method Translate::ToString + + .method public hidebysig static string + ToString(native int lParam, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding marshalAs, + bool transformExceptionsToNull) cil managed + { + // Code size 15 (0xf) + .maxstack 4 + .locals init ([0] string CS$1$0000) + .line 58,58 : 9,10 '' + IL_0000: nop + .line 59,59 : 13,78 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: ldarg.1 + IL_0004: ldarg.2 + IL_0005: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + int32, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding, + bool) + IL_000a: stloc.0 + IL_000b: br.s IL_000d + + .line 60,60 : 9,10 '' + IL_000d: ldloc.0 + IL_000e: ret + } // end of method Translate::ToString + + .method public hidebysig static string + ToString(native int lParam, + int32 length, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding marshalAs) cil managed + { + // Code size 15 (0xf) + .maxstack 4 + .locals init ([0] string CS$1$0000) + .line 63,63 : 9,10 '' + IL_0000: nop + .line 64,64 : 13,63 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldc.i4.0 + IL_0005: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + int32, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding, + bool) + IL_000a: stloc.0 + IL_000b: br.s IL_000d + + .line 65,65 : 9,10 '' + IL_000d: ldloc.0 + IL_000e: ret + } // end of method Translate::ToString + + .method public hidebysig static string + ToString(native int lParam, + int32 length, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding marshalAs, + bool tranformExceptionsToNull) cil managed + { + // Code size 242 (0xf2) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Exception e, + [1] string CS$1$0000, + [2] bool CS$4$0001, + [3] valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding CS$4$0002) + .line 68,68 : 9,10 '' + IL_0000: nop + .line 69,69 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0007: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.2 + IL_0010: ldloc.2 + IL_0011: brtrue.s IL_001e + + .line 70,70 : 17,59 '' + IL_0013: ldstr "lParam" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 72,72 : 13,28 '' + IL_001e: ldarg.1 + IL_001f: ldc.i4.0 + IL_0020: clt + IL_0022: ldc.i4.0 + IL_0023: ceq + IL_0025: stloc.2 + IL_0026: ldloc.2 + IL_0027: brtrue.s IL_0034 + + .line 73,73 : 17,65 '' + IL_0029: ldstr "length" + IL_002e: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0033: throw + + .line 75,75 : 13,135 '' + IL_0034: ldarg.2 + IL_0035: ldc.i4.2 + IL_0036: beq.s IL_0041 + + IL_0038: ldarg.2 + IL_0039: brfalse.s IL_0041 + + IL_003b: ldarg.2 + IL_003c: ldc.i4.1 + IL_003d: ceq + IL_003f: br.s IL_0042 + + IL_0041: ldc.i4.1 + IL_0042: nop + IL_0043: stloc.2 + IL_0044: ldloc.2 + IL_0045: brtrue.s IL_0052 + + .line 76,76 : 17,68 '' + IL_0047: ldstr "marshalAs" + IL_004c: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0051: throw + + .line 79,79 : 13,14 '' + .try + { + IL_0052: nop + .line 81,81 : 17,35 '' + IL_0053: ldarg.2 + IL_0054: stloc.3 + IL_0055: ldloc.3 + IL_0056: switch ( + IL_0088, + IL_00a6, + IL_0069) + IL_0067: br.s IL_00c4 + + .line 84,84 : 25,78 '' + IL_0069: call valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaStringEncoding() + IL_006e: starg.s marshalAs + .line 85,85 : 25,72 '' + IL_0070: ldarg.2 + IL_0071: ldc.i4.2 + IL_0072: ceq + IL_0074: ldc.i4.0 + IL_0075: ceq + IL_0077: stloc.2 + IL_0078: ldloc.2 + IL_0079: brtrue.s IL_0086 + + .line 85,85 : 73,170 '' + IL_007b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding() + IL_0080: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0085: throw + + .line 86,86 : 25,37 '' + IL_0086: br.s IL_0053 + + .line 88,88 : 25,40 '' + IL_0088: ldarg.1 + IL_0089: ldc.i4.0 + IL_008a: cgt + IL_008c: ldc.i4.0 + IL_008d: ceq + IL_008f: stloc.2 + IL_0090: ldloc.2 + IL_0091: brtrue.s IL_009d + + .line 89,89 : 29,76 '' + IL_0093: ldarg.0 + IL_0094: ldarg.1 + IL_0095: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringAnsi(native int, + int32) + IL_009a: stloc.1 + IL_009b: leave.s IL_00ef + + .line 91,91 : 29,68 '' + IL_009d: ldarg.0 + IL_009e: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringAnsi(native int) + IL_00a3: stloc.1 + IL_00a4: leave.s IL_00ef + + .line 93,93 : 25,40 '' + IL_00a6: ldarg.1 + IL_00a7: ldc.i4.0 + IL_00a8: cgt + IL_00aa: ldc.i4.0 + IL_00ab: ceq + IL_00ad: stloc.2 + IL_00ae: ldloc.2 + IL_00af: brtrue.s IL_00bb + + .line 94,94 : 29,75 '' + IL_00b1: ldarg.0 + IL_00b2: ldarg.1 + IL_00b3: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringUni(native int, + int32) + IL_00b8: stloc.1 + IL_00b9: leave.s IL_00ef + + .line 96,96 : 29,67 '' + IL_00bb: ldarg.0 + IL_00bc: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringUni(native int) + IL_00c1: stloc.1 + IL_00c2: leave.s IL_00ef + + .line 98,98 : 25,37 '' + IL_00c4: ldnull + IL_00c5: stloc.1 + IL_00c6: leave.s IL_00ef + + .line 101,101 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_00c8: stloc.0 + .line 102,102 : 13,14 '' + IL_00c9: nop + .line 103,103 : 17,47 '' + IL_00ca: ldarg.3 + IL_00cb: stloc.2 + IL_00cc: ldloc.2 + IL_00cd: brtrue.s IL_00eb + + .line 104,104 : 21,126 '' + IL_00cf: ldstr "lParam" + IL_00d4: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidValueToTranslate() + IL_00d9: ldloc.0 + IL_00da: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_00df: call string [mscorlib]System.String::Concat(string, + string) + IL_00e4: ldloc.0 + IL_00e5: newobj instance void [mscorlib]System.ArgumentException::.ctor(string, + string, + class [mscorlib]System.Exception) + IL_00ea: throw + + .line 106,106 : 21,33 '' + IL_00eb: ldnull + IL_00ec: stloc.1 + IL_00ed: leave.s IL_00ef + + } // end handler + IL_00ef: nop + .line 108,108 : 9,10 '' + IL_00f0: ldloc.1 + IL_00f1: ret + } // end of method Translate::ToString + + .method public hidebysig static native int + ToHandle(native uint wParam) cil managed + { + // Code size 18 (0x12) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 115,115 : 9,10 '' + IL_0000: nop + .line 116,116 : 13,56 '' + IL_0001: ldarga.s wParam + IL_0003: call instance uint64 [mscorlib]System.UIntPtr::ToUInt64() + IL_0008: newobj instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 117,117 : 9,10 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method Translate::ToHandle + + .method public hidebysig static native uint + ToHandle(native int lParam) cil managed + { + // Code size 18 (0x12) + .maxstack 1 + .locals init ([0] native uint CS$1$0000) + .line 120,120 : 9,10 '' + IL_0000: nop + .line 121,121 : 13,57 '' + IL_0001: ldarga.s lParam + IL_0003: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0008: newobj instance void [mscorlib]System.UIntPtr::.ctor(uint64) + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 122,122 : 9,10 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method Translate::ToHandle + + .method public hidebysig static valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle + ToHandle(string str, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding encoding) cil managed + { + // Code size 13 (0xd) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle CS$1$0000) + .line 125,125 : 9,10 '' + IL_0000: nop + .line 126,126 : 13,61 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0008: stloc.0 + IL_0009: br.s IL_000b + + .line 127,127 : 9,10 '' + IL_000b: ldloc.0 + IL_000c: ret + } // end of method Translate::ToHandle + + .method public hidebysig static uint32 + ToMirandaVersion(class [mscorlib]System.Version version) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 90 (0x5a) + .maxstack 3 + .locals init ([0] uint32 CS$1$0000, + [1] bool CS$4$0001) + .line 135,135 : 9,10 '' + IL_0000: nop + .line 136,136 : 13,33 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.1 + IL_000c: ldloc.1 + IL_000d: brtrue.s IL_001a + + .line 137,137 : 17,60 '' + IL_000f: ldstr "version" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 139,139 : 13,191 '' + IL_001a: ldarg.0 + IL_001b: callvirt instance int32 [mscorlib]System.Version::get_Major() + IL_0020: ldc.i4 0xff + IL_0025: and + IL_0026: ldc.i4.s 24 + IL_0028: shl + IL_0029: ldarg.0 + IL_002a: callvirt instance int32 [mscorlib]System.Version::get_Minor() + IL_002f: ldc.i4 0xff + IL_0034: and + IL_0035: ldc.i4.s 16 + IL_0037: shl + IL_0038: or + IL_0039: ldarg.0 + IL_003a: callvirt instance int32 [mscorlib]System.Version::get_Build() + IL_003f: ldc.i4 0xff + IL_0044: and + IL_0045: ldc.i4.8 + IL_0046: shl + IL_0047: or + IL_0048: ldarg.0 + IL_0049: callvirt instance int16 [mscorlib]System.Version::get_MinorRevision() + IL_004e: ldc.i4 0xff + IL_0053: and + IL_0054: or + IL_0055: stloc.0 + IL_0056: br.s IL_0058 + + .line 140,140 : 9,10 '' + IL_0058: ldloc.0 + IL_0059: ret + } // end of method Translate::ToMirandaVersion + + .method public hidebysig static class [mscorlib]System.Version + FromMirandaVersion(uint32 version) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 47 (0x2f) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 144,144 : 9,10 '' + IL_0000: nop + .line 145,145 : 13,147 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.s 24 + IL_0004: shr.un + IL_0005: ldc.i4 0xff + IL_000a: and + IL_000b: ldarg.0 + IL_000c: ldc.i4.s 16 + IL_000e: shr.un + IL_000f: ldc.i4 0xff + IL_0014: and + IL_0015: ldarg.0 + IL_0016: ldc.i4.8 + IL_0017: shr.un + IL_0018: ldc.i4 0xff + IL_001d: and + IL_001e: ldarg.0 + IL_001f: ldc.i4 0xff + IL_0024: and + IL_0025: newobj instance void [mscorlib]System.Version::.ctor(int32, + int32, + int32, + int32) + IL_002a: stloc.0 + IL_002b: br.s IL_002d + + .line 146,146 : 9,10 '' + IL_002d: ldloc.0 + IL_002e: ret + } // end of method Translate::FromMirandaVersion + + .method public hidebysig static uint8[] + ToBlob(native int blobPtr, + int32 size) cil managed + { + // Code size 75 (0x4b) + .maxstack 4 + .locals init ([0] uint8[] 'blob', + [1] uint8[] CS$1$0000, + [2] bool CS$4$0001) + .line 153,153 : 9,10 '' + IL_0000: nop + .line 154,154 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0007: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.2 + IL_0010: ldloc.2 + IL_0011: brtrue.s IL_001e + + .line 155,155 : 17,60 '' + IL_0013: ldstr "blobPtr" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 157,157 : 13,26 '' + IL_001e: ldarg.1 + IL_001f: ldc.i4.0 + IL_0020: clt + IL_0022: ldc.i4.0 + IL_0023: ceq + IL_0025: stloc.2 + IL_0026: ldloc.2 + IL_0027: brtrue.s IL_0034 + + .line 158,158 : 17,63 '' + IL_0029: ldstr "size" + IL_002e: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0033: throw + + .line 160,160 : 13,42 '' + IL_0034: ldarg.1 + IL_0035: newarr [mscorlib]System.Byte + IL_003a: stloc.0 + .line 161,161 : 13,50 '' + IL_003b: ldarg.0 + IL_003c: ldloc.0 + IL_003d: ldc.i4.0 + IL_003e: ldarg.1 + IL_003f: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(native int, + uint8[], + int32, + int32) + IL_0044: nop + .line 163,163 : 13,25 '' + IL_0045: ldloc.0 + IL_0046: stloc.1 + IL_0047: br.s IL_0049 + + .line 164,164 : 9,10 '' + IL_0049: ldloc.1 + IL_004a: ret + } // end of method Translate::ToBlob + + .method assembly hidebysig static object + ValueFromVariant(valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT& dbVariant) cil managed + { + // Code size 265 (0x109) + .maxstack 3 + .locals init ([0] object CS$1$0000, + [1] valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue CS$4$0001) + .line 171,171 : 9,10 '' + IL_0000: nop + .line 172,172 : 13,52 '' + IL_0001: ldarg.0 + IL_0002: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: switch ( + IL_00c0, + IL_00ad, + IL_00d7, + IL_0103, + IL_00c4) + IL_0022: ldloc.1 + IL_0023: ldc.i4 0x80 + IL_0028: beq IL_00fd + + IL_002d: ldloc.1 + IL_002e: ldc.i4 0xfc + IL_0033: sub + IL_0034: switch ( + IL_00ea, + IL_0070, + IL_008f, + IL_004e) + IL_0049: br IL_0103 + + .line 175,175 : 21,123 '' + IL_004e: ldarg.0 + IL_004f: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0054: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + IL_0059: ldarg.0 + IL_005a: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_005f: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextBufferSize + IL_0064: ldc.i4.0 + IL_0065: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + int32, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_006a: stloc.0 + IL_006b: br IL_0107 + + .line 177,177 : 21,126 '' + IL_0070: ldarg.0 + IL_0071: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0076: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + IL_007b: ldarg.0 + IL_007c: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0081: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextBufferSize + IL_0086: ldc.i4.1 + IL_0087: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + int32, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_008c: stloc.0 + IL_008d: br.s IL_0107 + + .line 179,179 : 21,80 '' + IL_008f: ldarg.0 + IL_0090: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB Virtuoso.Miranda.Plugins.Native.DBVARIANT::Blob + IL_0095: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB::BlobPtr + IL_009a: ldarg.0 + IL_009b: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB Virtuoso.Miranda.Plugins.Native.DBVARIANT::Blob + IL_00a0: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB::Size + IL_00a5: call uint8[] Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToBlob(native int, + int32) + IL_00aa: stloc.0 + IL_00ab: br.s IL_0107 + + .line 181,181 : 21,54 '' + IL_00ad: ldarg.0 + IL_00ae: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_00b3: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Byte + IL_00b8: box [mscorlib]System.Byte + IL_00bd: stloc.0 + IL_00be: br.s IL_0107 + + .line 183,183 : 21,33 '' + IL_00c0: ldnull + IL_00c1: stloc.0 + IL_00c2: br.s IL_0107 + + .line 185,185 : 21,55 '' + IL_00c4: ldarg.0 + IL_00c5: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_00ca: ldfld uint32 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::DWord + IL_00cf: box [mscorlib]System.UInt32 + IL_00d4: stloc.0 + IL_00d5: br.s IL_0107 + + .line 187,187 : 21,54 '' + IL_00d7: ldarg.0 + IL_00d8: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_00dd: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Word + IL_00e2: box [mscorlib]System.UInt16 + IL_00e7: stloc.0 + IL_00e8: br.s IL_0107 + + .line 189,189 : 21,76 '' + IL_00ea: ldarg.0 + IL_00eb: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_00f0: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + IL_00f5: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringBSTR(native int) + IL_00fa: stloc.0 + IL_00fb: br.s IL_0107 + + .line 191,191 : 21,55 '' + IL_00fd: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_0102: throw + + .line 193,193 : 21,33 '' + IL_0103: ldnull + IL_0104: stloc.0 + IL_0105: br.s IL_0107 + + .line 195,195 : 9,10 '' + IL_0107: ldloc.0 + IL_0108: ret + } // end of method Translate::ValueFromVariant + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 34,34 : 9,74 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.Translate::StatusEnumType + IL_000f: ret + } // end of method Translate::.cctor + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Translate + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Callback + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method Callback::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native uint wParam, + native int lParam) runtime managed + { + } // end of method Callback::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native uint wParam, + native int lParam, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method Callback::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method Callback::EndInvoke + +} // end of class Virtuoso.Miranda.Plugins.Callback + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.PluginState + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.PluginState Disabled = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.PluginState Enabled = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.PluginState CrashDisabled = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.PluginState + +.class private abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaServices + extends [mscorlib]System.Object +{ + .field public static literal string MS_CLIST_ADDMAINMENUITEM = "CList/AddMainMenuItem" + .field public static literal string MS_CLIST_ADDCONTACTMENUITEM = "CList/AddContactMenuItem" + .field public static literal string MS_CLIST_MODIFYMENUITEM = "CList/ModifyMenuItem" + .field public static literal string MS_CLIST_SYSTRAY_NOTIFY = "Miranda/Systray/Notify" + .field public static literal string MS_CONTACT_GETCONTACTINFO = "Miranda/Contact/GetContactInfo" + .field public static literal string MS_PROTO_GETCONTACTBASEPROTO = "Proto/GetContactBaseProto" + .field public static literal string MS_PROTO_ENUMPROTOCOLS = "Proto/EnumProtocols" + .field public static literal string MS_PROTO_CALLCONTACTSERVICE = "Proto/CallContactService" + .field public static literal string MS_PROTO_REGISTERMODULE = "Proto/RegisterModule" + .field public static literal string PS_MESSAGE = "/SendMsg" + .field public static literal string MS_SYSTEM_GETVERSION = "Miranda/System/GetVersion" +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaServices + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject, + Virtuoso.Miranda.Plugins.IDescriptor +{ + .field private string name + .field private native int handle + .field private class Virtuoso.Miranda.Plugins.Callback callback + .field private class Virtuoso.Miranda.Plugins.Callback callbackStub + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType hookType + .field private class Virtuoso.Miranda.Plugins.PluginDescriptor owner + .field private bool registeredManually + .method public hidebysig specialname rtspecialname + instance void .ctor(string name, + class Virtuoso.Miranda.Plugins.PluginDescriptor owner, + class Virtuoso.Miranda.Plugins.Callback callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType 'type') cil managed + { + // Code size 125 (0x7d) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 45,45 : 9,101 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\HookDescriptor.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 46,46 : 9,10 '' + IL_0007: nop + .line 47,47 : 13,44 '' + IL_0008: ldarg.1 + IL_0009: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000e: ldc.i4.0 + IL_000f: ceq + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0020 + + .line 48,48 : 17,57 '' + IL_0015: ldstr "name" + IL_001a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001f: throw + + .line 50,50 : 13,31 '' + IL_0020: ldarg.2 + IL_0021: ldnull + IL_0022: ceq + IL_0024: ldc.i4.0 + IL_0025: ceq + IL_0027: stloc.0 + IL_0028: ldloc.0 + IL_0029: brtrue.s IL_0036 + + .line 51,51 : 17,58 '' + IL_002b: ldstr "owner" + IL_0030: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0035: throw + + .line 53,53 : 13,34 '' + IL_0036: ldarg.3 + IL_0037: ldnull + IL_0038: ceq + IL_003a: ldc.i4.0 + IL_003b: ceq + IL_003d: stloc.0 + IL_003e: ldloc.0 + IL_003f: brtrue.s IL_004c + + .line 54,54 : 17,61 '' + IL_0041: ldstr "callback" + IL_0046: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_004b: throw + + .line 56,56 : 13,50 '' + IL_004c: ldarg.0 + IL_004d: ldarg.0 + IL_004e: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SafeCallbackStub(native uint, + native int) + IL_0054: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0059: stfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::callbackStub + .line 58,58 : 13,30 '' + IL_005e: ldarg.0 + IL_005f: ldarg.1 + IL_0060: stfld string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::name + .line 59,59 : 13,32 '' + IL_0065: ldarg.0 + IL_0066: ldarg.2 + IL_0067: stfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::owner + .line 60,60 : 13,38 '' + IL_006c: ldarg.0 + IL_006d: ldarg.3 + IL_006e: stfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::callback + .line 61,61 : 13,34 '' + IL_0073: ldarg.0 + IL_0074: ldarg.s 'type' + IL_0076: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::hookType + .line 62,62 : 9,10 '' + IL_007b: nop + IL_007c: ret + } // end of method HookDescriptor::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1 targetContainer, + string name, + class Virtuoso.Miranda.Plugins.PluginDescriptor owner, + class Virtuoso.Miranda.Plugins.Callback callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType 'type') cil managed + { + // Code size 48 (0x30) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor CS$1$0000, + [2] bool CS$4$0001) + .line 65,65 : 9,10 '' + IL_0000: nop + .line 66,66 : 13,41 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 67,67 : 17,68 '' + IL_000c: ldstr "targetContainer" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 69,69 : 13,89 '' + IL_0017: ldarg.1 + IL_0018: ldarg.2 + IL_0019: ldarg.3 + IL_001a: ldarg.s 'type' + IL_001c: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::.ctor(string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0021: stloc.0 + .line 70,70 : 13,45 '' + IL_0022: ldarg.0 + IL_0023: ldloc.0 + IL_0024: callvirt instance void class [mscorlib]System.Collections.Generic.ICollection`1::Add(!0) + IL_0029: nop + .line 72,72 : 13,31 '' + IL_002a: ldloc.0 + IL_002b: stloc.1 + IL_002c: br.s IL_002e + + .line 73,73 : 9,10 '' + IL_002e: ldloc.1 + IL_002f: ret + } // end of method HookDescriptor::SetUpAndStore + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + SetUpAndStore(class [mscorlib]System.Collections.Generic.IDictionary`2 targetContainer, + string name, + class Virtuoso.Miranda.Plugins.PluginDescriptor owner, + class Virtuoso.Miranda.Plugins.Callback callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType 'type') cil managed + { + // Code size 18 (0x12) + .maxstack 6 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor CS$1$0000) + .line 76,76 : 9,10 '' + IL_0000: nop + .line 77,77 : 13,94 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.1 + IL_0004: ldarg.2 + IL_0005: ldarg.3 + IL_0006: ldarg.s 'type' + IL_0008: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IDictionary`2, + !!0, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 78,78 : 9,10 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method HookDescriptor::SetUpAndStore + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + SetUpAndStore(class [mscorlib]System.Collections.Generic.IDictionary`2 targetContainer, + !!T key, + string name, + class Virtuoso.Miranda.Plugins.PluginDescriptor owner, + class Virtuoso.Miranda.Plugins.Callback callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType 'type') cil managed + { + // Code size 50 (0x32) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor CS$1$0000, + [2] bool CS$4$0001) + .line 81,81 : 9,10 '' + IL_0000: nop + .line 82,82 : 13,41 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 83,83 : 17,68 '' + IL_000c: ldstr "targetContainer" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 85,85 : 13,89 '' + IL_0017: ldarg.2 + IL_0018: ldarg.3 + IL_0019: ldarg.s callback + IL_001b: ldarg.s 'type' + IL_001d: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::.ctor(string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0022: stloc.0 + .line 86,86 : 13,50 '' + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: ldloc.0 + IL_0026: callvirt instance void class [mscorlib]System.Collections.Generic.IDictionary`2::Add(!0, + !1) + IL_002b: nop + .line 88,88 : 13,31 '' + IL_002c: ldloc.0 + IL_002d: stloc.1 + IL_002e: br.s IL_0030 + + .line 89,89 : 9,10 '' + IL_0030: ldloc.1 + IL_0031: ret + } // end of method HookDescriptor::SetUpAndStore + + .method private hidebysig instance int32 + SafeCallbackStub(native uint wParam, + native int lParam) cil managed + { + // Code size 51 (0x33) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Exception e, + [1] int32 CS$1$0000) + .line 96,96 : 9,10 '' + IL_0000: nop + .line 98,98 : 13,14 '' + .try + { + IL_0001: nop + .line 99,99 : 17,49 '' + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::callback + IL_0008: ldarg.1 + IL_0009: ldarg.2 + IL_000a: callvirt instance int32 Virtuoso.Miranda.Plugins.Callback::Invoke(native uint, + native int) + IL_000f: stloc.1 + IL_0010: leave.s IL_0030 + + .line 101,101 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0012: stloc.0 + .line 102,102 : 13,14 '' + IL_0013: nop + .line 103,103 : 17,84 '' + IL_0014: ldarg.0 + IL_0015: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::owner + IL_001a: call class Virtuoso.Miranda.Plugins.IExceptionHandler Virtuoso.Miranda.Plugins.MirandaPlugin::GetExceptionHandler(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_001f: ldloc.0 + IL_0020: ldarg.0 + IL_0021: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::owner + IL_0026: callvirt instance void Virtuoso.Miranda.Plugins.IExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_002b: nop + .line 104,104 : 17,52 '' + IL_002c: ldc.i4.m1 + IL_002d: stloc.1 + IL_002e: leave.s IL_0030 + + } // end handler + IL_0030: nop + .line 106,106 : 9,10 '' + IL_0031: ldloc.1 + IL_0032: ret + } // end of method HookDescriptor::SafeCallbackStub + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 46 (0x2e) + .maxstack 2 + .locals init ([0] int32 CS$1$0000) + .line 109,109 : 9,10 '' + IL_0000: nop + .line 110,110 : 13,94 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::name + IL_0007: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_000c: ldarg.0 + IL_000d: ldfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::callback + IL_0012: callvirt instance class [mscorlib]System.Reflection.MethodInfo [mscorlib]System.Delegate::get_Method() + IL_0017: callvirt instance string [mscorlib]System.Reflection.MemberInfo::get_Name() + IL_001c: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0021: add + IL_0022: ldarg.0 + IL_0023: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::hookType + IL_0028: add + IL_0029: stloc.0 + IL_002a: br.s IL_002c + + .line 111,111 : 9,10 '' + IL_002c: ldloc.0 + IL_002d: ret + } // end of method HookDescriptor::GetHashCode + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 57 (0x39) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor other, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 114,114 : 9,10 '' + IL_0000: nop + .line 115,115 : 13,29 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0010 + + .line 116,116 : 17,30 '' + IL_000c: ldc.i4.0 + IL_000d: stloc.1 + IL_000e: br.s IL_0037 + + .line 118,118 : 13,58 '' + IL_0010: ldarg.1 + IL_0011: isinst Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + IL_0016: stloc.0 + .line 120,120 : 13,31 '' + IL_0017: ldloc.0 + IL_0018: ldnull + IL_0019: ceq + IL_001b: ldc.i4.0 + IL_001c: ceq + IL_001e: stloc.2 + IL_001f: ldloc.2 + IL_0020: brtrue.s IL_0026 + + .line 121,121 : 17,30 '' + IL_0022: ldc.i4.0 + IL_0023: stloc.1 + IL_0024: br.s IL_0037 + + .line 123,123 : 13,57 '' + IL_0026: ldarg.0 + IL_0027: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_002c: ldloc.0 + IL_002d: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0032: ceq + IL_0034: stloc.1 + IL_0035: br.s IL_0037 + + .line 124,124 : 9,10 '' + IL_0037: ldloc.1 + IL_0038: ret + } // end of method HookDescriptor::Equals + + .method public hidebysig specialname instance string + get_Name() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 132,132 : 17,18 '' + IL_0000: nop + .line 132,132 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::name + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 132,132 : 32,33 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method HookDescriptor::get_Name + + .method public hidebysig newslot specialname virtual final + instance native int get_MirandaHandle() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 137,137 : 17,18 '' + IL_0000: nop + .line 137,137 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::handle + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 137,137 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method HookDescriptor::get_MirandaHandle + + .method assembly hidebysig specialname + instance void set_MirandaHandle(native int 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 138,138 : 26,27 '' + IL_0000: nop + .line 138,138 : 28,43 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::handle + .line 138,138 : 44,45 '' + IL_0008: ret + } // end of method HookDescriptor::set_MirandaHandle + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Callback + get_Callback() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Callback CS$1$0000) + .line 143,143 : 17,18 '' + IL_0000: nop + .line 143,143 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::callbackStub + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 143,143 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method HookDescriptor::get_Callback + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + get_HookType() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType CS$1$0000) + .line 148,148 : 17,18 '' + IL_0000: nop + .line 148,148 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::hookType + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 148,148 : 36,37 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method HookDescriptor::get_HookType + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.PluginDescriptor + get_Owner() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000) + .line 153,153 : 17,18 '' + IL_0000: nop + .line 153,153 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::owner + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 153,153 : 33,34 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method HookDescriptor::get_Owner + + .method public hidebysig specialname instance bool + get_RegisteredManually() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 158,158 : 17,18 '' + IL_0000: nop + .line 158,158 : 19,45 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::registeredManually + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 158,158 : 46,47 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method HookDescriptor::get_RegisteredManually + + .method public hidebysig specialname instance void + set_RegisteredManually(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 159,159 : 17,18 '' + IL_0000: nop + .line 159,159 : 19,46 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::registeredManually + .line 159,159 : 47,48 '' + IL_0008: ret + } // end of method HookDescriptor::set_RegisteredManually + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + } // end of property HookDescriptor::Name + .property instance native int MirandaHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle(native int) + } // end of property HookDescriptor::MirandaHandle + .property instance class Virtuoso.Miranda.Plugins.Callback + Callback() + { + .get instance class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Callback() + } // end of property HookDescriptor::Callback + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + HookType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + } // end of property HookDescriptor::HookType + .property instance class Virtuoso.Miranda.Plugins.PluginDescriptor + Owner() + { + .get instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Owner() + } // end of property HookDescriptor::Owner + .property instance bool RegisteredManually() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_RegisteredManually(bool) + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_RegisteredManually() + } // end of property HookDescriptor::RegisteredManually +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname uint32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags None = uint32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags CMIM_NAME = uint32(0x80000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags CMIM_FLAGS = uint32(0x40000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags CMIM_ICON = uint32(0x20000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags CMIM_HOTKEY = uint32(0x10000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags CMIM_ALL = uint32(0xF0000000) +} // end of class Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Native.MirandaException + extends [mscorlib]System.Exception +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor(string message) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 30,30 : 9,66 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\MirandaException.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void [mscorlib]System.Exception::.ctor(string) + IL_0007: nop + .line 30,30 : 67,68 '' + IL_0008: nop + .line 30,30 : 69,70 '' + IL_0009: nop + IL_000a: ret + } // end of method MirandaException::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(string message, + class [mscorlib]System.Exception inner) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 31,31 : 9,90 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.Exception::.ctor(string, + class [mscorlib]System.Exception) + IL_0008: nop + .line 31,31 : 91,92 '' + IL_0009: nop + .line 31,31 : 93,94 '' + IL_000a: nop + IL_000b: ret + } // end of method MirandaException::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 33,33 : 9,107 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext) + IL_0008: nop + .line 33,33 : 108,109 '' + IL_0009: nop + .line 33,33 : 110,111 '' + IL_000a: nop + IL_000b: ret + } // end of method MirandaException::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Native.MirandaException + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field public string Protocol + .field public string Title + .field public string Text + .field public uint32 Flags + .field public uint32 Timeout + .method public hidebysig specialname rtspecialname + instance void .ctor(string title, + string text, + valuetype [System.Windows.Forms]System.Windows.Forms.ToolTipIcon 'flags') cil managed + { + // Code size 66 (0x42) + .maxstack 2 + .line 44,44 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\MIRANDASYSTRAYNOTIFY.cs' + IL_0000: nop + .line 45,45 : 13,42 '' + IL_0001: ldarg.0 + IL_0002: ldsfld string [mscorlib]System.String::Empty + IL_0007: stfld string Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Protocol + .line 46,46 : 13,32 '' + IL_000c: ldarg.0 + IL_000d: ldarg.1 + IL_000e: stfld string Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Title + .line 47,47 : 13,30 '' + IL_0013: ldarg.0 + IL_0014: ldarg.2 + IL_0015: stfld string Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Text + .line 48,48 : 13,38 '' + IL_001a: ldarg.0 + IL_001b: ldarg.3 + IL_001c: stfld uint32 Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Flags + .line 49,49 : 13,38 '' + IL_0021: ldarg.0 + IL_0022: ldc.i4 0x2710 + IL_0027: stfld uint32 Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Timeout + .line 51,51 : 13,70 '' + IL_002c: ldarg.0 + IL_002d: ldtoken Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY + IL_0032: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0037: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_003c: stfld int32 Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Size + .line 52,52 : 9,10 '' + IL_0041: ret + } // end of method MIRANDASYSTRAYNOTIFY::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Native.MarshalKind + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind Copy = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind PinBlittable = int32(0x00000001) +} // end of class Virtuoso.Miranda.Plugins.Native.MarshalKind + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + extends [mscorlib]System.ValueType + implements Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle, + [mscorlib]System.IDisposable +{ + .field public static initonly valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Empty + .field private class [mscorlib]System.Type ActualType + .field private valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind MarshalKind + .field private valuetype [mscorlib]System.Runtime.InteropServices.GCHandle GcHandle + .field private native int intPtr + .field private native int SinglePressure + .field private native int[] Pressure + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 51,52 : 9,58 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\UnmanagedStructHandle.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: ldnull + IL_0004: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind, + native int[]) + IL_0009: nop + .line 53,53 : 9,10 '' + IL_000a: nop + .line 53,53 : 11,12 '' + IL_000b: nop + IL_000c: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure, + native int pressure) cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 55,56 : 9,58 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: ldnull + IL_0004: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind, + native int[]) + IL_0009: nop + .line 57,57 : 9,10 '' + IL_000a: nop + .line 58,58 : 13,44 '' + IL_000b: ldarg.0 + IL_000c: ldarg.2 + IL_000d: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + .line 59,59 : 9,10 '' + IL_0012: nop + IL_0013: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure, + native int[] pressure) cil managed + { + .param [2] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 13 (0xd) + .maxstack 8 + .line 61,62 : 9,62 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: ldarg.2 + IL_0004: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind, + native int[]) + IL_0009: nop + .line 63,63 : 9,10 '' + IL_000a: nop + .line 63,63 : 11,12 '' + IL_000b: nop + IL_000c: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind marshalKind) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 65,66 : 9,53 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldnull + IL_0004: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind, + native int[]) + IL_0009: nop + .line 67,67 : 9,10 '' + IL_000a: nop + .line 67,67 : 11,12 '' + IL_000b: nop + IL_000c: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind marshalKind, + native int pressure) cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 69,70 : 9,53 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldnull + IL_0004: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind, + native int[]) + IL_0009: nop + .line 71,71 : 9,10 '' + IL_000a: nop + .line 72,72 : 13,44 '' + IL_000b: ldarg.0 + IL_000c: ldarg.3 + IL_000d: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + .line 73,73 : 9,10 '' + IL_0012: nop + IL_0013: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind marshalKind, + native int[] pressure) cil managed + { + .param [3] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 232 (0xe8) + .maxstack 3 + .locals init ([0] bool CS$4$0000, + [1] valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind CS$4$0001) + .line 76,76 : 9,10 '' + IL_0000: nop + .line 78,78 : 13,83 '' + IL_0001: ldtoken !T + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: call instance bool [mscorlib]System.Type::get_IsValueType() + IL_0010: brtrue.s IL_0028 + + IL_0012: ldarg.1 + IL_0013: ldobj !T + IL_0018: box !T + IL_001d: ldnull + IL_001e: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_0023: ldc.i4.0 + IL_0024: ceq + IL_0026: br.s IL_0029 + + IL_0028: ldc.i4.1 + IL_0029: nop + IL_002a: stloc.0 + IL_002b: ldloc.0 + IL_002c: brtrue.s IL_0039 + + .line 79,79 : 17,62 '' + IL_002e: ldstr "structure" + IL_0033: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0038: throw + + .line 81,81 : 13,47 '' + IL_0039: ldarg.0 + IL_003a: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_003f: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + .line 82,82 : 13,38 '' + IL_0044: ldarg.0 + IL_0045: ldarg.3 + IL_0046: stfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + .line 83,83 : 13,44 '' + IL_004b: ldarg.0 + IL_004c: ldarg.2 + IL_004d: stfld valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalKind + .line 84,84 : 13,51 '' + IL_0052: ldarg.0 + IL_0053: ldarg.1 + IL_0054: constrained. !T + IL_005a: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_005f: stfld class [mscorlib]System.Type valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::ActualType + .line 86,86 : 13,33 '' + IL_0064: ldarg.2 + IL_0065: stloc.1 + IL_0066: ldloc.1 + IL_0067: switch ( + IL_0076, + IL_00b2) + IL_0074: br.s IL_00dc + + .line 89,89 : 21,84 '' + IL_0076: ldarg.0 + IL_0077: ldarg.0 + IL_0078: ldfld class [mscorlib]System.Type valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::ActualType + IL_007d: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0082: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_0087: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + .line 90,90 : 21,83 '' + IL_008c: ldarg.1 + IL_008d: ldobj !T + IL_0092: box !T + IL_0097: ldarg.0 + IL_0098: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + IL_009d: ldc.i4.0 + IL_009e: call void [mscorlib]System.Runtime.InteropServices.Marshal::StructureToPtr(object, + native int, + bool) + IL_00a3: nop + .line 91,91 : 21,52 '' + IL_00a4: ldarg.0 + IL_00a5: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GcHandle + IL_00aa: initobj [mscorlib]System.Runtime.InteropServices.GCHandle + .line 92,92 : 21,27 '' + IL_00b0: br.s IL_00e7 + + .line 94,94 : 21,92 '' + IL_00b2: ldarg.0 + IL_00b3: ldarg.1 + IL_00b4: ldobj !T + IL_00b9: box !T + IL_00be: ldc.i4.3 + IL_00bf: call valuetype [mscorlib]System.Runtime.InteropServices.GCHandle [mscorlib]System.Runtime.InteropServices.GCHandle::Alloc(object, + valuetype [mscorlib]System.Runtime.InteropServices.GCHandleType) + IL_00c4: stfld valuetype [mscorlib]System.Runtime.InteropServices.GCHandle valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GcHandle + .line 95,95 : 21,70 '' + IL_00c9: ldarg.0 + IL_00ca: ldarg.0 + IL_00cb: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GcHandle + IL_00d0: call instance native int [mscorlib]System.Runtime.InteropServices.GCHandle::AddrOfPinnedObject() + IL_00d5: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + .line 96,96 : 21,27 '' + IL_00da: br.s IL_00e7 + + .line 98,98 : 21,74 '' + IL_00dc: ldstr "marshalKind" + IL_00e1: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_00e6: throw + + .line 100,100 : 9,10 '' + IL_00e7: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname static + native int op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 operand) cil managed + { + // Code size 13 (0xd) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 107,107 : 9,10 '' + IL_0000: nop + .line 108,108 : 13,35 '' + IL_0001: ldarga.s operand + IL_0003: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0008: stloc.0 + IL_0009: br.s IL_000b + + .line 109,109 : 9,10 '' + IL_000b: ldloc.0 + IL_000c: ret + } // end of method UnmanagedStructHandle`1::op_Implicit + + .method public hidebysig specialname static + native uint op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 operand) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 18 (0x12) + .maxstack 1 + .locals init ([0] native uint CS$1$0000) + .line 113,113 : 9,10 '' + IL_0000: nop + .line 114,114 : 13,55 '' + IL_0001: ldarga.s operand + IL_0003: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0008: call native uint Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native int) + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 115,115 : 9,10 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method UnmanagedStructHandle`1::op_Implicit + + .method public hidebysig newslot specialname virtual final + instance native int get_IntPtr() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 124,124 : 13,14 '' + IL_0000: nop + .line 125,125 : 17,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 126,126 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method UnmanagedStructHandle`1::get_IntPtr + + .method public hidebysig instance void + MarshalBack([out] !T& destination) cil managed + { + // Code size 70 (0x46) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 134,134 : 9,10 '' + IL_0000: nop + .line 135,135 : 13,57 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalKind + IL_0007: ldc.i4.1 + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.0 + IL_000e: ldloc.0 + IL_000f: brtrue.s IL_0029 + + .line 136,136 : 17,50 '' + IL_0011: ldarg.1 + IL_0012: ldarg.0 + IL_0013: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GcHandle + IL_0018: call instance object [mscorlib]System.Runtime.InteropServices.GCHandle::get_Target() + IL_001d: unbox.any !T + IL_0022: stobj !T + IL_0027: br.s IL_0045 + + .line 138,138 : 17,77 '' + IL_0029: ldarg.1 + IL_002a: ldarg.0 + IL_002b: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0030: ldarg.0 + IL_0031: ldfld class [mscorlib]System.Type valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::ActualType + IL_0036: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_003b: unbox.any !T + IL_0040: stobj !T + .line 139,139 : 9,10 '' + IL_0045: ret + } // end of method UnmanagedStructHandle`1::MarshalBack + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 23 (0x17) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 142,142 : 9,10 '' + IL_0000: nop + .line 143,143 : 13,41 '' + IL_0001: ldarg.0 + IL_0002: ldflda native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + IL_0007: constrained. [mscorlib]System.IntPtr + IL_000d: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0012: stloc.0 + IL_0013: br.s IL_0015 + + .line 144,144 : 9,10 '' + IL_0015: ldloc.0 + IL_0016: ret + } // end of method UnmanagedStructHandle`1::GetHashCode + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 42 (0x2a) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 147,147 : 9,10 '' + IL_0000: nop + .line 148,148 : 13,67 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_000f + + IL_0004: ldarg.1 + IL_0005: isinst valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + IL_000a: ldnull + IL_000b: cgt.un + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.0 + IL_0010: nop + IL_0011: stloc.1 + IL_0012: ldloc.1 + IL_0013: brtrue.s IL_0019 + + .line 149,149 : 17,30 '' + IL_0015: ldc.i4.0 + IL_0016: stloc.0 + IL_0017: br.s IL_0028 + + .line 151,151 : 13,58 '' + IL_0019: ldarg.0 + IL_001a: ldarg.1 + IL_001b: unbox.any valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + IL_0020: call instance bool valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Equals(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1) + IL_0025: stloc.0 + IL_0026: br.s IL_0028 + + .line 152,152 : 9,10 '' + IL_0028: ldloc.0 + IL_0029: ret + } // end of method UnmanagedStructHandle`1::Equals + + .method public hidebysig instance bool + Equals(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 other) cil managed + { + // Code size 63 (0x3f) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 155,155 : 9,10 '' + IL_0000: nop + .line 156,156 : 13,132 '' + IL_0001: ldarga.s other + IL_0003: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + IL_0008: ldarg.0 + IL_0009: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + IL_000e: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0013: brfalse.s IL_0038 + + IL_0015: ldarga.s other + IL_0017: ldfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + IL_001c: ldarg.0 + IL_001d: ldfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + IL_0022: bne.un.s IL_0038 + + IL_0024: ldarga.s other + IL_0026: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + IL_002b: ldarg.0 + IL_002c: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + IL_0031: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0036: br.s IL_0039 + + IL_0038: ldc.i4.0 + IL_0039: nop + IL_003a: stloc.0 + IL_003b: br.s IL_003d + + .line 157,157 : 9,10 '' + IL_003d: ldloc.0 + IL_003e: ret + } // end of method UnmanagedStructHandle`1::Equals + + .method private hidebysig newslot virtual final + instance void System.IDisposable.Dispose() cil managed + { + .override [mscorlib]System.IDisposable::Dispose + // Code size 9 (0x9) + .maxstack 8 + .line 162,162 : 9,10 '' + IL_0000: nop + .line 163,163 : 13,20 '' + IL_0001: ldarg.0 + IL_0002: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_0007: nop + .line 164,164 : 9,10 '' + IL_0008: ret + } // end of method UnmanagedStructHandle`1::System.IDisposable.Dispose + + .method public hidebysig newslot virtual final + instance void Free() cil managed + { + // Code size 155 (0x9b) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Exception e, + [1] bool CS$4$0000) + .line 167,167 : 9,10 '' + IL_0000: nop + .line 169,169 : 13,14 '' + .try + { + IL_0001: nop + .line 170,170 : 17,43 '' + IL_0002: ldarg.0 + IL_0003: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0008: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000d: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0012: ldc.i4.0 + IL_0013: ceq + IL_0015: stloc.1 + IL_0016: ldloc.1 + IL_0017: brtrue.s IL_0064 + + .line 171,171 : 17,18 '' + IL_0019: nop + .line 172,172 : 21,36 '' + IL_001a: ldarg.0 + IL_001b: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::FreePressure() + IL_0020: nop + .line 174,174 : 21,65 '' + IL_0021: ldarg.0 + IL_0022: ldfld valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalKind + IL_0027: ldc.i4.1 + IL_0028: ceq + IL_002a: ldc.i4.0 + IL_002b: ceq + IL_002d: stloc.1 + IL_002e: ldloc.1 + IL_002f: brtrue.s IL_003f + + .line 175,175 : 25,41 '' + IL_0031: ldarg.0 + IL_0032: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GcHandle + IL_0037: call instance void [mscorlib]System.Runtime.InteropServices.GCHandle::Free() + IL_003c: nop + IL_003d: br.s IL_0051 + + .line 177,177 : 25,70 '' + IL_003f: ldarg.0 + IL_0040: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0045: ldarg.0 + IL_0046: ldfld class [mscorlib]System.Type valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::ActualType + IL_004b: call void [mscorlib]System.Runtime.InteropServices.Marshal::DestroyStructure(native int, + class [mscorlib]System.Type) + IL_0050: nop + .line 179,179 : 21,42 '' + IL_0051: ldarg.0 + IL_0052: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0057: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + .line 180,180 : 21,39 '' + IL_005c: ldarg.0 + IL_005d: ldnull + IL_005e: stfld class [mscorlib]System.Type valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::ActualType + .line 181,181 : 17,18 '' + IL_0063: nop + .line 182,182 : 13,14 '' + IL_0064: nop + IL_0065: leave.s IL_0099 + + .line 183,183 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0067: stloc.0 + .line 184,184 : 13,14 '' + IL_0068: nop + .line 185,185 : 17,111 '' + IL_0069: ldc.i4.s 100 + IL_006b: ldarg.0 + IL_006c: ldobj valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + IL_0071: box valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + IL_0076: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_007b: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0080: ldstr "Unable to free a struct handle: " + IL_0085: ldloc.0 + IL_0086: callvirt instance string [mscorlib]System.Object::ToString() + IL_008b: call string [mscorlib]System.String::Concat(string, + string) + IL_0090: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0095: nop + .line 186,186 : 13,14 '' + IL_0096: nop + IL_0097: leave.s IL_0099 + + } // end handler + IL_0099: nop + .line 187,187 : 9,10 '' + IL_009a: ret + } // end of method UnmanagedStructHandle`1::Free + + .method private hidebysig instance void + FreePressure() cil managed + { + // Code size 140 (0x8c) + .maxstack 2 + .locals init ([0] int32 i, + [1] native int ptr, + [2] bool CS$4$0000) + .line 190,190 : 9,10 '' + IL_0000: nop + .line 191,191 : 13,47 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: stloc.2 + IL_0015: ldloc.2 + IL_0016: brtrue.s IL_0031 + + .line 192,192 : 13,14 '' + IL_0018: nop + .line 193,193 : 17,53 '' + IL_0019: ldarg.0 + IL_001a: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + IL_001f: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_0024: nop + .line 194,194 : 17,46 '' + IL_0025: ldarg.0 + IL_0026: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002b: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + .line 195,195 : 13,14 '' + IL_0030: nop + .line 197,197 : 13,34 '' + IL_0031: ldarg.0 + IL_0032: ldfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + IL_0037: ldnull + IL_0038: ceq + IL_003a: stloc.2 + IL_003b: ldloc.2 + IL_003c: brtrue.s IL_008b + + .line 198,198 : 13,14 '' + IL_003e: nop + .line 199,199 : 22,32 '' + IL_003f: ldc.i4.0 + IL_0040: stloc.0 + IL_0041: br.s IL_0074 + + .line 200,200 : 17,18 '' + IL_0043: nop + .line 201,201 : 21,46 '' + IL_0044: ldarg.0 + IL_0045: ldfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + IL_004a: ldloc.0 + IL_004b: ldelema [mscorlib]System.IntPtr + IL_0050: ldobj [mscorlib]System.IntPtr + IL_0055: stloc.1 + .line 203,203 : 21,44 '' + IL_0056: ldloc.1 + IL_0057: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_005c: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0061: ldc.i4.0 + IL_0062: ceq + IL_0064: stloc.2 + IL_0065: ldloc.2 + IL_0066: brtrue.s IL_006f + + .line 204,204 : 25,50 '' + IL_0068: ldloc.1 + IL_0069: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_006e: nop + .line 205,205 : 17,18 '' + IL_006f: nop + .line 199,199 : 54,57 '' + IL_0070: ldloc.0 + IL_0071: ldc.i4.1 + IL_0072: add + IL_0073: stloc.0 + .line 199,199 : 33,52 '' + IL_0074: ldloc.0 + IL_0075: ldarg.0 + IL_0076: ldfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + IL_007b: ldlen + IL_007c: conv.i4 + IL_007d: clt + IL_007f: stloc.2 + IL_0080: ldloc.2 + IL_0081: brtrue.s IL_0043 + + .line 207,207 : 17,33 '' + IL_0083: ldarg.0 + IL_0084: ldnull + IL_0085: stfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + .line 208,208 : 13,14 '' + IL_008a: nop + .line 209,209 : 9,10 '' + IL_008b: ret + } // end of method UnmanagedStructHandle`1::FreePressure + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 36,36 : 9,96 '' + IL_0000: ldsflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0005: initobj valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + IL_000b: ret + } // end of method UnmanagedStructHandle`1::.cctor + + .property instance native int IntPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + } // end of property UnmanagedStructHandle`1::IntPtr +} // end of class Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.PluginDescriptor + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.IDescriptor +{ + .custom instance void [mscorlib]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 08 7B 50 6C 75 67 69 6E 7D 00 00 ) // ...{Plugin}.. + .field private static initonly class [mscorlib]System.Type HookDescriptorType + .field private static initonly class [mscorlib]System.Type EventHookAttribType + .field private static initonly class [mscorlib]System.Type MenuItemAttribType + .field private static initonly class [mscorlib]System.Type ServiceFncAttribType + .field private static initonly class [mscorlib]System.Type CallbackDelegType + .field private initonly class Virtuoso.Miranda.Plugins.MirandaPlugin plugin + .field private valuetype Virtuoso.Miranda.Plugins.PluginState PluginStateInternal + .field private initonly class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection eventHooks + .field private initonly class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection serviceFunctions + .field private initonly class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection eventHandles + .method private hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 79 (0x4f) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 52,52 : 9,55 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\PluginDescriptor.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 53,53 : 9,10 '' + IL_0007: nop + .line 54,54 : 13,32 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 55,55 : 17,59 '' + IL_0013: ldstr "plugin" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 57,57 : 13,34 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + .line 59,59 : 13,62 '' + IL_0025: ldarg.0 + IL_0026: newobj instance void Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::.ctor() + IL_002b: stfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::eventHooks + .line 60,60 : 13,68 '' + IL_0030: ldarg.0 + IL_0031: newobj instance void Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::.ctor() + IL_0036: stfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::serviceFunctions + .line 61,61 : 13,61 '' + IL_003b: ldarg.0 + IL_003c: newobj instance void Virtuoso.Miranda.Plugins.Collections.EventHandleCollection::.ctor() + IL_0041: stfld class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::eventHandles + .line 63,63 : 13,26 '' + IL_0046: ldarg.0 + IL_0047: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::Initialize() + IL_004c: nop + .line 64,64 : 9,10 '' + IL_004d: nop + IL_004e: ret + } // end of method PluginDescriptor::.ctor + + .method private hidebysig instance void + Initialize() cil managed + { + // Code size 158 (0x9e) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Type pluginType, + [1] class [mscorlib]System.Reflection.Assembly pluginAssembly, + [2] class [mscorlib]System.Reflection.MethodInfo[] methods, + [3] class [mscorlib]System.Reflection.MethodInfo 'method', + [4] class [mscorlib]System.Reflection.MethodInfo[] CS$6$0000, + [5] int32 CS$7$0001, + [6] bool CS$4$0002) + .line 67,67 : 9,10 '' + IL_0000: nop + .line 68,68 : 13,38 '' + IL_0001: ldarg.0 + IL_0002: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0007: ldarg.0 + IL_0008: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::set_Descriptor(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_000d: nop + .line 70,70 : 13,48 '' + IL_000e: ldarg.0 + IL_000f: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0014: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0019: stloc.0 + .line 71,71 : 13,59 '' + IL_001a: ldloc.0 + IL_001b: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0020: stloc.1 + .line 73,73 : 13,182 '' + IL_0021: ldloc.0 + IL_0022: ldc.i4.s 124 + IL_0024: callvirt instance class [mscorlib]System.Reflection.MethodInfo[] [mscorlib]System.Type::GetMethods(valuetype [mscorlib]System.Reflection.BindingFlags) + IL_0029: stloc.2 + .line 75,75 : 13,20 '' + IL_002a: nop + .line 75,75 : 43,50 '' + IL_002b: ldloc.2 + IL_002c: stloc.s CS$6$0000 + IL_002e: ldc.i4.0 + IL_002f: stloc.s CS$7$0001 + IL_0031: br.s IL_0065 + + .line 75,75 : 22,39 '' + IL_0033: ldloc.s CS$6$0000 + IL_0035: ldloc.s CS$7$0001 + IL_0037: ldelem.ref + IL_0038: stloc.3 + .line 76,76 : 13,14 '' + IL_0039: nop + .line 77,77 : 17,88 '' + IL_003a: ldarg.0 + IL_003b: ldloc.3 + IL_003c: ldarg.0 + IL_003d: call instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_0042: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodHooksByAttribute(class [mscorlib]System.Reflection.MethodInfo, + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection) + IL_0047: nop + .line 78,78 : 17,100 '' + IL_0048: ldarg.0 + IL_0049: ldloc.3 + IL_004a: ldarg.0 + IL_004b: call instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_0050: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodHooksByAttribute(class [mscorlib]System.Reflection.MethodInfo, + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection) + IL_0055: nop + .line 80,80 : 17,62 '' + IL_0056: ldarg.0 + IL_0057: ldloc.3 + IL_0058: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodLevelDeclaredMenuItems(class [mscorlib]System.Reflection.MethodInfo) + IL_005d: nop + .line 81,81 : 13,14 '' + IL_005e: nop + IL_005f: ldloc.s CS$7$0001 + IL_0061: ldc.i4.1 + IL_0062: add + IL_0063: stloc.s CS$7$0001 + .line 75,75 : 40,42 '' + IL_0065: ldloc.s CS$7$0001 + IL_0067: ldloc.s CS$6$0000 + IL_0069: ldlen + IL_006a: conv.i4 + IL_006b: clt + IL_006d: stloc.s CS$4$0002 + IL_006f: ldloc.s CS$4$0002 + IL_0071: brtrue.s IL_0033 + + .line 83,83 : 13,49 '' + IL_0073: ldarg.0 + IL_0074: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateTopLevelDeclaredMenuItems() + IL_0079: nop + .line 84,84 : 13,81 '' + IL_007a: ldarg.0 + IL_007b: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0080: ldarg.0 + IL_0081: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0086: callvirt instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection() + IL_008b: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterMenuItemsPopulationInternal(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection) + IL_0090: nop + .line 86,86 : 13,56 '' + IL_0091: ldarg.0 + IL_0092: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0097: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginInitializationInternal() + IL_009c: nop + .line 87,87 : 9,10 '' + IL_009d: ret + } // end of method PluginDescriptor::Initialize + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.PluginDescriptor + SetUp(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 83 (0x53) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Exception e, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000, + [2] bool CS$4$0001) + .line 90,90 : 9,10 '' + IL_0000: nop + .line 91,91 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 92,92 : 17,59 '' + IL_000c: ldstr "plugin" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 95,95 : 13,14 '' + .try + { + IL_0017: nop + .line 96,96 : 17,53 '' + IL_0018: ldarg.0 + IL_0019: newobj instance void Virtuoso.Miranda.Plugins.PluginDescriptor::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_001e: stloc.1 + IL_001f: leave.s IL_0050 + + .line 98,98 : 13,36 '' + } // end .try + catch Virtuoso.Miranda.Plugins.FusionException + { + IL_0021: pop + .line 99,99 : 13,14 '' + IL_0022: nop + .line 100,100 : 17,23 '' + IL_0023: rethrow + .line 102,102 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_0025: stloc.0 + .line 103,103 : 13,14 '' + IL_0026: nop + .line 104,104 : 17,195 '' + IL_0027: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor() + IL_002c: ldloc.0 + IL_002d: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0032: call string [mscorlib]System.String::Format(string, + object) + IL_0037: ldarg.0 + IL_0038: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_003d: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0042: ldarg.0 + IL_0043: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0048: ldarg.0 + IL_0049: ldloc.0 + IL_004a: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_004f: throw + + } // end handler + IL_0050: nop + .line 106,106 : 9,10 '' + IL_0051: ldloc.1 + IL_0052: ret + } // end of method PluginDescriptor::SetUp + + .method private hidebysig instance void + PopulateMethodHooksByAttribute<(Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute) TAttrib>(class [mscorlib]System.Reflection.MethodInfo 'method', + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection hookBag) cil managed + { + // Code size 111 (0x6f) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Type attribType, + [1] !!TAttrib[] attributes, + [2] bool CS$4$0000) + .line 113,113 : 9,10 '' + IL_0000: nop + .line 114,114 : 13,32 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 115,115 : 17,59 '' + IL_000c: ldstr "method" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 117,117 : 13,33 '' + IL_0017: ldarg.2 + IL_0018: ldnull + IL_0019: ceq + IL_001b: ldc.i4.0 + IL_001c: ceq + IL_001e: stloc.2 + IL_001f: ldloc.2 + IL_0020: brtrue.s IL_002d + + .line 118,118 : 17,60 '' + IL_0022: ldstr "hookBag" + IL_0027: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002c: throw + + .line 120,120 : 13,47 '' + IL_002d: ldtoken !!TAttrib + IL_0032: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0037: stloc.0 + .line 122,122 : 13,52 '' + IL_0038: ldarg.1 + IL_0039: ldloc.0 + IL_003a: ldc.i4.1 + IL_003b: callvirt instance bool [mscorlib]System.Reflection.MemberInfo::IsDefined(class [mscorlib]System.Type, + bool) + IL_0040: ldc.i4.0 + IL_0041: ceq + IL_0043: stloc.2 + IL_0044: ldloc.2 + IL_0045: brtrue.s IL_006e + + .line 123,123 : 13,14 '' + IL_0047: nop + .line 124,124 : 17,107 '' + IL_0048: ldarg.1 + IL_0049: ldloc.0 + IL_004a: ldc.i4.1 + IL_004b: call class [mscorlib]System.Attribute[] [mscorlib]System.Attribute::GetCustomAttributes(class [mscorlib]System.Reflection.MemberInfo, + class [mscorlib]System.Type, + bool) + IL_0050: castclass !!TAttrib[] + IL_0055: stloc.1 + .line 126,126 : 17,43 '' + IL_0056: ldloc.1 + IL_0057: ldlen + IL_0058: conv.i4 + IL_0059: ldc.i4.0 + IL_005a: cgt + IL_005c: ldc.i4.0 + IL_005d: ceq + IL_005f: stloc.2 + IL_0060: ldloc.2 + IL_0061: brtrue.s IL_006d + + .line 127,127 : 21,79 '' + IL_0063: ldarg.0 + IL_0064: ldarg.1 + IL_0065: ldarg.2 + IL_0066: ldloc.1 + IL_0067: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodHooks(class [mscorlib]System.Reflection.MethodInfo, + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection, + !!0[]) + IL_006c: nop + .line 128,128 : 13,14 '' + IL_006d: nop + .line 129,129 : 9,10 '' + IL_006e: ret + } // end of method PluginDescriptor::PopulateMethodHooksByAttribute + + .method private hidebysig instance void + PopulateMethodHooks<(Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute) TAttrib>(class [mscorlib]System.Reflection.MethodInfo 'method', + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection hookBag, + !!TAttrib[] attributes) cil managed + { + .param [3] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 248 (0xf8) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Callback hookCallback, + [1] !!TAttrib attribute, + [2] bool CS$4$0000, + [3] !!TAttrib[] CS$6$0001, + [4] int32 CS$7$0002) + .line 132,132 : 9,10 '' + IL_0000: nop + .line 133,133 : 13,32 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 134,134 : 17,59 '' + IL_000c: ldstr "method" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 136,136 : 13,33 '' + IL_0017: ldarg.2 + IL_0018: ldnull + IL_0019: ceq + IL_001b: ldc.i4.0 + IL_001c: ceq + IL_001e: stloc.2 + IL_001f: ldloc.2 + IL_0020: brtrue.s IL_002d + + .line 137,137 : 17,60 '' + IL_0022: ldstr "hookBag" + IL_0027: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002c: throw + + .line 139,139 : 13,36 '' + IL_002d: ldarg.3 + IL_002e: ldnull + IL_002f: ceq + IL_0031: ldc.i4.0 + IL_0032: ceq + IL_0034: stloc.2 + IL_0035: ldloc.2 + IL_0036: brtrue.s IL_0043 + + .line 140,140 : 17,63 '' + IL_0038: ldstr "attributes" + IL_003d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0042: throw + + .line 142,142 : 13,40 '' + IL_0043: ldarg.3 + IL_0044: ldlen + IL_0045: conv.i4 + IL_0046: ldc.i4.0 + IL_0047: ceq + IL_0049: ldc.i4.0 + IL_004a: ceq + IL_004c: stloc.2 + IL_004d: ldloc.2 + IL_004e: brtrue.s IL_0055 + + .line 143,143 : 17,24 '' + IL_0050: br IL_00f7 + + .line 145,145 : 13,115 '' + IL_0055: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::CallbackDelegType + IL_005a: ldarg.0 + IL_005b: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0060: ldarg.1 + IL_0061: ldc.i4.0 + IL_0062: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::CreateDelegate(class [mscorlib]System.Type, + object, + class [mscorlib]System.Reflection.MethodInfo, + bool) + IL_0067: isinst Virtuoso.Miranda.Plugins.Callback + IL_006c: stloc.0 + .line 147,147 : 13,38 '' + IL_006d: ldloc.0 + IL_006e: ldnull + IL_006f: ceq + IL_0071: ldc.i4.0 + IL_0072: ceq + IL_0074: stloc.2 + IL_0075: ldloc.2 + IL_0076: brtrue.s IL_00b0 + + .line 148,148 : 17,193 '' + IL_0078: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_InvalidMethodSignature() + IL_007d: ldarg.1 + IL_007e: callvirt instance string [mscorlib]System.Reflection.MemberInfo::get_Name() + IL_0083: call string [mscorlib]System.String::Format(string, + object) + IL_0088: ldarg.0 + IL_0089: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_008e: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0093: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0098: ldarg.0 + IL_0099: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_009e: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_00a3: ldarg.0 + IL_00a4: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_00a9: ldnull + IL_00aa: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_00af: throw + + .line 150,150 : 13,20 '' + IL_00b0: nop + .line 150,150 : 43,53 '' + IL_00b1: ldarg.3 + IL_00b2: stloc.3 + IL_00b3: ldc.i4.0 + IL_00b4: stloc.s CS$7$0002 + IL_00b6: br.s IL_00ec + + .line 150,150 : 22,39 '' + IL_00b8: ldloc.3 + IL_00b9: ldloc.s CS$7$0002 + IL_00bb: ldelem !!TAttrib + IL_00c0: stloc.1 + .line 151,151 : 13,14 '' + IL_00c1: nop + .line 152,152 : 17,115 '' + IL_00c2: ldarg.2 + IL_00c3: ldloca.s attribute + IL_00c5: constrained. !!TAttrib + IL_00cb: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::get_HookName() + IL_00d0: ldarg.0 + IL_00d1: ldloc.0 + IL_00d2: ldloca.s attribute + IL_00d4: constrained. !!TAttrib + IL_00da: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::get_HookType() + IL_00df: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_00e4: pop + .line 153,153 : 13,14 '' + IL_00e5: nop + IL_00e6: ldloc.s CS$7$0002 + IL_00e8: ldc.i4.1 + IL_00e9: add + IL_00ea: stloc.s CS$7$0002 + .line 150,150 : 40,42 '' + IL_00ec: ldloc.s CS$7$0002 + IL_00ee: ldloc.3 + IL_00ef: ldlen + IL_00f0: conv.i4 + IL_00f1: clt + IL_00f3: stloc.2 + IL_00f4: ldloc.2 + IL_00f5: brtrue.s IL_00b8 + + .line 154,154 : 9,10 '' + IL_00f7: ret + } // end of method PluginDescriptor::PopulateMethodHooks + + .method private hidebysig instance void + PopulateTopLevelDeclaredMenuItems() cil managed + { + // Code size 71 (0x47) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Type pluginType, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute[] menuItemAttribs, + [2] bool CS$4$0000) + .line 157,157 : 9,10 '' + IL_0000: nop + .line 158,158 : 13,48 '' + IL_0001: ldarg.0 + IL_0002: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0007: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_000c: stloc.0 + .line 160,160 : 13,64 '' + IL_000d: ldloc.0 + IL_000e: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::MenuItemAttribType + IL_0013: ldc.i4.1 + IL_0014: callvirt instance bool [mscorlib]System.Reflection.MemberInfo::IsDefined(class [mscorlib]System.Type, + bool) + IL_0019: ldc.i4.0 + IL_001a: ceq + IL_001c: stloc.2 + IL_001d: ldloc.2 + IL_001e: brtrue.s IL_0046 + + .line 161,161 : 13,14 '' + IL_0020: nop + .line 162,162 : 17,155 '' + IL_0021: ldloc.0 + IL_0022: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::MenuItemAttribType + IL_0027: ldc.i4.1 + IL_0028: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_002d: castclass class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute[] + IL_0032: stloc.1 + .line 163,163 : 17,70 '' + IL_0033: ldarg.0 + IL_0034: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0039: callvirt instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection() + IL_003e: ldloc.1 + IL_003f: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::AddRange(class [mscorlib]System.Collections.Generic.IEnumerable`1) + IL_0044: nop + .line 164,164 : 13,14 '' + IL_0045: nop + .line 165,165 : 9,10 '' + IL_0046: ret + } // end of method PluginDescriptor::PopulateTopLevelDeclaredMenuItems + + .method private hidebysig instance void + PopulateMethodLevelDeclaredMenuItems(class [mscorlib]System.Reflection.MethodInfo 'method') cil managed + { + // Code size 265 (0x109) + .maxstack 6 + .locals init ([0] string methodService, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute[] menuItems, + [2] bool serviceRegistered, + [3] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + [4] bool CS$4$0000, + [5] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute[] CS$6$0001, + [6] int32 CS$7$0002, + [7] class Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute[] CS$0$0003) + .line 168,168 : 9,10 '' + IL_0000: nop + .line 169,169 : 13,32 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0000 + IL_000a: ldloc.s CS$4$0000 + IL_000c: brtrue.s IL_0019 + + .line 170,170 : 17,59 '' + IL_000e: ldstr "method" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 172,172 : 13,60 '' + IL_0019: ldarg.1 + IL_001a: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::MenuItemAttribType + IL_001f: ldc.i4.1 + IL_0020: callvirt instance bool [mscorlib]System.Reflection.MemberInfo::IsDefined(class [mscorlib]System.Type, + bool) + IL_0025: ldc.i4.0 + IL_0026: ceq + IL_0028: stloc.s CS$4$0000 + IL_002a: ldloc.s CS$4$0000 + IL_002c: brtrue IL_0108 + + .line 173,173 : 13,14 '' + IL_0031: nop + .line 174,174 : 17,105 '' + IL_0032: ldstr "{0}.{1}" + IL_0037: ldarg.0 + IL_0038: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_003d: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0042: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0047: ldarg.1 + IL_0048: callvirt instance string [mscorlib]System.Reflection.MemberInfo::get_Name() + IL_004d: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0052: stloc.0 + .line 175,175 : 17,145 '' + IL_0053: ldarg.1 + IL_0054: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::MenuItemAttribType + IL_0059: ldc.i4.1 + IL_005a: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_005f: castclass class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute[] + IL_0064: stloc.1 + .line 177,177 : 17,48 '' + IL_0065: ldc.i4.0 + IL_0066: stloc.2 + .line 179,179 : 17,24 '' + IL_0067: nop + .line 179,179 : 67,76 '' + IL_0068: ldloc.1 + IL_0069: stloc.s CS$6$0001 + IL_006b: ldc.i4.0 + IL_006c: stloc.s CS$7$0002 + IL_006e: br IL_00f6 + + .line 179,179 : 26,63 '' + IL_0073: ldloc.s CS$6$0001 + IL_0075: ldloc.s CS$7$0002 + IL_0077: ldelem.ref + IL_0078: stloc.3 + .line 180,180 : 17,18 '' + IL_0079: nop + .line 181,181 : 21,65 '' + IL_007a: ldloc.3 + IL_007b: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Service() + IL_0080: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0085: stloc.s CS$4$0000 + IL_0087: ldloc.s CS$4$0000 + IL_0089: brtrue.s IL_00a8 + + .line 182,182 : 25,190 '' + IL_008b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable3_MenuItemServiceAlreadySet() + IL_0090: ldloc.3 + IL_0091: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Text() + IL_0096: ldloc.0 + IL_0097: ldloc.3 + IL_0098: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Service() + IL_009d: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_00a2: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_00a7: throw + + .line 184,184 : 21,44 '' + IL_00a8: ldloc.2 + IL_00a9: stloc.s CS$4$0000 + IL_00ab: ldloc.s CS$4$0000 + IL_00ad: brtrue.s IL_00d5 + + .line 185,185 : 21,22 '' + IL_00af: nop + .line 186,186 : 25,142 '' + IL_00b0: ldarg.0 + IL_00b1: ldarg.1 + IL_00b2: ldarg.0 + IL_00b3: call instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_00b8: ldc.i4.1 + IL_00b9: newarr Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute + IL_00be: stloc.s CS$0$0003 + IL_00c0: ldloc.s CS$0$0003 + IL_00c2: ldc.i4.0 + IL_00c3: ldloc.0 + IL_00c4: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::.ctor(string) + IL_00c9: stelem.ref + IL_00ca: ldloc.s CS$0$0003 + IL_00cc: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodHooks(class [mscorlib]System.Reflection.MethodInfo, + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection, + !!0[]) + IL_00d1: nop + .line 187,187 : 25,50 '' + IL_00d2: ldc.i4.1 + IL_00d3: stloc.2 + .line 188,188 : 21,22 '' + IL_00d4: nop + .line 190,190 : 21,54 '' + IL_00d5: ldloc.3 + IL_00d6: ldloc.0 + IL_00d7: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Service(string) + IL_00dc: nop + .line 191,191 : 21,62 '' + IL_00dd: ldarg.0 + IL_00de: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_00e3: callvirt instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection() + IL_00e8: ldloc.3 + IL_00e9: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_00ee: nop + .line 192,192 : 17,18 '' + IL_00ef: nop + IL_00f0: ldloc.s CS$7$0002 + IL_00f2: ldc.i4.1 + IL_00f3: add + IL_00f4: stloc.s CS$7$0002 + .line 179,179 : 64,66 '' + IL_00f6: ldloc.s CS$7$0002 + IL_00f8: ldloc.s CS$6$0001 + IL_00fa: ldlen + IL_00fb: conv.i4 + IL_00fc: clt + IL_00fe: stloc.s CS$4$0000 + IL_0100: ldloc.s CS$4$0000 + IL_0102: brtrue IL_0073 + + .line 193,193 : 13,14 '' + IL_0107: nop + .line 194,194 : 9,10 '' + IL_0108: ret + } // end of method PluginDescriptor::PopulateMethodLevelDeclaredMenuItems + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 201,201 : 9,10 '' + IL_0000: nop + .line 202,202 : 13,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0007: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 203,203 : 9,10 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method PluginDescriptor::GetHashCode + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 52 (0x34) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 206,206 : 9,10 '' + IL_0000: nop + .line 207,207 : 13,59 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_000f + + IL_0004: ldarg.1 + IL_0005: isinst Virtuoso.Miranda.Plugins.PluginDescriptor + IL_000a: ldnull + IL_000b: cgt.un + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.0 + IL_0010: nop + IL_0011: stloc.1 + IL_0012: ldloc.1 + IL_0013: brtrue.s IL_0019 + + .line 208,208 : 17,30 '' + IL_0015: ldc.i4.0 + IL_0016: stloc.0 + IL_0017: br.s IL_0032 + + .line 210,210 : 13,66 '' + IL_0019: ldarg.0 + IL_001a: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_001f: ldarg.1 + IL_0020: castclass Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0025: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_002a: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_002f: stloc.0 + IL_0030: br.s IL_0032 + + .line 211,211 : 9,10 '' + IL_0032: ldloc.0 + IL_0033: ret + } // end of method PluginDescriptor::Equals + + .method public hidebysig instance void + SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState newState) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 214,214 : 9,10 '' + IL_0000: nop + .line 215,215 : 13,45 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldc.i4.0 + IL_0004: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState, + bool) + IL_0009: nop + .line 216,216 : 9,10 '' + IL_000a: ret + } // end of method PluginDescriptor::SetPluginState + + .method public hidebysig instance void + SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState newState, + bool rememberState) cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 219,219 : 9,10 '' + IL_0000: nop + .line 220,220 : 13,96 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_000b: ldarg.0 + IL_000c: ldarg.1 + IL_000d: ldarg.2 + IL_000e: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState, + bool) + IL_0013: nop + .line 221,221 : 9,10 '' + IL_0014: ret + } // end of method PluginDescriptor::SetPluginState + + .method assembly hidebysig instance void + AssociateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook) cil managed + { + // Code size 112 (0x70) + .maxstack 2 + .locals init ([0] bool CS$4$0000, + [1] valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType CS$4$0001) + .line 224,224 : 9,10 '' + IL_0000: nop + .line 225,225 : 13,30 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 226,226 : 17,57 '' + IL_000c: ldstr "hook" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 229,229 : 13,14 '' + .try + { + IL_0017: nop + .line 230,230 : 17,67 '' + IL_0018: ldarg.0 + IL_0019: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + IL_001e: nop + .line 232,232 : 17,39 '' + IL_001f: ldarg.1 + IL_0020: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + IL_0025: stloc.1 + IL_0026: ldloc.1 + IL_0027: ldc.i4.1 + IL_0028: sub + IL_0029: switch ( + IL_0038, + IL_0047) + IL_0036: br.s IL_0056 + + .line 235,235 : 25,46 '' + IL_0038: ldarg.0 + IL_0039: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::eventHooks + IL_003e: ldarg.1 + IL_003f: callvirt instance void Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Add(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0044: nop + .line 236,236 : 25,31 '' + IL_0045: br.s IL_0061 + + .line 238,238 : 25,52 '' + IL_0047: ldarg.0 + IL_0048: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::serviceFunctions + IL_004d: ldarg.1 + IL_004e: callvirt instance void Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Add(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0053: nop + .line 239,239 : 25,31 '' + IL_0054: br.s IL_0061 + + .line 241,241 : 25,71 '' + IL_0056: ldstr "hook" + IL_005b: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0060: throw + + .line 243,243 : 13,14 '' + IL_0061: nop + IL_0062: leave.s IL_006e + + .line 245,245 : 13,14 '' + } // end .try + finally + { + IL_0064: nop + .line 246,246 : 17,55 '' + IL_0065: ldarg.0 + IL_0066: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_006b: nop + .line 247,247 : 13,14 '' + IL_006c: nop + IL_006d: endfinally + } // end handler + IL_006e: nop + .line 248,248 : 9,10 '' + IL_006f: ret + } // end of method PluginDescriptor::AssociateHook + + .method assembly hidebysig instance void + UpdatePluginState(valuetype Virtuoso.Miranda.Plugins.PluginState state) cil managed + { + // Code size 45 (0x2d) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 251,251 : 9,10 '' + IL_0000: nop + .line 252,252 : 13,61 '' + IL_0001: ldtoken Virtuoso.Miranda.Plugins.PluginState + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: ldarg.1 + IL_000c: box Virtuoso.Miranda.Plugins.PluginState + IL_0011: call bool [mscorlib]System.Enum::IsDefined(class [mscorlib]System.Type, + object) + IL_0016: stloc.0 + IL_0017: ldloc.0 + IL_0018: brtrue.s IL_0025 + + .line 253,253 : 17,64 '' + IL_001a: ldstr "state" + IL_001f: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0024: throw + + .line 255,255 : 13,41 '' + IL_0025: ldarg.0 + IL_0026: ldarg.1 + IL_0027: stfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::PluginStateInternal + .line 256,256 : 9,10 '' + IL_002c: ret + } // end of method PluginDescriptor::UpdatePluginState + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.PluginState + get_PluginState() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.PluginState CS$1$0000) + .line 265,265 : 13,14 '' + IL_0000: nop + .line 266,266 : 17,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::PluginStateInternal + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 267,267 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginDescriptor::get_PluginState + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.MirandaPlugin + get_Plugin() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin CS$1$0000) + .line 273,273 : 13,14 '' + IL_0000: nop + .line 274,274 : 17,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 275,275 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginDescriptor::get_Plugin + + .method public hidebysig specialname instance bool + get_IsStandalone() cil managed + { + // Code size 20 (0x14) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 281,281 : 13,14 '' + IL_0000: nop + .line 282,282 : 17,51 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0007: isinst Virtuoso.Hyphen.Mini.StandalonePlugin + IL_000c: ldnull + IL_000d: cgt.un + IL_000f: stloc.0 + IL_0010: br.s IL_0012 + + .line 283,283 : 13,14 '' + IL_0012: ldloc.0 + IL_0013: ret + } // end of method PluginDescriptor::get_IsStandalone + + .method assembly hidebysig specialname + instance bool get_IsConfigurable() cil managed + { + // Code size 37 (0x25) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 289,289 : 13,14 '' + IL_0000: nop + .line 290,290 : 17,75 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0007: callvirt instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_HasOptions() + IL_000c: brfalse.s IL_001e + + IL_000e: ldarg.0 + IL_000f: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0014: isinst Virtuoso.Miranda.Plugins.IConfigurablePlugin + IL_0019: ldnull + IL_001a: cgt.un + IL_001c: br.s IL_001f + + IL_001e: ldc.i4.0 + IL_001f: nop + IL_0020: stloc.0 + IL_0021: br.s IL_0023 + + .line 291,291 : 13,14 '' + IL_0023: ldloc.0 + IL_0024: ret + } // end of method PluginDescriptor::get_IsConfigurable + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + get_EventHooks() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection CS$1$0000) + .line 297,297 : 13,14 '' + IL_0000: nop + .line 298,298 : 17,35 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::eventHooks + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 299,299 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginDescriptor::get_EventHooks + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + get_ServiceFunctions() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection CS$1$0000) + .line 305,305 : 13,14 '' + IL_0000: nop + .line 306,306 : 17,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::serviceFunctions + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 307,307 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginDescriptor::get_ServiceFunctions + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection + get_EventHandles() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection CS$1$0000) + .line 313,313 : 13,14 '' + IL_0000: nop + .line 314,314 : 17,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::eventHandles + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 315,315 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginDescriptor::get_EventHandles + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 76 (0x4c) + .maxstack 1 + .line 36,36 : 9,82 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::HookDescriptorType + .line 37,37 : 13,62 '' + IL_000f: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute + IL_0014: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0019: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::EventHookAttribType + .line 38,38 : 13,71 '' + IL_001e: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + IL_0023: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0028: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::MenuItemAttribType + .line 39,39 : 13,69 '' + IL_002d: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute + IL_0032: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0037: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::ServiceFncAttribType + .line 40,40 : 13,50 '' + IL_003c: ldtoken Virtuoso.Miranda.Plugins.Callback + IL_0041: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0046: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::CallbackDelegType + IL_004b: ret + } // end of method PluginDescriptor::.cctor + + .property instance valuetype Virtuoso.Miranda.Plugins.PluginState + PluginState() + { + .get instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState() + } // end of property PluginDescriptor::PluginState + .property instance class Virtuoso.Miranda.Plugins.MirandaPlugin + Plugin() + { + .get instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + } // end of property PluginDescriptor::Plugin + .property instance bool IsStandalone() + { + .get instance bool Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsStandalone() + } // end of property PluginDescriptor::IsStandalone + .property instance bool IsConfigurable() + { + .get instance bool Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsConfigurable() + } // end of property PluginDescriptor::IsConfigurable + .property instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + EventHooks() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + } // end of property PluginDescriptor::EventHooks + .property instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + ServiceFunctions() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + } // end of property PluginDescriptor::ServiceFunctions + .property instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection + EventHandles() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHandles() + } // end of property PluginDescriptor::EventHandles +} // end of class Virtuoso.Miranda.Plugins.PluginDescriptor + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.DefaultPluginManager + extends Virtuoso.Miranda.Plugins.PluginManagerBase +{ + .field public static literal string LogCategory = "Hyphen::PluginManager" + .field public static literal string InternalServiceNamePrefix = "Virtuoso.Miranda.Plugins.Services." + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Hyphen.FusionContext fusionContext) cil managed + { + // Code size 91 (0x5b) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Reflection.AssemblyName assemblyName) + .line 38,39 : 9,46 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\DefaultPluginManager.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.1 + IL_0003: ldc.i4.1 + IL_0004: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::.ctor(class Virtuoso.Hyphen.FusionContext, + bool, + bool) + IL_0009: nop + .line 40,40 : 9,10 '' + IL_000a: nop + .line 41,41 : 13,83 '' + IL_000b: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetExecutingAssembly() + IL_0010: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_0015: stloc.0 + .line 42,42 : 13,145 '' + IL_0016: ldc.i4.0 + IL_0017: ldstr "Hyphen::PluginManager" + IL_001c: ldstr "Hyphen Plugin Manager v" + IL_0021: ldloc.0 + IL_0022: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_0027: callvirt instance string [mscorlib]System.Object::ToString() + IL_002c: ldstr " is initializing, please wait..." + IL_0031: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_0036: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_003b: nop + .line 44,44 : 13,77 '' + IL_003c: ldarg.0 + IL_003d: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_0042: call void Virtuoso.Miranda.Plugins.PluginManagerBase::FirePrimaryPluginManagerInitializedEvent(class Virtuoso.Miranda.Plugins.PluginManagerBase, + class [mscorlib]System.EventArgs) + IL_0047: nop + .line 45,45 : 13,86 '' + IL_0048: ldc.i4.0 + IL_0049: ldstr "Hyphen::PluginManager" + IL_004e: ldstr "Default Plugin Manager initialized." + IL_0053: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0058: nop + .line 46,46 : 9,10 '' + IL_0059: nop + IL_005a: ret + } // end of method DefaultPluginManager::.ctor + + .method famorassem hidebysig virtual instance void + FindAndLoadPlugins() cil managed + { + // Code size 398 (0x18e) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Reflection.Assembly currentAssembly, + [1] class [mscorlib]System.Type currentType, + [2] class Virtuoso.Miranda.Plugins.MirandaPlugin currentPlugin, + [3] string[] paths, + [4] string path, + [5] class [mscorlib]System.Exception e, + [6] class Virtuoso.Miranda.Plugins.FusionException fEx, + [7] bool CS$4$0000, + [8] string[] CS$6$0001, + [9] int32 CS$7$0002) + .line 53,53 : 9,10 '' + IL_0000: nop + .line 54,54 : 13,41 '' + IL_0001: ldarg.0 + IL_0002: call instance class Virtuoso.Hyphen.FusionContext Virtuoso.Miranda.Plugins.PluginManagerBase::get_FusionContext() + IL_0007: callvirt instance bool Virtuoso.Hyphen.FusionContext::get_IsInvalid() + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.s CS$4$0000 + IL_0011: ldloc.s CS$4$0000 + IL_0013: brtrue.s IL_0020 + + .line 55,55 : 17,102 '' + IL_0015: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidFusionContext() + IL_001a: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001f: throw + + .line 57,57 : 13,29 '' + IL_0020: ldarg.0 + IL_0021: call instance bool Virtuoso.Miranda.Plugins.PluginManagerBase::get_Initialized() + IL_0026: ldc.i4.0 + IL_0027: ceq + IL_0029: stloc.s CS$4$0000 + IL_002b: ldloc.s CS$4$0000 + IL_002d: brtrue.s IL_003a + + .line 58,58 : 17,113 '' + IL_002f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginManagerAlreadyInitialized() + IL_0034: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0039: throw + + .line 60,60 : 13,45 '' + IL_003a: ldnull + IL_003b: stloc.0 + .line 61,61 : 13,37 '' + IL_003c: ldnull + IL_003d: stloc.1 + .line 62,62 : 13,48 '' + IL_003e: ldnull + IL_003f: stloc.2 + .line 65,65 : 13,14 '' + .try + { + .try + { + IL_0040: nop + .line 66,66 : 17,79 '' + IL_0041: ldarg.0 + IL_0042: call instance class Virtuoso.Hyphen.FusionContext Virtuoso.Miranda.Plugins.PluginManagerBase::get_FusionContext() + IL_0047: callvirt instance class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.FusionContext::get_AssemblyProbe() + IL_004c: callvirt instance string[] Virtuoso.Miranda.Plugins.AssemblyProbe::FindAssemblies() + IL_0051: stloc.3 + .line 68,68 : 17,39 '' + IL_0052: ldloc.3 + IL_0053: ldlen + IL_0054: conv.i4 + IL_0055: ldc.i4.0 + IL_0056: ceq + IL_0058: ldc.i4.0 + IL_0059: ceq + IL_005b: stloc.s CS$4$0000 + IL_005d: ldloc.s CS$4$0000 + IL_005f: brtrue.s IL_0078 + + .line 69,69 : 17,18 '' + IL_0061: nop + .line 70,70 : 21,84 '' + IL_0062: ldc.i4.1 + IL_0063: ldstr "Hyphen::PluginManager" + IL_0068: ldstr "No managed plugins found." + IL_006d: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0072: nop + .line 71,71 : 21,28 '' + IL_0073: leave IL_018c + + .line 74,74 : 17,100 '' + IL_0078: ldc.i4.0 + IL_0079: ldstr "Hyphen::PluginManager" + IL_007e: ldstr "Found " + IL_0083: ldloc.3 + IL_0084: ldlen + IL_0085: conv.i4 + IL_0086: box [mscorlib]System.Int32 + IL_008b: ldstr " managed plugins..." + IL_0090: call string [mscorlib]System.String::Concat(object, + object, + object) + IL_0095: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_009a: nop + .line 76,76 : 17,24 '' + IL_009b: nop + .line 76,76 : 41,46 '' + IL_009c: ldloc.3 + IL_009d: stloc.s CS$6$0001 + IL_009f: ldc.i4.0 + IL_00a0: stloc.s CS$7$0002 + IL_00a2: br.s IL_00c0 + + .line 76,76 : 26,37 '' + IL_00a4: ldloc.s CS$6$0001 + IL_00a6: ldloc.s CS$7$0002 + IL_00a8: ldelem.ref + IL_00a9: stloc.s path + .line 77,77 : 21,97 '' + IL_00ab: ldarg.0 + IL_00ac: ldloc.s path + IL_00ae: ldloca.s currentAssembly + IL_00b0: ldloca.s currentType + IL_00b2: ldloca.s currentPlugin + IL_00b4: call instance void Virtuoso.Miranda.Plugins.DefaultPluginManager::LoadAssembly(string, + class [mscorlib]System.Reflection.Assembly&, + class [mscorlib]System.Type&, + class Virtuoso.Miranda.Plugins.MirandaPlugin&) + IL_00b9: nop + IL_00ba: ldloc.s CS$7$0002 + IL_00bc: ldc.i4.1 + IL_00bd: add + IL_00be: stloc.s CS$7$0002 + .line 76,76 : 38,40 '' + IL_00c0: ldloc.s CS$7$0002 + IL_00c2: ldloc.s CS$6$0001 + IL_00c4: ldlen + IL_00c5: conv.i4 + IL_00c6: clt + IL_00c8: stloc.s CS$4$0000 + IL_00ca: ldloc.s CS$4$0000 + IL_00cc: brtrue.s IL_00a4 + + .line 78,78 : 13,14 '' + IL_00ce: nop + IL_00cf: leave IL_015b + + .line 79,79 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_00d4: stloc.s e + .line 80,80 : 13,14 '' + IL_00d6: nop + .line 81,81 : 17,44 '' + IL_00d7: ldnull + IL_00d8: stloc.s fEx + .line 82,82 : 17,65 '' + IL_00da: ldc.i4.0 + IL_00db: ldstr "Hyphen::PluginManager" + IL_00e0: ldloc.s e + IL_00e2: callvirt instance string [mscorlib]System.Object::ToString() + IL_00e7: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_00ec: nop + .line 84,84 : 17,38 '' + IL_00ed: ldloc.s e + IL_00ef: isinst [mscorlib]System.IO.IOException + IL_00f4: ldnull + IL_00f5: cgt.un + IL_00f7: ldc.i4.0 + IL_00f8: ceq + IL_00fa: stloc.s CS$4$0000 + IL_00fc: ldloc.s CS$4$0000 + IL_00fe: brtrue.s IL_0111 + + .line 85,85 : 21,123 '' + IL_0100: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_IOErrorOccurred() + IL_0105: ldloc.0 + IL_0106: ldnull + IL_0107: ldnull + IL_0108: ldloc.s e + IL_010a: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_010f: stloc.s fEx + .line 86,86 : 17,42 '' + IL_0111: ldloc.s e + IL_0113: isinst Virtuoso.Miranda.Plugins.FusionException + IL_0118: ldnull + IL_0119: cgt.un + IL_011b: ldc.i4.0 + IL_011c: ceq + IL_011e: stloc.s CS$4$0000 + IL_0120: ldloc.s CS$4$0000 + IL_0122: brtrue.s IL_012f + + .line 87,87 : 21,46 '' + IL_0124: ldloc.s e + IL_0126: castclass Virtuoso.Miranda.Plugins.FusionException + IL_012b: stloc.s fEx + IL_012d: br.s IL_0142 + + .line 89,89 : 21,97 '' + IL_012f: ldloc.s e + IL_0131: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0136: ldloc.0 + IL_0137: ldloc.1 + IL_0138: ldnull + IL_0139: ldloc.s e + IL_013b: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_0140: stloc.s fEx + .line 91,91 : 17,113 '' + IL_0142: ldarg.0 + IL_0143: ldloc.s fEx + IL_0145: ldloc.2 + IL_0146: brtrue.s IL_014b + + IL_0148: ldnull + IL_0149: br.s IL_0151 + + IL_014b: ldloc.2 + IL_014c: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0151: nop + IL_0152: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0157: nop + .line 92,92 : 13,14 '' + IL_0158: nop + IL_0159: leave.s IL_015b + + } // end handler + IL_015b: nop + IL_015c: leave.s IL_018b + + .line 94,94 : 13,14 '' + } // end .try + finally + { + IL_015e: nop + .line 95,95 : 17,38 '' + IL_015f: ldarg.0 + IL_0160: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::DeclareInitialized() + IL_0165: nop + .line 96,96 : 17,60 '' + IL_0166: ldarg.0 + IL_0167: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_016c: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::RaiseFusionCompletedEvent(class [mscorlib]System.EventArgs) + IL_0171: nop + .line 98,98 : 17,66 '' + IL_0172: call void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::FlushCaches() + IL_0177: nop + .line 99,99 : 17,72 '' + IL_0178: ldc.i4.0 + IL_0179: ldstr "Hyphen::PluginManager" + IL_017e: ldstr "Fusion completed." + IL_0183: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0188: nop + .line 100,100 : 13,14 '' + IL_0189: nop + IL_018a: endfinally + } // end handler + IL_018b: nop + IL_018c: nop + .line 101,101 : 9,10 '' + IL_018d: ret + } // end of method DefaultPluginManager::FindAndLoadPlugins + + .method private hidebysig instance void + LoadAssembly(string path, + class [mscorlib]System.Reflection.Assembly& currentAssembly, + class [mscorlib]System.Type& currentType, + class Virtuoso.Miranda.Plugins.MirandaPlugin& currentPlugin) cil managed + { + // Code size 218 (0xda) + .maxstack 6 + .locals init ([0] class [mscorlib]System.Type 'type', + [1] class [mscorlib]System.BadImageFormatException bifE, + [2] class [mscorlib]System.IO.FileNotFoundException fnfE, + [3] class [mscorlib]System.Exception e, + [4] class [mscorlib]System.Type[] CS$6$0000, + [5] int32 CS$7$0001, + [6] class [mscorlib]System.Type CS$0$0002, + [7] bool CS$4$0003) + .line 104,104 : 9,10 '' + IL_0000: nop + .line 105,105 : 13,85 '' + IL_0001: ldc.i4.0 + IL_0002: ldstr "Hyphen::PluginManager" + IL_0007: ldstr "Loading assembly '" + IL_000c: ldarg.1 + IL_000d: ldstr "'..." + IL_0012: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_0017: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_001c: nop + .line 108,108 : 13,14 '' + .try + { + IL_001d: nop + .line 109,109 : 17,89 '' + IL_001e: ldarg.2 + IL_001f: ldarg.1 + IL_0020: call string [mscorlib]System.IO.Path::GetFileNameWithoutExtension(string) + IL_0025: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::Load(string) + IL_002a: stind.ref + .line 111,111 : 17,24 '' + IL_002b: nop + .line 111,111 : 39,73 '' + IL_002c: ldarg.2 + IL_002d: ldind.ref + IL_002e: call class [mscorlib]System.Type[] Virtuoso.Miranda.Plugins.PluginManagerBase::GetExposedPlugins(class [mscorlib]System.Reflection.Assembly) + IL_0033: stloc.s CS$6$0000 + IL_0035: ldc.i4.0 + IL_0036: stloc.s CS$7$0001 + IL_0038: br.s IL_0055 + + .line 111,111 : 26,35 '' + IL_003a: ldloc.s CS$6$0000 + IL_003c: ldloc.s CS$7$0001 + IL_003e: ldelem.ref + IL_003f: stloc.0 + .line 112,112 : 21,60 '' + IL_0040: ldarg.0 + IL_0041: ldarg.3 + IL_0042: ldloc.0 + IL_0043: dup + IL_0044: stloc.s CS$0$0002 + IL_0046: stind.ref + IL_0047: ldloc.s CS$0$0002 + IL_0049: call instance void Virtuoso.Miranda.Plugins.DefaultPluginManager::LoadPluginFromType(class [mscorlib]System.Type) + IL_004e: nop + IL_004f: ldloc.s CS$7$0001 + IL_0051: ldc.i4.1 + IL_0052: add + IL_0053: stloc.s CS$7$0001 + .line 111,111 : 36,38 '' + IL_0055: ldloc.s CS$7$0001 + IL_0057: ldloc.s CS$6$0000 + IL_0059: ldlen + IL_005a: conv.i4 + IL_005b: clt + IL_005d: stloc.s CS$4$0003 + IL_005f: ldloc.s CS$4$0003 + IL_0061: brtrue.s IL_003a + + .line 113,113 : 13,14 '' + IL_0063: nop + IL_0064: leave.s IL_00d8 + + .line 114,114 : 13,49 '' + } // end .try + catch [mscorlib]System.BadImageFormatException + { + IL_0066: stloc.1 + .line 115,115 : 13,14 '' + IL_0067: nop + .line 116,116 : 17,164 '' + IL_0068: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnmanagedImageFound() + IL_006d: ldarg.1 + IL_006e: call string [mscorlib]System.String::Format(string, + object) + IL_0073: ldloc.1 + IL_0074: callvirt instance string [mscorlib]System.BadImageFormatException::get_FusionLog() + IL_0079: ldnull + IL_007a: ldnull + IL_007b: ldnull + IL_007c: ldloc.1 + IL_007d: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_0082: throw + + .line 118,118 : 13,47 '' + } // end handler + catch [mscorlib]System.IO.FileNotFoundException + { + IL_0083: stloc.2 + .line 119,119 : 13,14 '' + IL_0084: nop + .line 120,120 : 17,235 '' + IL_0085: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_AssemblyLoadError() + IL_008a: ldarg.2 + IL_008b: ldind.ref + IL_008c: brtrue.s IL_0091 + + IL_008e: ldarg.1 + IL_008f: br.s IL_0098 + + IL_0091: ldarg.2 + IL_0092: ldind.ref + IL_0093: callvirt instance string [mscorlib]System.Object::ToString() + IL_0098: nop + IL_0099: call string [mscorlib]System.String::Format(string, + object) + IL_009e: ldloc.2 + IL_009f: callvirt instance string [mscorlib]System.IO.FileNotFoundException::get_FusionLog() + IL_00a4: ldarg.2 + IL_00a5: ldind.ref + IL_00a6: ldarg.3 + IL_00a7: ldind.ref + IL_00a8: ldnull + IL_00a9: ldloc.2 + IL_00aa: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_00af: throw + + .line 122,122 : 13,36 '' + } // end handler + catch Virtuoso.Miranda.Plugins.FusionException + { + IL_00b0: pop + .line 123,123 : 13,14 '' + IL_00b1: nop + .line 124,124 : 17,23 '' + IL_00b2: rethrow + .line 126,126 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_00b4: stloc.3 + .line 127,127 : 13,14 '' + IL_00b5: nop + .line 128,128 : 17,182 '' + IL_00b6: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_AssemblyLoadError() + IL_00bb: ldarg.1 + IL_00bc: ldloc.3 + IL_00bd: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_00c2: call string [mscorlib]System.String::Format(string, + object, + object) + IL_00c7: ldarg.2 + IL_00c8: ldind.ref + IL_00c9: callvirt instance string [mscorlib]System.Object::ToString() + IL_00ce: ldnull + IL_00cf: ldnull + IL_00d0: ldnull + IL_00d1: ldloc.3 + IL_00d2: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_00d7: throw + + } // end handler + IL_00d8: nop + .line 130,130 : 9,10 '' + IL_00d9: ret + } // end of method DefaultPluginManager::LoadAssembly + + .method private hidebysig instance void + LoadPluginFromType(class [mscorlib]System.Type 'type') cil managed + { + // Code size 277 (0x115) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin plugin, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + [2] class [mscorlib]System.MissingMethodException mmEx, + [3] class [mscorlib]System.Reflection.TargetInvocationException tiEx, + [4] class [mscorlib]System.MethodAccessException maEx, + [5] bool CS$4$0000) + .line 133,133 : 9,10 '' + IL_0000: nop + .line 134,134 : 13,30 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0000 + IL_000a: ldloc.s CS$4$0000 + IL_000c: brtrue.s IL_0019 + + .line 135,135 : 17,57 '' + IL_000e: ldstr "type" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 137,137 : 13,88 '' + IL_0019: ldc.i4.0 + IL_001a: ldstr "Hyphen::PluginManager" + IL_001f: ldstr "Loading plugin '" + IL_0024: ldarg.1 + IL_0025: callvirt instance string [mscorlib]System.Reflection.MemberInfo::get_Name() + IL_002a: ldstr "'..." + IL_002f: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_0034: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0039: nop + .line 140,140 : 13,14 '' + .try + { + IL_003a: nop + .line 141,141 : 17,71 '' + IL_003b: ldarg.1 + IL_003c: ldc.i4.0 + IL_003d: call class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginManagerBase::InstantiatePlugin(class [mscorlib]System.Type, + bool) + IL_0042: stloc.0 + .line 143,143 : 17,36 '' + IL_0043: ldloc.0 + IL_0044: ldnull + IL_0045: ceq + IL_0047: ldc.i4.0 + IL_0048: ceq + IL_004a: stloc.s CS$4$0000 + IL_004c: ldloc.s CS$4$0000 + IL_004e: brtrue.s IL_0055 + + .line 144,144 : 21,28 '' + IL_0050: leave IL_0113 + + .line 146,146 : 17,72 '' + IL_0055: ldarg.0 + IL_0056: ldloc.0 + IL_0057: call instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.PluginManagerBase::LoadPlugin(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_005c: stloc.1 + .line 149,149 : 17,39 '' + IL_005d: ldarg.0 + IL_005e: ldloc.0 + IL_005f: call instance bool Virtuoso.Miranda.Plugins.PluginManagerBase::IsEnabled(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0064: ldc.i4.0 + IL_0065: ceq + IL_0067: stloc.s CS$4$0000 + IL_0069: ldloc.s CS$4$0000 + IL_006b: brtrue.s IL_0076 + + .line 150,150 : 21,75 '' + IL_006d: ldarg.0 + IL_006e: ldloc.1 + IL_006f: ldc.i4.1 + IL_0070: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_0075: nop + .line 152,152 : 17,82 '' + IL_0076: ldc.i4.0 + IL_0077: ldstr "Hyphen::PluginManager" + IL_007c: ldstr "Plugin successfully loaded." + IL_0081: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0086: nop + .line 153,153 : 13,14 '' + IL_0087: nop + IL_0088: leave IL_0112 + + .line 154,154 : 13,48 '' + } // end .try + catch [mscorlib]System.MissingMethodException + { + IL_008d: stloc.2 + .line 155,155 : 13,14 '' + IL_008e: nop + .line 156,156 : 17,169 '' + IL_008f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_NoValidPluginCtorFound() + IL_0094: ldarg.1 + IL_0095: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_009a: call string [mscorlib]System.String::Format(string, + object) + IL_009f: ldarg.1 + IL_00a0: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_00a5: ldarg.1 + IL_00a6: ldnull + IL_00a7: ldloc.2 + IL_00a8: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_00ad: throw + + .line 158,158 : 13,51 '' + } // end handler + catch [mscorlib]System.Reflection.TargetInvocationException + { + IL_00ae: stloc.3 + .line 159,159 : 13,14 '' + IL_00af: nop + .line 160,162 : 17,69 '' + IL_00b0: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin() + IL_00b5: ldarg.1 + IL_00b6: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_00bb: ldloc.3 + IL_00bc: callvirt instance class [mscorlib]System.Exception [mscorlib]System.Exception::get_InnerException() + IL_00c1: brtrue.s IL_00ca + + IL_00c3: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Unknown() + IL_00c8: br.s IL_00d5 + + IL_00ca: ldloc.3 + IL_00cb: callvirt instance class [mscorlib]System.Exception [mscorlib]System.Exception::get_InnerException() + IL_00d0: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_00d5: nop + IL_00d6: call string [mscorlib]System.String::Format(string, + object, + object) + IL_00db: ldarg.1 + IL_00dc: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_00e1: ldarg.1 + IL_00e2: ldnull + IL_00e3: ldloc.3 + IL_00e4: callvirt instance class [mscorlib]System.Exception [mscorlib]System.Exception::get_InnerException() + IL_00e9: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_00ee: throw + + .line 164,164 : 13,47 '' + } // end handler + catch [mscorlib]System.MethodAccessException + { + IL_00ef: stloc.s maEx + .line 165,165 : 13,14 '' + IL_00f1: nop + .line 166,166 : 17,178 '' + IL_00f2: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin() + IL_00f7: ldarg.1 + IL_00f8: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_00fd: call string [mscorlib]System.String::Format(string, + object) + IL_0102: ldarg.1 + IL_0103: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0108: ldarg.1 + IL_0109: ldnull + IL_010a: ldloc.s maEx + IL_010c: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_0111: throw + + } // end handler + IL_0112: nop + IL_0113: nop + .line 168,168 : 9,10 '' + IL_0114: ret + } // end of method DefaultPluginManager::LoadPluginFromType + +} // end of class Virtuoso.Miranda.Plugins.DefaultPluginManager + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field public string Text + .field public uint32 Flags + .field public int32 Position + .field public native int Icon + .field public string Service + .field public string PopUpMenu + .field public int32 PopUpPosition + .field public uint32 HotKey + .field public string ContactOwner + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute attrib) cil managed + { + // Code size 183 (0xb7) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 52,52 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\CLISTMENUITEM.cs' + IL_0000: nop + .line 53,53 : 13,31 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 54,54 : 17,58 '' + IL_000c: ldstr "owner" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 56,56 : 13,32 '' + IL_0017: ldarg.2 + IL_0018: ldnull + IL_0019: ceq + IL_001b: ldc.i4.0 + IL_001c: ceq + IL_001e: stloc.0 + IL_001f: ldloc.0 + IL_0020: brtrue.s IL_002d + + .line 57,57 : 17,59 '' + IL_0022: ldstr "attrib" + IL_0027: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002c: throw + + .line 59,59 : 13,37 '' + IL_002d: ldarg.0 + IL_002e: ldarg.2 + IL_002f: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Text() + IL_0034: stfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Text + .line 60,60 : 13,43 '' + IL_0039: ldarg.0 + IL_003a: ldarg.2 + IL_003b: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Service() + IL_0040: stfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Service + .line 61,61 : 13,53 '' + IL_0045: ldarg.0 + IL_0046: ldarg.2 + IL_0047: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_OwningModule() + IL_004c: stfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::ContactOwner + .line 62,62 : 13,45 '' + IL_0051: ldarg.0 + IL_0052: ldarg.2 + IL_0053: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Flags() + IL_0058: stfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Flags + .line 63,63 : 13,47 '' + IL_005d: ldarg.0 + IL_005e: ldarg.2 + IL_005f: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_PopUpMenu() + IL_0064: stfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + .line 64,64 : 13,55 '' + IL_0069: ldarg.0 + IL_006a: ldarg.2 + IL_006b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_PopUpPosition() + IL_0070: stfld int32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpPosition + .line 65,65 : 13,45 '' + IL_0075: ldarg.0 + IL_0076: ldarg.2 + IL_0077: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Position() + IL_007c: stfld int32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Position + .line 66,66 : 13,47 '' + IL_0081: ldarg.0 + IL_0082: ldarg.2 + IL_0083: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_HotKey() + IL_0088: stfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::HotKey + .line 67,67 : 13,37 '' + IL_008d: ldarg.0 + IL_008e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0093: stfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + .line 68,68 : 13,63 '' + IL_0098: ldarg.0 + IL_0099: ldtoken Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_009e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_00a3: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_00a8: stfld int32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Size + .line 70,70 : 13,37 '' + IL_00ad: ldarg.0 + IL_00ae: ldarg.1 + IL_00af: ldarg.2 + IL_00b0: call instance void Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::LoadIcon(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_00b5: nop + .line 71,71 : 9,10 '' + IL_00b6: ret + } // end of method CLISTMENUITEM::.ctor + + .method private hidebysig instance void + LoadIcon(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute attrib) cil managed + { + // Code size 165 (0xa5) + .maxstack 3 + .locals init ([0] class [mscorlib]System.IO.Stream 'stream', + [1] bool CS$4$0000) + .line 78,78 : 9,10 '' + IL_0000: nop + .line 80,80 : 13,14 '' + .try + { + IL_0001: nop + .line 81,81 : 17,37 '' + IL_0002: ldarg.2 + IL_0003: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_HasIcon() + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0011 + + .line 82,82 : 21,28 '' + IL_000c: leave IL_00a3 + + .line 84,84 : 17,44 '' + IL_0011: ldarg.2 + IL_0012: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_UseEmbeddedIcon() + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: stloc.1 + IL_001b: ldloc.1 + IL_001c: brtrue.s IL_0079 + + .line 85,85 : 17,18 '' + IL_001e: nop + .line 86,86 : 28,109 '' + IL_001f: ldarg.1 + IL_0020: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0025: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_002a: ldarg.2 + IL_002b: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IconID() + IL_0030: callvirt instance class [mscorlib]System.IO.Stream [mscorlib]System.Reflection.Assembly::GetManifestResourceStream(string) + IL_0035: stloc.0 + .line 87,87 : 21,22 '' + .try + { + IL_0036: nop + .line 88,88 : 25,44 '' + IL_0037: ldloc.0 + IL_0038: ldnull + IL_0039: ceq + IL_003b: stloc.1 + IL_003c: ldloc.1 + IL_003d: brtrue.s IL_0057 + + .line 89,89 : 29,92 '' + IL_003f: ldarg.0 + IL_0040: call class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::get_Singleton() + IL_0045: ldloc.0 + IL_0046: callvirt instance class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Native.IconImageCache::GetStreamedIcon(class [mscorlib]System.IO.Stream) + IL_004b: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_0050: stfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + IL_0055: br.s IL_0062 + + .line 91,91 : 29,68 '' + IL_0057: ldstr "Embedded icon not found." + IL_005c: call void [System]System.Diagnostics.Debug::Fail(string) + IL_0061: nop + .line 92,92 : 21,22 '' + IL_0062: nop + IL_0063: leave.s IL_0075 + + } // end .try + finally + { + IL_0065: ldloc.0 + IL_0066: ldnull + IL_0067: ceq + IL_0069: stloc.1 + IL_006a: ldloc.1 + IL_006b: brtrue.s IL_0074 + + IL_006d: ldloc.0 + IL_006e: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0073: nop + IL_0074: endfinally + } // end handler + IL_0075: nop + .line 93,93 : 17,18 '' + IL_0076: nop + IL_0077: br.s IL_008f + + .line 95,95 : 21,68 '' + IL_0079: ldarg.0 + IL_007a: ldarg.2 + IL_007b: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IconID() + IL_0080: call int32 [mscorlib]System.Int32::Parse(string) + IL_0085: call native int Virtuoso.Miranda.Plugins.Infrastructure.Skin::LoadIcon(int32) + IL_008a: stfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + .line 96,96 : 13,14 '' + IL_008f: nop + IL_0090: leave.s IL_00a2 + + .line 97,97 : 13,18 '' + } // end .try + catch [mscorlib]System.Object + { + IL_0092: pop + .line 98,98 : 13,14 '' + IL_0093: nop + .line 99,99 : 17,41 '' + IL_0094: ldarg.0 + IL_0095: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_009a: stfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + .line 100,100 : 13,14 '' + IL_009f: nop + IL_00a0: leave.s IL_00a2 + + } // end handler + IL_00a2: nop + IL_00a3: nop + .line 101,101 : 9,10 '' + IL_00a4: ret + } // end of method CLISTMENUITEM::LoadIcon + +} // end of class Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Resources.TextResources + extends [mscorlib]System.Object +{ + .custom instance void [System]System.CodeDom.Compiler.GeneratedCodeAttribute::.ctor(string, + string) = ( 01 00 33 53 79 73 74 65 6D 2E 52 65 73 6F 75 72 // ..3System.Resour + 63 65 73 2E 54 6F 6F 6C 73 2E 53 74 72 6F 6E 67 // ces.Tools.Strong + 6C 79 54 79 70 65 64 52 65 73 6F 75 72 63 65 42 // lyTypedResourceB + 75 69 6C 64 65 72 07 34 2E 30 2E 30 2E 30 00 00 ) // uilder.4.0.0.0.. + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private static class [mscorlib]System.Resources.ResourceManager resourceMan + .field private static class [mscorlib]System.Globalization.CultureInfo resourceCulture + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 31,32 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Resources\\TextResources.Designer.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 32,32 : 34,35 '' + IL_0007: nop + .line 33,33 : 9,10 '' + IL_0008: nop + IL_0009: ret + } // end of method TextResources::.ctor + + .method assembly hidebysig specialname static + class [mscorlib]System.Resources.ResourceManager + get_ResourceManager() cil managed + { + // Code size 63 (0x3f) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Resources.ResourceManager temp, + [1] class [mscorlib]System.Resources.ResourceManager CS$1$0000, + [2] bool CS$4$0001) + .line 40,40 : 17,18 '' + IL_0000: nop + .line 41,41 : 17,63 '' + IL_0001: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::resourceMan + IL_0006: ldnull + IL_0007: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.2 + IL_0010: ldloc.2 + IL_0011: brtrue.s IL_0035 + + .line 41,41 : 64,65 '' + IL_0013: nop + .line 42,42 : 21,198 '' + IL_0014: ldstr "Virtuoso.Miranda.Plugins.Resources.TextResources" + IL_0019: ldtoken Virtuoso.Miranda.Plugins.Resources.TextResources + IL_001e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0023: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0028: newobj instance void [mscorlib]System.Resources.ResourceManager::.ctor(string, + class [mscorlib]System.Reflection.Assembly) + IL_002d: stloc.0 + .line 43,43 : 21,40 '' + IL_002e: ldloc.0 + IL_002f: stsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::resourceMan + .line 44,44 : 17,18 '' + IL_0034: nop + .line 45,45 : 17,36 '' + IL_0035: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::resourceMan + IL_003a: stloc.1 + IL_003b: br.s IL_003d + + .line 46,46 : 13,14 '' + IL_003d: ldloc.1 + IL_003e: ret + } // end of method TextResources::get_ResourceManager + + .method assembly hidebysig specialname static + class [mscorlib]System.Globalization.CultureInfo + get_Culture() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Globalization.CultureInfo CS$1$0000) + .line 55,55 : 17,18 '' + IL_0000: nop + .line 56,56 : 17,40 '' + IL_0001: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 57,57 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method TextResources::get_Culture + + .method assembly hidebysig specialname static + void set_Culture(class [mscorlib]System.Globalization.CultureInfo 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 58,58 : 17,18 '' + IL_0000: nop + .line 59,59 : 17,41 '' + IL_0001: ldarg.0 + IL_0002: stsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + .line 60,60 : 13,14 '' + IL_0007: ret + } // end of method TextResources::set_Culture + + .method assembly hidebysig specialname static + string get_Balloon_Text_FusionFinished() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 67,67 : 17,18 '' + IL_0000: nop + .line 68,68 : 17,98 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "Balloon_Text_FusionFinished" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 69,69 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_Balloon_Text_FusionFinished + + .method assembly hidebysig specialname static + string get_Config_General() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 76,76 : 17,18 '' + IL_0000: nop + .line 77,77 : 17,85 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "Config_General" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 78,78 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_Config_General + + .method assembly hidebysig specialname static + string get_Config_General_About() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 85,85 : 17,18 '' + IL_0000: nop + .line 86,86 : 17,91 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "Config_General_About" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 87,87 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_Config_General_About + + .method assembly hidebysig specialname static + string get_Config_General_About_Description() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 94,94 : 17,18 '' + IL_0000: nop + .line 95,95 : 17,103 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "Config_General_About_Description" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 96,96 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_Config_General_About_Description + + .method assembly hidebysig specialname static + string get_Config_General_Description() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 103,103 : 17,18 '' + IL_0000: nop + .line 104,104 : 17,97 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "Config_General_Description" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 105,105 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_Config_General_Description + + .method assembly hidebysig specialname static + string get_Config_Management() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 112,112 : 17,18 '' + IL_0000: nop + .line 113,113 : 17,88 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "Config_Management" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 114,114 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_Config_Management + + .method assembly hidebysig specialname static + string get_Config_Management_Description() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 121,121 : 17,18 '' + IL_0000: nop + .line 122,122 : 17,100 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "Config_Management_Description" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 123,123 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_Config_Management_Description + + .method assembly hidebysig specialname static + string get_Config_Management_Plugins() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 130,130 : 17,18 '' + IL_0000: nop + .line 131,131 : 17,96 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "Config_Management_Plugins" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 132,132 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_Config_Management_Plugins + + .method assembly hidebysig specialname static + string get_Config_Management_Plugins_Description() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 139,139 : 17,18 '' + IL_0000: nop + .line 140,140 : 17,108 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "Config_Management_Plugins_Description" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 141,141 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_Config_Management_Plugins_Description + + .method assembly hidebysig specialname static + string get_ExceptionMsg_CallInvalidForUnknownNetworkProtocol() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 148,148 : 17,18 '' + IL_0000: nop + .line 149,149 : 17,120 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_CallInvalidForUnknownNetworkProtocol" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 150,150 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_CallInvalidForUnknownNetworkProtocol + + .method assembly hidebysig specialname static + string get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 157,157 : 17,18 '' + IL_0000: nop + .line 158,158 : 17,124 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_CannotDetectMirandaDefaultStringEncod" + + "ing" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 159,159 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding + + .method assembly hidebysig specialname static + string get_ExceptionMsg_CannotFinishMarshaling() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 166,166 : 17,18 '' + IL_0000: nop + .line 167,167 : 17,106 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_CannotFinishMarshaling" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 168,168 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_CannotFinishMarshaling + + .method assembly hidebysig specialname static + string get_ExceptionMsg_CannotOpenHomePage() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 175,175 : 17,18 '' + IL_0000: nop + .line 176,176 : 17,102 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_CannotOpenHomePage" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 177,177 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_CannotOpenHomePage + + .method assembly hidebysig specialname static + string get_ExceptionMsg_CannotRegisterBuiltinProtocol() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 184,184 : 17,18 '' + IL_0000: nop + .line 185,185 : 17,113 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_CannotRegisterBuiltinProtocol" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 186,186 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_CannotRegisterBuiltinProtocol + + .method assembly hidebysig specialname static + string get_ExceptionMsg_ConfigurationFailed() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 193,193 : 17,18 '' + IL_0000: nop + .line 194,194 : 17,103 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_ConfigurationFailed" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 195,195 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_ConfigurationFailed + + .method assembly hidebysig specialname static + string get_ExceptionMsg_DuplicitLoaderOptions() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 202,202 : 17,18 '' + IL_0000: nop + .line 203,203 : 17,105 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_DuplicitLoaderOptions" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 204,204 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_DuplicitLoaderOptions + + .method assembly hidebysig specialname static + string get_ExceptionMsg_ErrorWhileCallingMirandaService() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 211,211 : 17,18 '' + IL_0000: nop + .line 212,212 : 17,115 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_ErrorWhileCallingMirandaService" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 213,213 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService + + .method assembly hidebysig specialname static + string get_ExceptionMsg_ErrorWhileLoadingPlugins() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 220,220 : 17,18 '' + IL_0000: nop + .line 221,221 : 17,108 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_ErrorWhileLoadingPlugins" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 222,222 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_ErrorWhileLoadingPlugins + + .method assembly hidebysig specialname static + string get_ExceptionMsg_FeatureNotAvailableInDomain() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 229,229 : 17,18 '' + IL_0000: nop + .line 230,230 : 17,111 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_FeatureNotAvailableInDomain" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 231,231 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_FeatureNotAvailableInDomain + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_AssemblyLoadError() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 238,238 : 17,18 '' + IL_0000: nop + .line 239,239 : 17,113 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_AssemblyLoadError" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 240,240 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_AssemblyLoadError + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_CannotLoadStringResolver() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 247,247 : 17,18 '' + IL_0000: nop + .line 248,248 : 17,120 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_CannotLoadStringResolver" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 249,249 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_CannotLoadStringResolver + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_EventHookingFailed() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 256,256 : 17,18 '' + IL_0000: nop + .line 257,257 : 17,114 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_EventHookingFailed" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 258,258 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_EventHookingFailed + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 265,265 : 17,18 '' + IL_0000: nop + .line 266,266 : 17,123 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 267,267 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_InvalidMethodSignature() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 274,274 : 17,18 '' + IL_0000: nop + .line 275,275 : 17,118 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_InvalidMethodSignature" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 276,276 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_InvalidMethodSignature + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_NoValidPluginCtorFound() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 283,283 : 17,18 '' + IL_0000: nop + .line 284,284 : 17,118 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_NoValidPluginCtorFound" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 285,285 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_NoValidPluginCtorFound + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 292,292 : 17,18 '' + IL_0000: nop + .line 293,293 : 17,124 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_ServiceFunctionAlreadyExi" + + "sts" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 294,294 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_ServiceFunctionCreationFailed() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 301,301 : 17,18 '' + IL_0000: nop + .line 302,302 : 17,125 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_ServiceFunctionCreationFa" + + "iled" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 303,303 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionCreationFailed + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_UnableToLoadMasterType() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 310,310 : 17,18 '' + IL_0000: nop + .line 311,311 : 17,118 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_UnableToLoadMasterType" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 312,312 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_UnableToLoadMasterType + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 319,319 : 17,18 '' + IL_0000: nop + .line 320,320 : 17,125 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_UnableToSetUpPluginDescri" + + "ptor" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 321,321 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 328,328 : 17,18 '' + IL_0000: nop + .line 329,329 : 17,127 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_UnauthorizedToInstantiate" + + "Plugin" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 330,330 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_UnmanagedImageFound() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 337,337 : 17,18 '' + IL_0000: nop + .line 338,338 : 17,115 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable1_UnmanagedImageFound" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 339,339 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_UnmanagedImageFound + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 346,346 : 17,18 '' + IL_0000: nop + .line 347,347 : 17,125 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable2_ErrorWhileInstantiatingPl" + + "ugin" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 348,348 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 355,355 : 17,18 '' + IL_0000: nop + .line 356,356 : 17,125 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable2_MirandaServiceReturnedFai" + + "lure" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 357,357 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 364,364 : 17,18 '' + IL_0000: nop + .line 365,365 : 17,122 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable2_RuntimeVersionNotAvailable" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 366,366 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable3_MenuItemServiceAlreadySet() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 373,373 : 17,18 '' + IL_0000: nop + .line 374,374 : 17,121 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_Formatable3_MenuItemServiceAlreadySet" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 375,375 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_Formatable3_MenuItemServiceAlreadySet + + .method assembly hidebysig specialname static + string get_ExceptionMsg_HookNotFound() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 382,382 : 17,18 '' + IL_0000: nop + .line 383,383 : 17,96 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_HookNotFound" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 384,384 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_HookNotFound + + .method assembly hidebysig specialname static + string get_ExceptionMsg_HyphenSxSNotSupported() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 391,391 : 17,18 '' + IL_0000: nop + .line 392,392 : 17,105 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_HyphenSxSNotSupported" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 393,393 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_HyphenSxSNotSupported + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InternalErrorOccurred() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 400,400 : 17,18 '' + IL_0000: nop + .line 401,401 : 17,105 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_InternalErrorOccurred" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 402,402 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_InternalErrorOccurred + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InteropBufferNotLocked() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 409,409 : 17,18 '' + IL_0000: nop + .line 410,410 : 17,106 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_InteropBufferNotLocked" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 411,411 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_InteropBufferNotLocked + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InteropBufferNotUnlocked() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 418,418 : 17,18 '' + IL_0000: nop + .line 419,419 : 17,108 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_InteropBufferNotUnlocked" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 420,420 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_InteropBufferNotUnlocked + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InvalidCrossThreadInteropBufferUnlock() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 427,427 : 17,18 '' + IL_0000: nop + .line 428,428 : 17,121 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_InvalidCrossThreadInteropBufferUnlock" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 429,429 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_InvalidCrossThreadInteropBufferUnlock + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InvalidFusionContext() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 436,436 : 17,18 '' + IL_0000: nop + .line 437,437 : 17,104 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_InvalidFusionContext" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 438,438 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_InvalidFusionContext + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InvalidHandle() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 445,445 : 17,18 '' + IL_0000: nop + .line 446,446 : 17,97 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_InvalidHandle" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 447,447 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_InvalidHandle + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InvalidValueToTranslate() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 454,454 : 17,18 '' + IL_0000: nop + .line 455,455 : 17,107 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_InvalidValueToTranslate" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 456,456 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_InvalidValueToTranslate + + .method assembly hidebysig specialname static + string get_ExceptionMsg_IOErrorOccurred() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 463,463 : 17,18 '' + IL_0000: nop + .line 464,464 : 17,99 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_IOErrorOccurred" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 465,465 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_IOErrorOccurred + + .method assembly hidebysig specialname static + string get_ExceptionMsg_MirandaContextNotAvailable() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 472,472 : 17,18 '' + IL_0000: nop + .line 473,473 : 17,110 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_MirandaContextNotAvailable" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 474,474 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_MirandaContextNotAvailable + + .method assembly hidebysig specialname static + string get_ExceptionMsg_MirandaRestartRequired() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 481,481 : 17,18 '' + IL_0000: nop + .line 482,482 : 17,106 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_MirandaRestartRequired" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 483,483 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_MirandaRestartRequired + + .method assembly hidebysig specialname static + string get_ExceptionMsg_OwnerUnknown() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 490,490 : 17,18 '' + IL_0000: nop + .line 491,491 : 17,96 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_OwnerUnknown" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 492,492 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_OwnerUnknown + + .method assembly hidebysig specialname static + string get_ExceptionMsg_PluginAlreadyInitialized() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 499,499 : 17,18 '' + IL_0000: nop + .line 500,500 : 17,108 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_PluginAlreadyInitialized" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 501,501 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_PluginAlreadyInitialized + + .method assembly hidebysig specialname static + string get_ExceptionMsg_PluginManagerAlreadyInitialized() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 508,508 : 17,18 '' + IL_0000: nop + .line 509,509 : 17,115 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_PluginManagerAlreadyInitialized" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 510,510 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_PluginManagerAlreadyInitialized + + .method assembly hidebysig specialname static + string get_ExceptionMsg_PluginNotInitialized() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 517,517 : 17,18 '' + IL_0000: nop + .line 518,518 : 17,104 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_PluginNotInitialized" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 519,519 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_PluginNotInitialized + + .method assembly hidebysig specialname static + string get_ExceptionMsg_SingletonNotInitializedYet() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 526,526 : 17,18 '' + IL_0000: nop + .line 527,527 : 17,110 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_SingletonNotInitializedYet" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 528,528 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_SingletonNotInitializedYet + + .method assembly hidebysig specialname static + string get_ExceptionMsg_UnableToLoadConfiguration_StorageError() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 535,535 : 17,18 '' + IL_0000: nop + .line 536,536 : 17,122 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_UnableToLoadConfiguration_StorageError" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 537,537 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_UnableToLoadConfiguration_StorageError + + .method assembly hidebysig specialname static + string get_ExceptionMsg_UnableToSaveConfiguration_StorageError() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 544,544 : 17,18 '' + IL_0000: nop + .line 545,545 : 17,122 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_UnableToSaveConfiguration_StorageError" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 546,546 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_UnableToSaveConfiguration_StorageError + + .method assembly hidebysig specialname static + string get_ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 553,553 : 17,18 '' + IL_0000: nop + .line 554,554 : 17,130 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "ExceptionMsg_UnableToUnloadPluginMangerFromCurrent" + + "AppDomain" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 555,555 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_HyphenCrashed() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 562,562 : 17,18 '' + IL_0000: nop + .line 563,563 : 17,99 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Caption_HyphenCrashed" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 564,564 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Caption_HyphenCrashed + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_HyphenLoadFailed() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 571,571 : 17,18 '' + IL_0000: nop + .line 572,572 : 17,102 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Caption_HyphenLoadFailed" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 573,573 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Caption_HyphenLoadFailed + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_LoadUnloadPlugins() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 580,580 : 17,18 '' + IL_0000: nop + .line 581,581 : 17,103 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Caption_LoadUnloadPlugins" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 582,582 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Caption_LoadUnloadPlugins + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_LoadUnloadPluginsFailure() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 589,589 : 17,18 '' + IL_0000: nop + .line 590,590 : 17,110 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Caption_LoadUnloadPluginsFailure" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 591,591 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Caption_LoadUnloadPluginsFailure + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_NoOptionsAvailable() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 598,598 : 17,18 '' + IL_0000: nop + .line 599,599 : 17,104 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Caption_NoOptionsAvailable" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 600,600 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Caption_NoOptionsAvailable + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_NoPluginsLoaded() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 607,607 : 17,18 '' + IL_0000: nop + .line 608,608 : 17,101 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Caption_NoPluginsLoaded" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 609,609 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Caption_NoPluginsLoaded + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_PluginReloadComplete() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 616,616 : 17,18 '' + IL_0000: nop + .line 617,617 : 17,106 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Caption_PluginReloadComplete" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 618,618 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Caption_PluginReloadComplete + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_RuntimeVersionNotAvailable() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 625,625 : 17,18 '' + IL_0000: nop + .line 626,626 : 17,112 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Caption_RuntimeVersionNotAvailable" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 627,627 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Caption_RuntimeVersionNotAvailable + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_Warning() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 634,634 : 17,18 '' + IL_0000: nop + .line 635,635 : 17,93 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Caption_Warning" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 636,636 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Caption_Warning + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable1_Caption_PluginError() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 643,643 : 17,18 '' + IL_0000: nop + .line 644,644 : 17,109 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Formatable1_Caption_PluginError" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 645,645 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Formatable1_Caption_PluginError + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable1_Caption_PluginUpdated() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 652,652 : 17,18 '' + IL_0000: nop + .line 653,653 : 17,111 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Formatable1_Caption_PluginUpdated" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 654,654 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Formatable1_Caption_PluginUpdated + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable1_Text_HyphenLoadFailed() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 661,661 : 17,18 '' + IL_0000: nop + .line 662,662 : 17,111 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Formatable1_Text_HyphenLoadFailed" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 663,663 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Formatable1_Text_HyphenLoadFailed + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable1_Text_LoadUnloadPluginsFailure() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 670,670 : 17,18 '' + IL_0000: nop + .line 671,671 : 17,119 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Formatable1_Text_LoadUnloadPluginsFailure" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 672,672 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Formatable1_Text_LoadUnloadPluginsFailure + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable1_Text_ModuleError() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 679,679 : 17,18 '' + IL_0000: nop + .line 680,680 : 17,106 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Formatable1_Text_ModuleError" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 681,681 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Formatable1_Text_ModuleError + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable2_Text_PluginError() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 688,688 : 17,18 '' + IL_0000: nop + .line 689,689 : 17,106 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Formatable2_Text_PluginError" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 690,690 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Formatable2_Text_PluginError + + .method assembly hidebysig specialname static + string get_MsgBox_Text_GenericPluginError() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 697,697 : 17,18 '' + IL_0000: nop + .line 698,698 : 17,101 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Text_GenericPluginError" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 699,699 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Text_GenericPluginError + + .method assembly hidebysig specialname static + string get_MsgBox_Text_HyphenCrashed() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 706,706 : 17,18 '' + IL_0000: nop + .line 707,707 : 17,96 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Text_HyphenCrashed" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 708,708 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Text_HyphenCrashed + + .method assembly hidebysig specialname static + string get_MsgBox_Text_LoadUnloadPlugins_Unload() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 715,715 : 17,18 '' + IL_0000: nop + .line 716,716 : 17,107 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Text_LoadUnloadPlugins_Unload" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 717,717 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Text_LoadUnloadPlugins_Unload + + .method assembly hidebysig specialname static + string get_MsgBox_Text_MirandaRestartRequired() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 724,724 : 17,18 '' + IL_0000: nop + .line 725,725 : 17,105 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Text_MirandaRestartRequired" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 726,726 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Text_MirandaRestartRequired + + .method assembly hidebysig specialname static + string get_MsgBox_Text_NoOptionsAvailable() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 733,733 : 17,18 '' + IL_0000: nop + .line 734,734 : 17,101 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Text_NoOptionsAvailable" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 735,735 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Text_NoOptionsAvailable + + .method assembly hidebysig specialname static + string get_MsgBox_Text_NoPluginsLoaded() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 742,742 : 17,18 '' + IL_0000: nop + .line 743,743 : 17,98 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Text_NoPluginsLoaded" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 744,744 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Text_NoPluginsLoaded + + .method assembly hidebysig specialname static + string get_MsgBox_Text_PluginReloadComplete() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 751,751 : 17,18 '' + IL_0000: nop + .line 752,752 : 17,103 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Text_PluginReloadComplete" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 753,753 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Text_PluginReloadComplete + + .method assembly hidebysig specialname static + string get_MsgBox_Text_PluginUpdated() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 760,760 : 17,18 '' + IL_0000: nop + .line 761,761 : 17,96 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Text_PluginUpdated" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 762,762 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Text_PluginUpdated + + .method assembly hidebysig specialname static + string get_MsgBox_Text_UnableToReportError() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 769,769 : 17,18 '' + IL_0000: nop + .line 770,770 : 17,102 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "MsgBox_Text_UnableToReportError" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 771,771 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_MsgBox_Text_UnableToReportError + + .method assembly hidebysig specialname static + string get_UI_Caption_Configure() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 778,778 : 17,18 '' + IL_0000: nop + .line 779,779 : 17,91 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Caption_Configure" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 780,780 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Caption_Configure + + .method assembly hidebysig specialname static + string get_UI_Caption_Error() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 787,787 : 17,18 '' + IL_0000: nop + .line 788,788 : 17,87 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Caption_Error" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 789,789 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Caption_Error + + .method assembly hidebysig specialname static + string get_UI_Formatable1_Text_PluginCrashed() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 796,796 : 17,18 '' + IL_0000: nop + .line 797,797 : 17,104 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Formatable1_Text_PluginCrashed" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 798,798 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Formatable1_Text_PluginCrashed + + .method assembly hidebysig specialname static + string get_UI_Label_Empty() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 805,805 : 17,18 '' + IL_0000: nop + .line 806,806 : 17,85 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Label_Empty" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 807,807 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Label_Empty + + .method assembly hidebysig specialname static + string get_UI_Label_SelectPluginToDisplayDescr() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 814,814 : 17,18 '' + IL_0000: nop + .line 815,815 : 17,106 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Label_SelectPluginToDisplayDescr" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 816,816 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Label_SelectPluginToDisplayDescr + + .method assembly hidebysig specialname static + string get_UI_Label_Unknown() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 823,823 : 17,18 '' + IL_0000: nop + .line 824,824 : 17,87 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Label_Unknown" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 825,825 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Label_Unknown + + .method assembly hidebysig specialname static + string get_UI_Text_ConfigureStandaloneModules() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 832,832 : 17,18 '' + IL_0000: nop + .line 833,833 : 17,105 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Text_ConfigureStandaloneModules" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 834,834 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Text_ConfigureStandaloneModules + + .method assembly hidebysig specialname static + string get_UI_Text_Hyphen() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 841,841 : 17,18 '' + IL_0000: nop + .line 842,842 : 17,85 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Text_Hyphen" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 843,843 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Text_Hyphen + + .method assembly hidebysig specialname static + string get_UI_Text_LoadUnloadPlugins() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 850,850 : 17,18 '' + IL_0000: nop + .line 851,851 : 17,96 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Text_LoadUnloadPlugins" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 852,852 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Text_LoadUnloadPlugins + + .method assembly hidebysig specialname static + string get_UI_Text_ManagePlugins() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 859,859 : 17,18 '' + IL_0000: nop + .line 860,860 : 17,92 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Text_ManagePlugins" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 861,861 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Text_ManagePlugins + + .method assembly hidebysig specialname static + string get_UI_Text_No() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 868,868 : 17,18 '' + IL_0000: nop + .line 869,869 : 17,81 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Text_No" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 870,870 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Text_No + + .method assembly hidebysig specialname static + string get_UI_Text_ShowManagedMainMenu() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 877,877 : 17,18 '' + IL_0000: nop + .line 878,878 : 17,98 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Text_ShowManagedMainMenu" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 879,879 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Text_ShowManagedMainMenu + + .method assembly hidebysig specialname static + string get_UI_Text_Yes() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 886,886 : 17,18 '' + IL_0000: nop + .line 887,887 : 17,82 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_Text_Yes" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 888,888 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_Text_Yes + + .method assembly hidebysig specialname static + string get_UI_ToolTip_HyphenTrayIcon() cil managed + { + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] string CS$1$0000) + .line 895,895 : 17,18 '' + IL_0000: nop + .line 896,896 : 17,96 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0006: ldstr "UI_ToolTip_HyphenTrayIcon" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0010: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 897,897 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method TextResources::get_UI_ToolTip_HyphenTrayIcon + + .property class [mscorlib]System.Resources.ResourceManager + ResourceManager() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .get class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + } // end of property TextResources::ResourceManager + .property class [mscorlib]System.Globalization.CultureInfo + Culture() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .set void Virtuoso.Miranda.Plugins.Resources.TextResources::set_Culture(class [mscorlib]System.Globalization.CultureInfo) + .get class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::get_Culture() + } // end of property TextResources::Culture + .property string Balloon_Text_FusionFinished() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Balloon_Text_FusionFinished() + } // end of property TextResources::Balloon_Text_FusionFinished + .property string Config_General() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General() + } // end of property TextResources::Config_General + .property string Config_General_About() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_About() + } // end of property TextResources::Config_General_About + .property string Config_General_About_Description() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_About_Description() + } // end of property TextResources::Config_General_About_Description + .property string Config_General_Description() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_Description() + } // end of property TextResources::Config_General_Description + .property string Config_Management() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management() + } // end of property TextResources::Config_Management + .property string Config_Management_Description() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Description() + } // end of property TextResources::Config_Management_Description + .property string Config_Management_Plugins() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins() + } // end of property TextResources::Config_Management_Plugins + .property string Config_Management_Plugins_Description() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins_Description() + } // end of property TextResources::Config_Management_Plugins_Description + .property string ExceptionMsg_CallInvalidForUnknownNetworkProtocol() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CallInvalidForUnknownNetworkProtocol() + } // end of property TextResources::ExceptionMsg_CallInvalidForUnknownNetworkProtocol + .property string ExceptionMsg_CannotDetectMirandaDefaultStringEncoding() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding() + } // end of property TextResources::ExceptionMsg_CannotDetectMirandaDefaultStringEncoding + .property string ExceptionMsg_CannotFinishMarshaling() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotFinishMarshaling() + } // end of property TextResources::ExceptionMsg_CannotFinishMarshaling + .property string ExceptionMsg_CannotOpenHomePage() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotOpenHomePage() + } // end of property TextResources::ExceptionMsg_CannotOpenHomePage + .property string ExceptionMsg_CannotRegisterBuiltinProtocol() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotRegisterBuiltinProtocol() + } // end of property TextResources::ExceptionMsg_CannotRegisterBuiltinProtocol + .property string ExceptionMsg_ConfigurationFailed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ConfigurationFailed() + } // end of property TextResources::ExceptionMsg_ConfigurationFailed + .property string ExceptionMsg_DuplicitLoaderOptions() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_DuplicitLoaderOptions() + } // end of property TextResources::ExceptionMsg_DuplicitLoaderOptions + .property string ExceptionMsg_ErrorWhileCallingMirandaService() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + } // end of property TextResources::ExceptionMsg_ErrorWhileCallingMirandaService + .property string ExceptionMsg_ErrorWhileLoadingPlugins() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileLoadingPlugins() + } // end of property TextResources::ExceptionMsg_ErrorWhileLoadingPlugins + .property string ExceptionMsg_FeatureNotAvailableInDomain() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_FeatureNotAvailableInDomain() + } // end of property TextResources::ExceptionMsg_FeatureNotAvailableInDomain + .property string ExceptionMsg_Formatable1_AssemblyLoadError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_AssemblyLoadError() + } // end of property TextResources::ExceptionMsg_Formatable1_AssemblyLoadError + .property string ExceptionMsg_Formatable1_CannotLoadStringResolver() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_CannotLoadStringResolver() + } // end of property TextResources::ExceptionMsg_Formatable1_CannotLoadStringResolver + .property string ExceptionMsg_Formatable1_EventHookingFailed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_EventHookingFailed() + } // end of property TextResources::ExceptionMsg_Formatable1_EventHookingFailed + .property string ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden() + } // end of property TextResources::ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden + .property string ExceptionMsg_Formatable1_InvalidMethodSignature() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_InvalidMethodSignature() + } // end of property TextResources::ExceptionMsg_Formatable1_InvalidMethodSignature + .property string ExceptionMsg_Formatable1_NoValidPluginCtorFound() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_NoValidPluginCtorFound() + } // end of property TextResources::ExceptionMsg_Formatable1_NoValidPluginCtorFound + .property string ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists() + } // end of property TextResources::ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists + .property string ExceptionMsg_Formatable1_ServiceFunctionCreationFailed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionCreationFailed() + } // end of property TextResources::ExceptionMsg_Formatable1_ServiceFunctionCreationFailed + .property string ExceptionMsg_Formatable1_UnableToLoadMasterType() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnableToLoadMasterType() + } // end of property TextResources::ExceptionMsg_Formatable1_UnableToLoadMasterType + .property string ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor() + } // end of property TextResources::ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor + .property string ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin() + } // end of property TextResources::ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin + .property string ExceptionMsg_Formatable1_UnmanagedImageFound() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnmanagedImageFound() + } // end of property TextResources::ExceptionMsg_Formatable1_UnmanagedImageFound + .property string ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin() + } // end of property TextResources::ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin + .property string ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + } // end of property TextResources::ExceptionMsg_Formatable2_MirandaServiceReturnedFailure + .property string ExceptionMsg_Formatable2_RuntimeVersionNotAvailable() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable() + } // end of property TextResources::ExceptionMsg_Formatable2_RuntimeVersionNotAvailable + .property string ExceptionMsg_Formatable3_MenuItemServiceAlreadySet() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable3_MenuItemServiceAlreadySet() + } // end of property TextResources::ExceptionMsg_Formatable3_MenuItemServiceAlreadySet + .property string ExceptionMsg_HookNotFound() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_HookNotFound() + } // end of property TextResources::ExceptionMsg_HookNotFound + .property string ExceptionMsg_HyphenSxSNotSupported() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_HyphenSxSNotSupported() + } // end of property TextResources::ExceptionMsg_HyphenSxSNotSupported + .property string ExceptionMsg_InternalErrorOccurred() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InternalErrorOccurred() + } // end of property TextResources::ExceptionMsg_InternalErrorOccurred + .property string ExceptionMsg_InteropBufferNotLocked() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InteropBufferNotLocked() + } // end of property TextResources::ExceptionMsg_InteropBufferNotLocked + .property string ExceptionMsg_InteropBufferNotUnlocked() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InteropBufferNotUnlocked() + } // end of property TextResources::ExceptionMsg_InteropBufferNotUnlocked + .property string ExceptionMsg_InvalidCrossThreadInteropBufferUnlock() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidCrossThreadInteropBufferUnlock() + } // end of property TextResources::ExceptionMsg_InvalidCrossThreadInteropBufferUnlock + .property string ExceptionMsg_InvalidFusionContext() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidFusionContext() + } // end of property TextResources::ExceptionMsg_InvalidFusionContext + .property string ExceptionMsg_InvalidHandle() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidHandle() + } // end of property TextResources::ExceptionMsg_InvalidHandle + .property string ExceptionMsg_InvalidValueToTranslate() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidValueToTranslate() + } // end of property TextResources::ExceptionMsg_InvalidValueToTranslate + .property string ExceptionMsg_IOErrorOccurred() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_IOErrorOccurred() + } // end of property TextResources::ExceptionMsg_IOErrorOccurred + .property string ExceptionMsg_MirandaContextNotAvailable() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaContextNotAvailable() + } // end of property TextResources::ExceptionMsg_MirandaContextNotAvailable + .property string ExceptionMsg_MirandaRestartRequired() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaRestartRequired() + } // end of property TextResources::ExceptionMsg_MirandaRestartRequired + .property string ExceptionMsg_OwnerUnknown() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_OwnerUnknown() + } // end of property TextResources::ExceptionMsg_OwnerUnknown + .property string ExceptionMsg_PluginAlreadyInitialized() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginAlreadyInitialized() + } // end of property TextResources::ExceptionMsg_PluginAlreadyInitialized + .property string ExceptionMsg_PluginManagerAlreadyInitialized() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginManagerAlreadyInitialized() + } // end of property TextResources::ExceptionMsg_PluginManagerAlreadyInitialized + .property string ExceptionMsg_PluginNotInitialized() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + } // end of property TextResources::ExceptionMsg_PluginNotInitialized + .property string ExceptionMsg_SingletonNotInitializedYet() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_SingletonNotInitializedYet() + } // end of property TextResources::ExceptionMsg_SingletonNotInitializedYet + .property string ExceptionMsg_UnableToLoadConfiguration_StorageError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToLoadConfiguration_StorageError() + } // end of property TextResources::ExceptionMsg_UnableToLoadConfiguration_StorageError + .property string ExceptionMsg_UnableToSaveConfiguration_StorageError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToSaveConfiguration_StorageError() + } // end of property TextResources::ExceptionMsg_UnableToSaveConfiguration_StorageError + .property string ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain() + } // end of property TextResources::ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain + .property string MsgBox_Caption_HyphenCrashed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_HyphenCrashed() + } // end of property TextResources::MsgBox_Caption_HyphenCrashed + .property string MsgBox_Caption_HyphenLoadFailed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_HyphenLoadFailed() + } // end of property TextResources::MsgBox_Caption_HyphenLoadFailed + .property string MsgBox_Caption_LoadUnloadPlugins() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_LoadUnloadPlugins() + } // end of property TextResources::MsgBox_Caption_LoadUnloadPlugins + .property string MsgBox_Caption_LoadUnloadPluginsFailure() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_LoadUnloadPluginsFailure() + } // end of property TextResources::MsgBox_Caption_LoadUnloadPluginsFailure + .property string MsgBox_Caption_NoOptionsAvailable() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_NoOptionsAvailable() + } // end of property TextResources::MsgBox_Caption_NoOptionsAvailable + .property string MsgBox_Caption_NoPluginsLoaded() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_NoPluginsLoaded() + } // end of property TextResources::MsgBox_Caption_NoPluginsLoaded + .property string MsgBox_Caption_PluginReloadComplete() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_PluginReloadComplete() + } // end of property TextResources::MsgBox_Caption_PluginReloadComplete + .property string MsgBox_Caption_RuntimeVersionNotAvailable() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_RuntimeVersionNotAvailable() + } // end of property TextResources::MsgBox_Caption_RuntimeVersionNotAvailable + .property string MsgBox_Caption_Warning() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_Warning() + } // end of property TextResources::MsgBox_Caption_Warning + .property string MsgBox_Formatable1_Caption_PluginError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Caption_PluginError() + } // end of property TextResources::MsgBox_Formatable1_Caption_PluginError + .property string MsgBox_Formatable1_Caption_PluginUpdated() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Caption_PluginUpdated() + } // end of property TextResources::MsgBox_Formatable1_Caption_PluginUpdated + .property string MsgBox_Formatable1_Text_HyphenLoadFailed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_HyphenLoadFailed() + } // end of property TextResources::MsgBox_Formatable1_Text_HyphenLoadFailed + .property string MsgBox_Formatable1_Text_LoadUnloadPluginsFailure() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_LoadUnloadPluginsFailure() + } // end of property TextResources::MsgBox_Formatable1_Text_LoadUnloadPluginsFailure + .property string MsgBox_Formatable1_Text_ModuleError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_ModuleError() + } // end of property TextResources::MsgBox_Formatable1_Text_ModuleError + .property string MsgBox_Formatable2_Text_PluginError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable2_Text_PluginError() + } // end of property TextResources::MsgBox_Formatable2_Text_PluginError + .property string MsgBox_Text_GenericPluginError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_GenericPluginError() + } // end of property TextResources::MsgBox_Text_GenericPluginError + .property string MsgBox_Text_HyphenCrashed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_HyphenCrashed() + } // end of property TextResources::MsgBox_Text_HyphenCrashed + .property string MsgBox_Text_LoadUnloadPlugins_Unload() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_LoadUnloadPlugins_Unload() + } // end of property TextResources::MsgBox_Text_LoadUnloadPlugins_Unload + .property string MsgBox_Text_MirandaRestartRequired() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_MirandaRestartRequired() + } // end of property TextResources::MsgBox_Text_MirandaRestartRequired + .property string MsgBox_Text_NoOptionsAvailable() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_NoOptionsAvailable() + } // end of property TextResources::MsgBox_Text_NoOptionsAvailable + .property string MsgBox_Text_NoPluginsLoaded() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_NoPluginsLoaded() + } // end of property TextResources::MsgBox_Text_NoPluginsLoaded + .property string MsgBox_Text_PluginReloadComplete() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_PluginReloadComplete() + } // end of property TextResources::MsgBox_Text_PluginReloadComplete + .property string MsgBox_Text_PluginUpdated() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_PluginUpdated() + } // end of property TextResources::MsgBox_Text_PluginUpdated + .property string MsgBox_Text_UnableToReportError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_UnableToReportError() + } // end of property TextResources::MsgBox_Text_UnableToReportError + .property string UI_Caption_Configure() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Caption_Configure() + } // end of property TextResources::UI_Caption_Configure + .property string UI_Caption_Error() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Caption_Error() + } // end of property TextResources::UI_Caption_Error + .property string UI_Formatable1_Text_PluginCrashed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Formatable1_Text_PluginCrashed() + } // end of property TextResources::UI_Formatable1_Text_PluginCrashed + .property string UI_Label_Empty() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Empty() + } // end of property TextResources::UI_Label_Empty + .property string UI_Label_SelectPluginToDisplayDescr() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_SelectPluginToDisplayDescr() + } // end of property TextResources::UI_Label_SelectPluginToDisplayDescr + .property string UI_Label_Unknown() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Unknown() + } // end of property TextResources::UI_Label_Unknown + .property string UI_Text_ConfigureStandaloneModules() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ConfigureStandaloneModules() + } // end of property TextResources::UI_Text_ConfigureStandaloneModules + .property string UI_Text_Hyphen() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Hyphen() + } // end of property TextResources::UI_Text_Hyphen + .property string UI_Text_LoadUnloadPlugins() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_LoadUnloadPlugins() + } // end of property TextResources::UI_Text_LoadUnloadPlugins + .property string UI_Text_ManagePlugins() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ManagePlugins() + } // end of property TextResources::UI_Text_ManagePlugins + .property string UI_Text_No() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_No() + } // end of property TextResources::UI_Text_No + .property string UI_Text_ShowManagedMainMenu() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ShowManagedMainMenu() + } // end of property TextResources::UI_Text_ShowManagedMainMenu + .property string UI_Text_Yes() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Yes() + } // end of property TextResources::UI_Text_Yes + .property string UI_ToolTip_HyphenTrayIcon() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_ToolTip_HyphenTrayIcon() + } // end of property TextResources::UI_ToolTip_HyphenTrayIcon +} // end of class Virtuoso.Miranda.Plugins.Resources.TextResources + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Resources.VisualResources + extends [mscorlib]System.Object +{ + .custom instance void [System]System.CodeDom.Compiler.GeneratedCodeAttribute::.ctor(string, + string) = ( 01 00 33 53 79 73 74 65 6D 2E 52 65 73 6F 75 72 // ..3System.Resour + 63 65 73 2E 54 6F 6F 6C 73 2E 53 74 72 6F 6E 67 // ces.Tools.Strong + 6C 79 54 79 70 65 64 52 65 73 6F 75 72 63 65 42 // lyTypedResourceB + 75 69 6C 64 65 72 07 34 2E 30 2E 30 2E 30 00 00 ) // uilder.4.0.0.0.. + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private static class [mscorlib]System.Resources.ResourceManager resourceMan + .field private static class [mscorlib]System.Globalization.CultureInfo resourceCulture + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 31,32 : 9,35 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Resources\\VisualResources.Designer.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 32,32 : 36,37 '' + IL_0007: nop + .line 33,33 : 9,10 '' + IL_0008: nop + IL_0009: ret + } // end of method VisualResources::.ctor + + .method assembly hidebysig specialname static + class [mscorlib]System.Resources.ResourceManager + get_ResourceManager() cil managed + { + // Code size 63 (0x3f) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Resources.ResourceManager temp, + [1] class [mscorlib]System.Resources.ResourceManager CS$1$0000, + [2] bool CS$4$0001) + .line 40,40 : 17,18 '' + IL_0000: nop + .line 41,41 : 17,63 '' + IL_0001: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceMan + IL_0006: ldnull + IL_0007: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.2 + IL_0010: ldloc.2 + IL_0011: brtrue.s IL_0035 + + .line 41,41 : 64,65 '' + IL_0013: nop + .line 42,42 : 21,202 '' + IL_0014: ldstr "Virtuoso.Miranda.Plugins.Resources.VisualResources" + IL_0019: ldtoken Virtuoso.Miranda.Plugins.Resources.VisualResources + IL_001e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0023: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0028: newobj instance void [mscorlib]System.Resources.ResourceManager::.ctor(string, + class [mscorlib]System.Reflection.Assembly) + IL_002d: stloc.0 + .line 43,43 : 21,40 '' + IL_002e: ldloc.0 + IL_002f: stsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceMan + .line 44,44 : 17,18 '' + IL_0034: nop + .line 45,45 : 17,36 '' + IL_0035: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceMan + IL_003a: stloc.1 + IL_003b: br.s IL_003d + + .line 46,46 : 13,14 '' + IL_003d: ldloc.1 + IL_003e: ret + } // end of method VisualResources::get_ResourceManager + + .method assembly hidebysig specialname static + class [mscorlib]System.Globalization.CultureInfo + get_Culture() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Globalization.CultureInfo CS$1$0000) + .line 55,55 : 17,18 '' + IL_0000: nop + .line 56,56 : 17,40 '' + IL_0001: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 57,57 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method VisualResources::get_Culture + + .method assembly hidebysig specialname static + void set_Culture(class [mscorlib]System.Globalization.CultureInfo 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 58,58 : 17,18 '' + IL_0000: nop + .line 59,59 : 17,41 '' + IL_0001: ldarg.0 + IL_0002: stsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + .line 60,60 : 13,14 '' + IL_0007: ret + } // end of method VisualResources::set_Culture + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Icon + get_Engine() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Icon CS$1$0000) + .line 67,67 : 17,18 '' + IL_0000: nop + .line 68,68 : 17,83 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0006: ldstr "Engine" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 69,69 : 17,53 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Icon + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 70,70 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method VisualResources::get_Engine + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Icon + get_Icon_16x16_Configuration() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Icon CS$1$0000) + .line 77,77 : 17,18 '' + IL_0000: nop + .line 78,78 : 17,101 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0006: ldstr "Icon_16x16_Configuration" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 79,79 : 17,53 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Icon + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 80,80 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method VisualResources::get_Icon_16x16_Configuration + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Icon + get_Icon_16x16_Hyphen() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Icon CS$1$0000) + .line 87,87 : 17,18 '' + IL_0000: nop + .line 88,88 : 17,94 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0006: ldstr "Icon_16x16_Hyphen" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 89,89 : 17,53 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Icon + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 90,90 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method VisualResources::get_Icon_16x16_Hyphen + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Icon + get_Icon_32x32_Configuration() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Icon CS$1$0000) + .line 97,97 : 17,18 '' + IL_0000: nop + .line 98,98 : 17,101 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0006: ldstr "Icon_32x32_Configuration" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 99,99 : 17,53 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Icon + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 100,100 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method VisualResources::get_Icon_32x32_Configuration + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Icon + get_Icon_32x32_ConfigurationWarning() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Icon CS$1$0000) + .line 107,107 : 17,18 '' + IL_0000: nop + .line 108,108 : 17,108 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0006: ldstr "Icon_32x32_ConfigurationWarning" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 109,109 : 17,53 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Icon + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 110,110 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method VisualResources::get_Icon_32x32_ConfigurationWarning + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Image_48x48_Warning() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Bitmap CS$1$0000) + .line 117,117 : 17,18 '' + IL_0000: nop + .line 118,118 : 17,96 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0006: ldstr "Image_48x48_Warning" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 119,119 : 17,55 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Bitmap + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 120,120 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method VisualResources::get_Image_48x48_Warning + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Image_64x67_Configuration() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Bitmap CS$1$0000) + .line 127,127 : 17,18 '' + IL_0000: nop + .line 128,128 : 17,102 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0006: ldstr "Image_64x67_Configuration" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 129,129 : 17,55 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Bitmap + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 130,130 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method VisualResources::get_Image_64x67_Configuration + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Image_64x67_Information() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Bitmap CS$1$0000) + .line 137,137 : 17,18 '' + IL_0000: nop + .line 138,138 : 17,100 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0006: ldstr "Image_64x67_Information" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 139,139 : 17,55 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Bitmap + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 140,140 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method VisualResources::get_Image_64x67_Information + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Image_64x67_Management() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Bitmap CS$1$0000) + .line 147,147 : 17,18 '' + IL_0000: nop + .line 148,148 : 17,99 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0006: ldstr "Image_64x67_Management" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 149,149 : 17,55 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Bitmap + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 150,150 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method VisualResources::get_Image_64x67_Management + + .property class [mscorlib]System.Resources.ResourceManager + ResourceManager() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .get class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + } // end of property VisualResources::ResourceManager + .property class [mscorlib]System.Globalization.CultureInfo + Culture() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .set void Virtuoso.Miranda.Plugins.Resources.VisualResources::set_Culture(class [mscorlib]System.Globalization.CultureInfo) + .get class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Culture() + } // end of property VisualResources::Culture + .property class [System.Drawing]System.Drawing.Icon + Engine() + { + .get class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Engine() + } // end of property VisualResources::Engine + .property class [System.Drawing]System.Drawing.Icon + Icon_16x16_Configuration() + { + .get class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_16x16_Configuration() + } // end of property VisualResources::Icon_16x16_Configuration + .property class [System.Drawing]System.Drawing.Icon + Icon_16x16_Hyphen() + { + .get class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_16x16_Hyphen() + } // end of property VisualResources::Icon_16x16_Hyphen + .property class [System.Drawing]System.Drawing.Icon + Icon_32x32_Configuration() + { + .get class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_32x32_Configuration() + } // end of property VisualResources::Icon_32x32_Configuration + .property class [System.Drawing]System.Drawing.Icon + Icon_32x32_ConfigurationWarning() + { + .get class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_32x32_ConfigurationWarning() + } // end of property VisualResources::Icon_32x32_ConfigurationWarning + .property class [System.Drawing]System.Drawing.Bitmap + Image_48x48_Warning() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_48x48_Warning() + } // end of property VisualResources::Image_48x48_Warning + .property class [System.Drawing]System.Drawing.Bitmap + Image_64x67_Configuration() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Configuration() + } // end of property VisualResources::Image_64x67_Configuration + .property class [System.Drawing]System.Drawing.Bitmap + Image_64x67_Information() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Information() + } // end of property VisualResources::Image_64x67_Information + .property class [System.Drawing]System.Drawing.Bitmap + Image_64x67_Management() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Management() + } // end of property VisualResources::Image_64x67_Management +} // end of class Virtuoso.Miranda.Plugins.Resources.VisualResources + +.class private abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.SynchronizationHelper + extends [mscorlib]System.Object +{ + .method private hidebysig static void VerifyNotNull(object obj) cil managed + { + // Code size 19 (0x13) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 34,34 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\SynchronizationHelper.cs' + IL_0000: nop + .line 35,35 : 13,29 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0012 + + .line 36,36 : 17,51 '' + IL_000c: newobj instance void [mscorlib]System.ArgumentNullException::.ctor() + IL_0011: throw + + .line 37,37 : 9,10 '' + IL_0012: ret + } // end of method SynchronizationHelper::VerifyNotNull + + .method public hidebysig static void EndUpdate(object obj) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 44,44 : 9,10 '' + IL_0000: nop + .line 45,45 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + IL_0007: nop + .line 46,46 : 13,31 '' + IL_0008: ldarg.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_000e: nop + .line 47,47 : 9,10 '' + IL_000f: ret + } // end of method SynchronizationHelper::EndUpdate + + .method public hidebysig static void BeginPluginUpdate(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 50,50 : 9,10 '' + IL_0000: nop + .line 51,51 : 13,35 '' + IL_0001: ldarg.0 + IL_0002: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + IL_0007: nop + .line 52,52 : 13,35 '' + IL_0008: ldarg.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 53,53 : 9,10 '' + IL_000f: ret + } // end of method SynchronizationHelper::BeginPluginUpdate + + .method public hidebysig static void BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor descriptor) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 56,56 : 9,10 '' + IL_0000: nop + .line 57,57 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + IL_0007: nop + .line 58,58 : 13,39 '' + IL_0008: ldarg.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 59,59 : 9,10 '' + IL_000f: ret + } // end of method SynchronizationHelper::BeginDescriptorUpdate + + .method public hidebysig static void BeginMenuItemUpdate(class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 62,62 : 9,10 '' + IL_0000: nop + .line 63,63 : 13,33 '' + IL_0001: ldarg.0 + IL_0002: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + IL_0007: nop + .line 64,64 : 13,33 '' + IL_0008: ldarg.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 65,65 : 9,10 '' + IL_000f: ret + } // end of method SynchronizationHelper::BeginMenuItemUpdate + + .method public hidebysig static void BeginCollectionUpdate(class [mscorlib]System.Collections.IList collection) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 68,68 : 9,10 '' + IL_0000: nop + .line 69,69 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + IL_0007: nop + .line 70,70 : 13,39 '' + IL_0008: ldarg.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 71,71 : 9,10 '' + IL_000f: ret + } // end of method SynchronizationHelper::BeginCollectionUpdate + + .method public hidebysig static void BeginCollectionUpdate(class [mscorlib]System.Collections.IDictionary dictionary) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 74,74 : 9,10 '' + IL_0000: nop + .line 75,75 : 13,39 '' + IL_0001: ldarg.0 + IL_0002: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + IL_0007: nop + .line 76,76 : 13,39 '' + IL_0008: ldarg.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 77,77 : 9,10 '' + IL_000f: ret + } // end of method SynchronizationHelper::BeginCollectionUpdate + + .method public hidebysig static void BeginHandleUpdate(class Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject handle) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 80,80 : 9,10 '' + IL_0000: nop + .line 81,81 : 13,35 '' + IL_0001: ldarg.0 + IL_0002: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + IL_0007: nop + .line 82,82 : 13,35 '' + IL_0008: ldarg.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 83,83 : 9,10 '' + IL_000f: ret + } // end of method SynchronizationHelper::BeginHandleUpdate + +} // end of class Virtuoso.Miranda.Plugins.SynchronizationHelper + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.ControlCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 29,29 : 9,47 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\ControlCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0007: nop + .line 29,29 : 48,49 '' + IL_0008: nop + .line 29,29 : 50,51 '' + IL_0009: nop + IL_000a: ret + } // end of method ControlCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.ControlCollection + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.ModuleCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 29,29 : 9,46 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\ModuleCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0007: nop + .line 29,29 : 47,48 '' + IL_0008: nop + .line 29,29 : 49,50 '' + IL_0009: nop + IL_000a: ret + } // end of method ModuleCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.ModuleCollection + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection + extends class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Collections.ModuleCollection list) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 31,31 : 9,78 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\ModuleReadOnlyCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::.ctor(class [mscorlib]System.Collections.Generic.IList`1) + IL_0007: nop + .line 31,31 : 79,80 '' + IL_0008: nop + .line 31,31 : 81,82 '' + IL_0009: nop + IL_000a: ret + } // end of method ModuleReadOnlyCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 27,27 : 9,62 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\CustomApiExportDescriptorCollection.cs' + IL_0000: ldarg.0 + IL_0001: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor() + IL_0006: nop + .line 27,27 : 63,64 '' + IL_0007: nop + .line 27,27 : 65,66 '' + IL_0008: nop + IL_0009: ret + } // end of method CustomApiExportDescriptorCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Collections.ConfigurationValues + extends class [mscorlib]System.Collections.Generic.Dictionary`2 +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 28,28 : 9,47 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\ConfigurationValues.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0007: nop + .line 28,28 : 48,49 '' + IL_0008: nop + .line 28,28 : 50,51 '' + IL_0009: nop + IL_000a: ret + } // end of method ConfigurationValues::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 29,29 : 9,110 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext) + IL_0008: nop + .line 29,29 : 111,112 '' + IL_0009: nop + .line 29,29 : 113,114 '' + IL_000a: nop + IL_000b: ret + } // end of method ConfigurationValues::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ + .method public hidebysig newslot specialname abstract virtual + instance string get_Name() cil managed + { + } // end of method IConfigurablePlugin::get_Name + + .method public hidebysig newslot specialname abstract virtual + instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + get_Configuration() cil managed + { + } // end of method IConfigurablePlugin::get_Configuration + + .method public hidebysig newslot abstract virtual + instance void PopulateConfiguration(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories) cil managed + { + } // end of method IConfigurablePlugin::PopulateConfiguration + + .method public hidebysig newslot abstract virtual + instance void ResetConfiguration() cil managed + { + } // end of method IConfigurablePlugin::ResetConfiguration + + .method public hidebysig newslot abstract virtual + instance void ReloadConfiguration() cil managed + { + } // end of method IConfigurablePlugin::ReloadConfiguration + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + } // end of property IConfigurablePlugin::Name + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + Configuration() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Configuration() + } // end of property IConfigurablePlugin::Configuration +} // end of class Virtuoso.Miranda.Plugins.IConfigurablePlugin + +.class interface private abstract auto ansi Virtuoso.Miranda.Plugins.IConfigurablePluginBase`1<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) TConfiguration> + implements Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ + .method public hidebysig newslot specialname abstract virtual + instance !TConfiguration get_PluginConfiguration() cil managed + { + } // end of method IConfigurablePluginBase`1::get_PluginConfiguration + + .property instance !TConfiguration PluginConfiguration() + { + .get instance !TConfiguration Virtuoso.Miranda.Plugins.IConfigurablePluginBase`1::get_PluginConfiguration() + } // end of property IConfigurablePluginBase`1::PluginConfiguration +} // end of class Virtuoso.Miranda.Plugins.IConfigurablePluginBase`1 + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) TConfiguration> + extends Virtuoso.Miranda.Plugins.MirandaPlugin + implements class Virtuoso.Miranda.Plugins.IConfigurablePluginBase`1, + Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ + .field private !TConfiguration pluginConfiguration + .field private class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] configuration + .method public hidebysig newslot specialname virtual final + instance !TConfiguration get_PluginConfiguration() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] !TConfiguration CS$1$0000) + .line 35,35 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\ConfigurableMirandaPlugin.cs' + IL_0000: nop + .line 35,35 : 19,46 '' + IL_0001: ldarg.0 + IL_0002: ldfld !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 35,35 : 47,48 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ConfigurableMirandaPlugin`1::get_PluginConfiguration + + .method private hidebysig newslot specialname virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + Virtuoso.Miranda.Plugins.IConfigurablePlugin.get_Configuration() cil managed + { + .override Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Configuration + // Code size 47 (0x2f) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$1$0000, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$0$0001) + .line 41,41 : 17,18 '' + IL_0000: nop + .line 41,41 : 19,111 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::configuration + IL_0007: dup + IL_0008: brtrue.s IL_002a + + IL_000a: pop + IL_000b: ldarg.0 + IL_000c: ldc.i4.1 + IL_000d: newarr Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + IL_0012: stloc.1 + IL_0013: ldloc.1 + IL_0014: ldc.i4.0 + IL_0015: ldarg.0 + IL_0016: ldfld !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + IL_001b: box !TConfiguration + IL_0020: stelem.ref + IL_0021: ldloc.1 + IL_0022: dup + IL_0023: stloc.1 + IL_0024: stfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::configuration + IL_0029: ldloc.1 + IL_002a: stloc.0 + IL_002b: br.s IL_002d + + .line 41,41 : 112,113 '' + IL_002d: ldloc.0 + IL_002e: ret + } // end of method ConfigurableMirandaPlugin`1::Virtuoso.Miranda.Plugins.IConfigurablePlugin.get_Configuration + + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 48,48 : 9,46 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::.ctor() + IL_0006: nop + .line 48,48 : 47,48 '' + IL_0007: nop + .line 48,48 : 49,50 '' + IL_0008: nop + IL_0009: ret + } // end of method ConfigurableMirandaPlugin`1::.ctor + + .method assembly hidebysig strict virtual + instance void AfterPluginInitializationInternal() cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 55,55 : 9,10 '' + IL_0000: nop + .line 56,56 : 13,93 '' + IL_0001: ldarg.0 + IL_0002: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Load() + IL_0007: stfld !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + .line 57,57 : 13,54 '' + IL_000c: ldarg.0 + IL_000d: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginInitializationInternal() + IL_0012: nop + .line 58,58 : 9,10 '' + IL_0013: ret + } // end of method ConfigurableMirandaPlugin`1::AfterPluginInitializationInternal + + .method assembly hidebysig strict virtual + instance void BeforePluginDisableInternal() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 61,61 : 9,10 '' + IL_0000: nop + .line 62,62 : 13,33 '' + IL_0001: ldarg.0 + IL_0002: call instance void class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::SaveConfiguration() + IL_0007: nop + .line 63,63 : 13,48 '' + IL_0008: ldarg.0 + IL_0009: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforePluginDisableInternal() + IL_000e: nop + .line 64,64 : 9,10 '' + IL_000f: ret + } // end of method ConfigurableMirandaPlugin`1::BeforePluginDisableInternal + + .method assembly hidebysig strict virtual + instance void BeforeMirandaShutdownInternal() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 67,67 : 9,10 '' + IL_0000: nop + .line 68,68 : 13,33 '' + IL_0001: ldarg.0 + IL_0002: call instance void class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::SaveConfiguration() + IL_0007: nop + .line 69,69 : 13,50 '' + IL_0008: ldarg.0 + IL_0009: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforeMirandaShutdownInternal() + IL_000e: nop + .line 70,70 : 9,10 '' + IL_000f: ret + } // end of method ConfigurableMirandaPlugin`1::BeforeMirandaShutdownInternal + + .method private hidebysig instance void + SaveConfiguration() cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 73,73 : 9,10 '' + IL_0000: nop + .line 75,75 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: ldflda !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + IL_0007: constrained. !TConfiguration + IL_000d: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save() + IL_0012: nop + .line 76,76 : 9,10 '' + IL_0013: ret + } // end of method ConfigurableMirandaPlugin`1::SaveConfiguration + + .method public hidebysig newslot virtual final + instance void ResetConfiguration() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 79,79 : 9,10 '' + IL_0000: nop + .line 80,80 : 13,112 '' + IL_0001: ldarg.0 + IL_0002: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration() + IL_0007: stfld !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + .line 81,81 : 9,10 '' + IL_000c: ret + } // end of method ConfigurableMirandaPlugin`1::ResetConfiguration + + .method public hidebysig newslot virtual final + instance void ReloadConfiguration() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 84,84 : 9,10 '' + IL_0000: nop + .line 85,85 : 13,93 '' + IL_0001: ldarg.0 + IL_0002: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Load() + IL_0007: stfld !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + .line 86,86 : 9,10 '' + IL_000c: ret + } // end of method ConfigurableMirandaPlugin`1::ReloadConfiguration + + .method public hidebysig newslot abstract virtual + instance void PopulateConfiguration(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories) cil managed + { + } // end of method ConfigurableMirandaPlugin`1::PopulateConfiguration + + .method public hidebysig specialname virtual + instance bool get_HasOptions() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 96,96 : 17,18 '' + IL_0000: nop + .line 96,96 : 19,31 '' + IL_0001: ldc.i4.1 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 96,96 : 32,33 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method ConfigurableMirandaPlugin`1::get_HasOptions + + .property instance !TConfiguration PluginConfiguration() + { + .get instance !TConfiguration Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::get_PluginConfiguration() + } // end of property ConfigurableMirandaPlugin`1::PluginConfiguration + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + Virtuoso.Miranda.Plugins.IConfigurablePlugin.Configuration() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::Virtuoso.Miranda.Plugins.IConfigurablePlugin.get_Configuration() + } // end of property ConfigurableMirandaPlugin`1::Virtuoso.Miranda.Plugins.IConfigurablePlugin.Configuration + .property instance bool HasOptions() + { + .get instance bool Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::get_HasOptions() + } // end of property ConfigurableMirandaPlugin`1::HasOptions +} // end of class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1 + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor + extends [mscorlib]System.Object +{ + .field private class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin + .field private class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin) cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 28,28 : 9,72 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\ConfigurableEntityDescriptor.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 29,29 : 9,10 '' + IL_0007: nop + .line 30,30 : 13,32 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 31,31 : 17,59 '' + IL_0013: ldstr "plugin" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 33,33 : 13,34 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::plugin + .line 34,34 : 9,10 '' + IL_0025: nop + IL_0026: ret + } // end of method ConfigurableEntityDescriptor::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin + get_Plugin() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.IConfigurablePlugin CS$1$0000) + .line 43,43 : 17,18 '' + IL_0000: nop + .line 43,43 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::plugin + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 43,43 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ConfigurableEntityDescriptor::get_Plugin + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection + get_Categories() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection CS$1$0000) + .line 49,49 : 17,18 '' + IL_0000: nop + .line 49,49 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::categories + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 49,49 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ConfigurableEntityDescriptor::get_Categories + + .method public hidebysig specialname instance void + set_Categories(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 50,50 : 17,18 '' + IL_0000: nop + .line 50,50 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::categories + .line 50,50 : 39,40 '' + IL_0008: ret + } // end of method ConfigurableEntityDescriptor::set_Categories + + .property instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin + Plugin() + { + .get instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin() + } // end of property ConfigurableEntityDescriptor::Plugin + .property instance class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection + Categories() + { + .get instance class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Categories() + .set instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::set_Categories(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection) + } // end of property ConfigurableEntityDescriptor::Categories +} // end of class Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + extends [System.Windows.Forms]System.Windows.Forms.UserControl +{ + .field private bool dirty + .field private class Virtuoso.Miranda.Plugins.Configuration.CategoryItem parentItem + .field private string configurationParameter + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 33,33 : 9,40 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemControl.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.UserControl::.ctor() + IL_0006: nop + .line 34,34 : 9,10 '' + IL_0007: nop + .line 35,35 : 13,35 '' + IL_0008: ldarg.0 + IL_0009: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::InitializeComponent() + IL_000e: nop + .line 36,36 : 9,10 '' + IL_000f: nop + IL_0010: ret + } // end of method CategoryItemControl::.ctor + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 92 (0x5c) + .maxstack 6 + .line 39,39 : 9,10 '' + IL_0000: nop + .line 40,40 : 13,34 '' + IL_0001: ldarg.0 + IL_0002: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0007: nop + .line 44,44 : 13,65 '' + IL_0008: ldarg.0 + IL_0009: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Window() + IL_000e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0013: nop + .line 45,45 : 13,147 '' + IL_0014: ldarg.0 + IL_0015: ldstr "Tahoma" + IL_001a: ldc.r4 8. + IL_001f: ldc.i4.0 + IL_0020: ldc.i4.3 + IL_0021: ldc.i4 0xee + IL_0026: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_002b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_0030: nop + .line 46,46 : 13,47 '' + IL_0031: ldarg.0 + IL_0032: ldstr "CategoryItemControl" + IL_0037: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_003c: nop + .line 47,47 : 13,59 '' + IL_003d: ldarg.0 + IL_003e: ldc.i4 0x318 + IL_0043: ldc.i4 0x190 + IL_0048: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_004d: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0052: nop + .line 48,48 : 13,38 '' + IL_0053: ldarg.0 + IL_0054: ldc.i4.0 + IL_0055: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_005a: nop + .line 50,50 : 9,10 '' + IL_005b: ret + } // end of method CategoryItemControl::InitializeComponent + + .method famorassem hidebysig specialname + instance bool get_IsDirty() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 59,59 : 17,18 '' + IL_0000: nop + .line 59,59 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::dirty + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 59,59 : 33,34 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CategoryItemControl::get_IsDirty + + .method famorassem hidebysig specialname + instance void set_IsDirty(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 60,60 : 17,18 '' + IL_0000: nop + .line 60,60 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::dirty + .line 60,60 : 34,35 '' + IL_0008: ret + } // end of method CategoryItemControl::set_IsDirty + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItem + get_ParentItem() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem CS$1$0000) + .line 66,66 : 17,18 '' + IL_0000: nop + .line 66,66 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItem Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::parentItem + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 66,66 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CategoryItemControl::get_ParentItem + + .method famorassem hidebysig specialname + instance string get_ConfigurationParameter() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 72,72 : 17,18 '' + IL_0000: nop + .line 72,72 : 19,49 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::configurationParameter + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 72,72 : 50,51 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CategoryItemControl::get_ConfigurationParameter + + .method assembly hidebysig specialname + instance void set_ConfigurationParameter(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 73,73 : 26,27 '' + IL_0000: nop + .line 73,73 : 28,59 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::configurationParameter + .line 73,73 : 60,61 '' + IL_0008: ret + } // end of method CategoryItemControl::set_ConfigurationParameter + + .method famorassem hidebysig newslot specialname virtual + instance bool get_HasUI() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 83,83 : 53,54 '' + IL_0000: nop + .line 83,83 : 55,67 '' + IL_0001: ldc.i4.1 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 83,83 : 68,69 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method CategoryItemControl::get_HasUI + + .method famorassem hidebysig newslot virtual + instance void OnSelected() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 88,88 : 54,55 '' + IL_0000: nop + .line 88,88 : 56,57 '' + IL_0001: ret + } // end of method CategoryItemControl::OnSelected + + .method famorassem hidebysig newslot virtual + instance bool OnShow(bool firstTime) cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 95,95 : 64,65 '' + IL_0000: nop + .line 95,95 : 66,79 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 95,95 : 80,81 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method CategoryItemControl::OnShow + + .method famorassem hidebysig newslot virtual + instance bool OnHide() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 101,101 : 50,51 '' + IL_0000: nop + .line 101,101 : 52,65 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 101,101 : 66,67 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method CategoryItemControl::OnHide + + .method famorassem hidebysig newslot virtual + instance void Save() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 106,106 : 48,49 '' + IL_0000: nop + .line 106,106 : 50,51 '' + IL_0001: ret + } // end of method CategoryItemControl::Save + + .method famorassem hidebysig newslot virtual + instance void Close() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 111,111 : 49,50 '' + IL_0000: nop + .line 111,111 : 51,52 '' + IL_0001: ret + } // end of method CategoryItemControl::Close + + .method family hidebysig newslot virtual + instance void SetControlDirtyHandler(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 117,117 : 9,10 '' + IL_0000: nop + .line 118,118 : 13,28 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::set_IsDirty(bool) + IL_0008: nop + .line 119,119 : 9,10 '' + IL_0009: ret + } // end of method CategoryItemControl::SetControlDirtyHandler + + .method assembly hidebysig instance void + Initialize(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem parentItem) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 126,126 : 9,10 '' + IL_0000: nop + .line 127,127 : 13,42 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItem Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::parentItem + .line 128,128 : 9,10 '' + IL_0008: ret + } // end of method CategoryItemControl::Initialize + + .method family hidebysig instance void + CloseDialog() cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 131,131 : 9,10 '' + IL_0000: nop + .line 132,132 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: call instance class [System.Windows.Forms]System.Windows.Forms.Form [System.Windows.Forms]System.Windows.Forms.ContainerControl::get_ParentForm() + IL_0007: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Form::Close() + IL_000c: nop + .line 133,133 : 9,10 '' + IL_000d: ret + } // end of method CategoryItemControl::CloseDialog + + .property instance bool IsDirty() + { + .get instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_IsDirty() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::set_IsDirty(bool) + } // end of property CategoryItemControl::IsDirty + .property instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItem + ParentItem() + { + .get instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItem Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_ParentItem() + } // end of property CategoryItemControl::ParentItem + .property instance string ConfigurationParameter() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_ConfigurationParameter() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::set_ConfigurationParameter(string) + } // end of property CategoryItemControl::ConfigurationParameter + .property instance bool HasUI() + { + .get instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_HasUI() + } // end of property CategoryItemControl::HasUI +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent + extends Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl +{ + .field private class [System]System.ComponentModel.IContainer components + .field private class [System.Windows.Forms]System.Windows.Forms.Button EnablePluginBTN + .field private class [System.Windows.Forms]System.Windows.Forms.Button DisablePluginBTN + .field private class [System.Windows.Forms]System.Windows.Forms.ColumnHeader StatusColumn + .field private class [System.Windows.Forms]System.Windows.Forms.ListView PluginsLVIEW + .field private class [System.Windows.Forms]System.Windows.Forms.ColumnHeader NameColumn + .field private class [System.Windows.Forms]System.Windows.Forms.ColumnHeader AuthorColumn + .field private class [System.Windows.Forms]System.Windows.Forms.ColumnHeader VersionColumn + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader panel1 + .field private class [System.Windows.Forms]System.Windows.Forms.PictureBox pictureBox1 + .field private class [System.Windows.Forms]System.Windows.Forms.Label DescriptionLABEL + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection panel2 + .field private class [System.Windows.Forms]System.Windows.Forms.LinkLabel HomePageLBTN + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 81 (0x51) + .maxstack 3 + .line 10,10 : 9,68 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\PluginManagementContent.Designer.cs' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: stfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::components + .line 31,31 : 9,42 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\PluginManagementContent.cs' + IL_0007: ldarg.0 + IL_0008: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::.ctor() + IL_000d: nop + .line 32,32 : 9,10 '' + IL_000e: nop + .line 33,33 : 13,35 '' + IL_000f: ldarg.0 + IL_0010: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::InitializeComponent() + IL_0015: nop + .line 35,35 : 13,33 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_001c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::Hide() + IL_0021: nop + .line 36,36 : 13,87 '' + IL_0022: ldarg.0 + IL_0023: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_0028: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_SelectPluginToDisplayDescr() + IL_002d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0032: nop + .line 38,38 : 13,103 '' + IL_0033: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0038: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_003d: ldarg.0 + IL_003e: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginManager_PluginStateChange(object, + class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs) + IL_0044: newobj instance void class [mscorlib]System.EventHandler`1::.ctor(object, + native int) + IL_0049: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::add_PluginStateChange(class [mscorlib]System.EventHandler`1) + IL_004e: nop + .line 39,39 : 9,10 '' + IL_004f: nop + IL_0050: ret + } // end of method PluginManagementContent::.ctor + + .method private hidebysig instance void + PluginManager_PluginStateChange(object sender, + class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs e) cil managed + { + // Code size 44 (0x2c) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 42,42 : 9,10 '' + IL_0000: nop + .line 43,43 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_InvokeRequired() + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0023 + + .line 44,44 : 17,71 '' + IL_000e: ldarg.0 + IL_000f: ldarg.0 + IL_0010: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::'b__0'() + IL_0016: newobj instance void [System.Windows.Forms]System.Windows.Forms.MethodInvoker::.ctor(object, + native int) + IL_001b: call instance object [System.Windows.Forms]System.Windows.Forms.Control::Invoke(class [mscorlib]System.Delegate) + IL_0020: pop + IL_0021: br.s IL_002b + + .line 46,46 : 17,30 '' + IL_0023: ldarg.0 + IL_0024: ldc.i4.1 + IL_0025: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnShow(bool) + IL_002a: pop + .line 47,47 : 9,10 '' + IL_002b: ret + } // end of method PluginManagementContent::PluginManager_PluginStateChange + + .method famorassem hidebysig virtual instance void + Close() cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 54,54 : 9,10 '' + IL_0000: nop + .line 55,55 : 13,103 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_000b: ldarg.0 + IL_000c: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginManager_PluginStateChange(object, + class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs) + IL_0012: newobj instance void class [mscorlib]System.EventHandler`1::.ctor(object, + native int) + IL_0017: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::remove_PluginStateChange(class [mscorlib]System.EventHandler`1) + IL_001c: nop + .line 56,56 : 9,10 '' + IL_001d: ret + } // end of method PluginManagementContent::Close + + .method famorassem hidebysig virtual instance bool + OnShow(bool firstTime) cil managed + { + // Code size 180 (0xb4) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection plugins, + [1] bool CS$1$0000, + [2] bool CS$4$0001, + [3] bool CS$0$0002) + .line 59,59 : 9,10 '' + IL_0000: nop + .line 60,60 : 13,28 '' + IL_0001: ldarg.1 + IL_0002: stloc.2 + IL_0003: ldloc.2 + IL_0004: brtrue.s IL_000d + + .line 61,61 : 17,30 '' + IL_0006: ldc.i4.0 + IL_0007: stloc.1 + IL_0008: br IL_00b2 + + .line 63,63 : 13,103 '' + IL_000d: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0012: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_0017: callvirt instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + IL_001c: stloc.0 + .line 66,66 : 13,14 '' + .try + { + IL_001d: nop + .line 67,67 : 17,70 '' + IL_001e: ldloc.0 + IL_001f: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_0024: nop + .line 69,69 : 17,44 '' + IL_0025: ldarg.0 + IL_0026: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_002b: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_0030: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::Clear() + IL_0035: nop + .line 70,70 : 17,99 '' + IL_0036: ldarg.0 + IL_0037: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_003c: ldarg.0 + IL_003d: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0042: ldarg.0 + IL_0043: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0048: ldc.i4.0 + IL_0049: dup + IL_004a: stloc.3 + IL_004b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_0050: nop + IL_0051: ldloc.3 + IL_0052: dup + IL_0053: stloc.3 + IL_0054: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_0059: nop + IL_005a: ldloc.3 + IL_005b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_0060: nop + .line 72,72 : 17,40 '' + IL_0061: ldloc.0 + IL_0062: callvirt instance int32 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Count() + IL_0067: ldc.i4.0 + IL_0068: ceq + IL_006a: ldc.i4.0 + IL_006b: ceq + IL_006d: stloc.2 + IL_006e: ldloc.2 + IL_006f: brtrue.s IL_008f + + .line 73,73 : 17,18 '' + IL_0071: nop + .line 74,74 : 21,50 '' + IL_0072: ldarg.0 + IL_0073: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0078: ldc.i4.0 + IL_0079: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_007e: nop + .line 75,75 : 21,49 '' + IL_007f: ldarg.0 + IL_0080: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0085: ldc.i4.1 + IL_0086: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Visible(bool) + IL_008b: nop + .line 76,76 : 17,18 '' + IL_008c: nop + IL_008d: br.s IL_0099 + + .line 78,78 : 17,18 '' + IL_008f: nop + .line 79,79 : 21,45 '' + IL_0090: ldarg.0 + IL_0091: ldloc.0 + IL_0092: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PublishPlugins(class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection) + IL_0097: nop + .line 80,80 : 17,18 '' + IL_0098: nop + .line 81,81 : 13,14 '' + IL_0099: nop + IL_009a: leave.s IL_00a6 + + .line 83,83 : 13,14 '' + } // end .try + finally + { + IL_009c: nop + .line 84,84 : 17,58 '' + IL_009d: ldloc.0 + IL_009e: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_00a3: nop + .line 85,85 : 13,14 '' + IL_00a4: nop + IL_00a5: endfinally + } // end handler + IL_00a6: nop + .line 87,87 : 13,37 '' + IL_00a7: ldarg.0 + IL_00a8: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::CommitListViewChanges() + IL_00ad: nop + .line 88,88 : 13,26 '' + IL_00ae: ldc.i4.0 + IL_00af: stloc.1 + IL_00b0: br.s IL_00b2 + + .line 89,89 : 9,10 '' + IL_00b2: ldloc.1 + IL_00b3: ret + } // end of method PluginManagementContent::OnShow + + .method private hidebysig instance void + CommitListViewChanges() cil managed + { + // Code size 66 (0x42) + .maxstack 2 + .line 92,92 : 9,10 '' + IL_0000: nop + .line 93,93 : 13,75 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::NameColumn + IL_0007: ldc.i4.1 + IL_0008: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::AutoResize(valuetype [System.Windows.Forms]System.Windows.Forms.ColumnHeaderAutoResizeStyle) + IL_000d: nop + .line 94,94 : 13,77 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::AuthorColumn + IL_0014: ldc.i4.1 + IL_0015: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::AutoResize(valuetype [System.Windows.Forms]System.Windows.Forms.ColumnHeaderAutoResizeStyle) + IL_001a: nop + .line 95,95 : 13,78 '' + IL_001b: ldarg.0 + IL_001c: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::VersionColumn + IL_0021: ldc.i4.1 + IL_0022: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::AutoResize(valuetype [System.Windows.Forms]System.Windows.Forms.ColumnHeaderAutoResizeStyle) + IL_0027: nop + .line 96,96 : 13,77 '' + IL_0028: ldarg.0 + IL_0029: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::StatusColumn + IL_002e: ldc.i4.1 + IL_002f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::AutoResize(valuetype [System.Windows.Forms]System.Windows.Forms.ColumnHeaderAutoResizeStyle) + IL_0034: nop + .line 98,98 : 13,33 '' + IL_0035: ldarg.0 + IL_0036: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_003b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::Show() + IL_0040: nop + .line 99,99 : 9,10 '' + IL_0041: ret + } // end of method PluginManagementContent::CommitListViewChanges + + .method private hidebysig instance void + PublishPlugins(class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection plugins) cil managed + { + // Code size 317 (0x13d) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class [System.Windows.Forms]System.Windows.Forms.ListViewItem item, + [2] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000, + [3] string[] CS$0$0001, + [4] valuetype Virtuoso.Miranda.Plugins.PluginState CS$4$0002, + [5] bool CS$4$0003) + .line 106,106 : 9,10 '' + IL_0000: nop + .line 107,107 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0007: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::BeginUpdate() + IL_000c: nop + .line 109,109 : 13,20 '' + IL_000d: nop + .line 109,109 : 53,60 '' + IL_000e: ldarg.1 + IL_000f: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_0014: stloc.2 + .try + { + IL_0015: br IL_0118 + + .line 109,109 : 22,49 '' + IL_001a: ldloc.2 + IL_001b: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0020: stloc.0 + .line 110,110 : 13,14 '' + IL_0021: nop + .line 112,112 : 17,18 '' + .try + { + IL_0022: nop + .line 113,114 : 21,104 '' + IL_0023: ldc.i4.4 + IL_0024: newarr [mscorlib]System.String + IL_0029: stloc.3 + IL_002a: ldloc.3 + IL_002b: ldc.i4.0 + IL_002c: ldloc.0 + IL_002d: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0032: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_0037: stelem.ref + IL_0038: ldloc.3 + IL_0039: ldc.i4.1 + IL_003a: ldloc.0 + IL_003b: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0040: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Author() + IL_0045: stelem.ref + IL_0046: ldloc.3 + IL_0047: ldc.i4.2 + IL_0048: ldloc.0 + IL_0049: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_004e: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + IL_0053: callvirt instance string [mscorlib]System.Object::ToString() + IL_0058: stelem.ref + IL_0059: ldloc.3 + IL_005a: ldc.i4.3 + IL_005b: ldloc.0 + IL_005c: callvirt instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState() + IL_0061: box Virtuoso.Miranda.Plugins.PluginState + IL_0066: callvirt instance string [mscorlib]System.Object::ToString() + IL_006b: stelem.ref + IL_006c: ldloc.3 + IL_006d: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::.ctor(string[]) + IL_0072: stloc.1 + .line 116,116 : 21,52 '' + IL_0073: ldloc.0 + IL_0074: callvirt instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState() + IL_0079: stloc.s CS$4$0002 + IL_007b: ldloc.s CS$4$0002 + IL_007d: switch ( + IL_00ae, + IL_0090, + IL_00cc) + IL_008e: br.s IL_00ea + + .line 119,119 : 29,78 '' + IL_0090: ldloc.1 + IL_0091: ldarg.0 + IL_0092: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0097: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Groups() + IL_009c: ldstr "EnabledGroup" + IL_00a1: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroup [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection::get_Item(string) + IL_00a6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::set_Group(class [System.Windows.Forms]System.Windows.Forms.ListViewGroup) + IL_00ab: nop + .line 120,120 : 29,35 '' + IL_00ac: br.s IL_00ea + + .line 122,122 : 29,85 '' + IL_00ae: ldloc.1 + IL_00af: ldarg.0 + IL_00b0: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_00b5: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Groups() + IL_00ba: ldstr "DisabledByUserGroup" + IL_00bf: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroup [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection::get_Item(string) + IL_00c4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::set_Group(class [System.Windows.Forms]System.Windows.Forms.ListViewGroup) + IL_00c9: nop + .line 123,123 : 29,35 '' + IL_00ca: br.s IL_00ea + + .line 125,125 : 29,86 '' + IL_00cc: ldloc.1 + IL_00cd: ldarg.0 + IL_00ce: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_00d3: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Groups() + IL_00d8: ldstr "DisabledByCrashGroup" + IL_00dd: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroup [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection::get_Item(string) + IL_00e2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::set_Group(class [System.Windows.Forms]System.Windows.Forms.ListViewGroup) + IL_00e7: nop + .line 126,126 : 29,35 '' + IL_00e8: br.s IL_00ea + + .line 129,129 : 21,43 '' + IL_00ea: ldloc.1 + IL_00eb: ldloc.0 + IL_00ec: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::set_Tag(object) + IL_00f1: nop + .line 130,130 : 21,50 '' + IL_00f2: ldarg.0 + IL_00f3: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_00f8: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_00fd: ldloc.1 + IL_00fe: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ListViewItem) + IL_0103: pop + .line 131,131 : 17,18 '' + IL_0104: nop + IL_0105: leave.s IL_0116 + + .line 133,133 : 17,18 '' + } // end .try + finally + { + IL_0107: nop + .line 134,134 : 21,46 '' + IL_0108: ldarg.0 + IL_0109: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_010e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::EndUpdate() + IL_0113: nop + .line 135,135 : 17,18 '' + IL_0114: nop + IL_0115: endfinally + } // end handler + IL_0116: nop + .line 136,136 : 13,14 '' + IL_0117: nop + .line 109,109 : 50,52 '' + IL_0118: ldloc.2 + IL_0119: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_011e: stloc.s CS$4$0003 + IL_0120: ldloc.s CS$4$0003 + IL_0122: brtrue IL_001a + + IL_0127: leave.s IL_013b + + } // end .try + finally + { + IL_0129: ldloc.2 + IL_012a: ldnull + IL_012b: ceq + IL_012d: stloc.s CS$4$0003 + IL_012f: ldloc.s CS$4$0003 + IL_0131: brtrue.s IL_013a + + IL_0133: ldloc.2 + IL_0134: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0139: nop + IL_013a: endfinally + } // end handler + IL_013b: nop + .line 137,137 : 9,10 '' + IL_013c: ret + } // end of method PluginManagementContent::PublishPlugins + + .method private hidebysig instance void + PluginsLVIEW_ItemSelectionChanged(object sender, + class [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventArgs e) cil managed + { + // Code size 229 (0xe5) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] bool CS$4$0000, + [2] bool CS$0$0001) + .line 140,140 : 9,10 '' + IL_0000: nop + .line 141,141 : 13,30 '' + IL_0001: ldarg.2 + IL_0002: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventArgs::get_IsSelected() + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.1 + IL_000b: ldloc.1 + IL_000c: brtrue IL_0099 + + .line 142,142 : 13,14 '' + IL_0011: nop + .line 143,143 : 17,76 '' + IL_0012: ldarg.2 + IL_0013: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventArgs::get_Item() + IL_0018: callvirt instance object [System.Windows.Forms]System.Windows.Forms.ListViewItem::get_Tag() + IL_001d: castclass Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0022: stloc.0 + .line 144,144 : 17,47 '' + IL_0023: ldarg.0 + IL_0024: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0029: ldloc.0 + IL_002a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Tag(object) + IL_002f: nop + .line 146,146 : 17,71 '' + IL_0030: ldarg.0 + IL_0031: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_0036: ldloc.0 + IL_0037: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_003c: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Description() + IL_0041: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0046: nop + .line 148,148 : 17,92 '' + IL_0047: ldarg.0 + IL_0048: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_004d: ldloc.0 + IL_004e: callvirt instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState() + IL_0053: ldc.i4.1 + IL_0054: ceq + IL_0056: ldc.i4.0 + IL_0057: ceq + IL_0059: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_005e: nop + .line 149,149 : 17,69 '' + IL_005f: ldarg.0 + IL_0060: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_0065: ldarg.0 + IL_0066: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_006b: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_Enabled() + IL_0070: ldc.i4.0 + IL_0071: ceq + IL_0073: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_0078: nop + .line 151,151 : 17,75 '' + IL_0079: ldarg.0 + IL_007a: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_007f: ldloc.0 + IL_0080: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0085: callvirt instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + IL_008a: ldnull + IL_008b: call bool [System]System.Uri::op_Inequality(class [System]System.Uri, + class [System]System.Uri) + IL_0090: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_0095: nop + .line 152,152 : 13,14 '' + IL_0096: nop + IL_0097: br.s IL_00e4 + + .line 154,154 : 13,14 '' + IL_0099: nop + .line 155,155 : 17,41 '' + IL_009a: ldarg.0 + IL_009b: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_00a0: ldnull + IL_00a1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Tag(object) + IL_00a6: nop + .line 157,157 : 17,99 '' + IL_00a7: ldarg.0 + IL_00a8: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_00ad: ldarg.0 + IL_00ae: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_00b3: ldarg.0 + IL_00b4: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_00b9: ldc.i4.0 + IL_00ba: dup + IL_00bb: stloc.2 + IL_00bc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_00c1: nop + IL_00c2: ldloc.2 + IL_00c3: dup + IL_00c4: stloc.2 + IL_00c5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_00ca: nop + IL_00cb: ldloc.2 + IL_00cc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_00d1: nop + .line 158,158 : 17,91 '' + IL_00d2: ldarg.0 + IL_00d3: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_00d8: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_SelectPluginToDisplayDescr() + IL_00dd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_00e2: nop + .line 159,159 : 13,14 '' + IL_00e3: nop + .line 160,160 : 9,10 '' + IL_00e4: ret + } // end of method PluginManagementContent::PluginsLVIEW_ItemSelectionChanged + + .method private hidebysig instance void + DisablePluginBTN_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 52 (0x34) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 163,163 : 9,10 '' + IL_0000: nop + .line 164,164 : 13,54 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0007: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_000c: isinst Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0011: ldnull + IL_0012: cgt.un + IL_0014: ldc.i4.0 + IL_0015: ceq + IL_0017: stloc.0 + IL_0018: ldloc.0 + IL_0019: brtrue.s IL_0033 + + .line 165,165 : 17,97 '' + IL_001b: ldarg.0 + IL_001c: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0021: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_0026: castclass Virtuoso.Miranda.Plugins.PluginDescriptor + IL_002b: ldc.i4.0 + IL_002c: ldc.i4.1 + IL_002d: callvirt instance void Virtuoso.Miranda.Plugins.PluginDescriptor::SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState, + bool) + IL_0032: nop + .line 166,166 : 9,10 '' + IL_0033: ret + } // end of method PluginManagementContent::DisablePluginBTN_Click + + .method private hidebysig instance void + EnablePluginBTN_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 52 (0x34) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 169,169 : 9,10 '' + IL_0000: nop + .line 170,170 : 13,54 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0007: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_000c: isinst Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0011: ldnull + IL_0012: cgt.un + IL_0014: ldc.i4.0 + IL_0015: ceq + IL_0017: stloc.0 + IL_0018: ldloc.0 + IL_0019: brtrue.s IL_0033 + + .line 171,171 : 17,96 '' + IL_001b: ldarg.0 + IL_001c: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0021: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_0026: castclass Virtuoso.Miranda.Plugins.PluginDescriptor + IL_002b: ldc.i4.1 + IL_002c: ldc.i4.1 + IL_002d: callvirt instance void Virtuoso.Miranda.Plugins.PluginDescriptor::SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState, + bool) + IL_0032: nop + .line 172,172 : 9,10 '' + IL_0033: ret + } // end of method PluginManagementContent::EnablePluginBTN_Click + + .method private hidebysig instance void + HomePageLBTN_LinkClicked(object sender, + class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventArgs eArgs) cil managed + { + // Code size 105 (0x69) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Exception e, + [1] bool CS$4$0000) + .line 175,175 : 9,10 '' + IL_0000: nop + .line 177,177 : 13,14 '' + .try + { + IL_0001: nop + .line 178,178 : 17,58 '' + IL_0002: ldarg.0 + IL_0003: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0008: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_000d: isinst Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0012: ldnull + IL_0013: cgt.un + IL_0015: ldc.i4.0 + IL_0016: ceq + IL_0018: stloc.1 + IL_0019: ldloc.1 + IL_001a: brtrue.s IL_0041 + + .line 179,179 : 21,100 '' + IL_001c: ldarg.0 + IL_001d: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0022: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_0027: castclass Virtuoso.Miranda.Plugins.PluginDescriptor + IL_002c: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0031: callvirt instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + IL_0036: callvirt instance string [mscorlib]System.Object::ToString() + IL_003b: call class [System]System.Diagnostics.Process [System]System.Diagnostics.Process::Start(string) + IL_0040: pop + .line 180,180 : 13,14 '' + IL_0041: nop + IL_0042: leave.s IL_0067 + + .line 181,181 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0044: stloc.0 + .line 182,182 : 13,14 '' + IL_0045: nop + .line 183,183 : 17,168 '' + IL_0046: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotOpenHomePage() + IL_004b: ldloc.0 + IL_004c: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0051: call string [mscorlib]System.String::Concat(string, + string) + IL_0056: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Caption_Error() + IL_005b: ldc.i4.0 + IL_005c: ldc.i4.s 16 + IL_005e: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0063: pop + .line 184,184 : 13,14 '' + IL_0064: nop + IL_0065: leave.s IL_0067 + + } // end handler + IL_0067: nop + .line 185,185 : 9,10 '' + IL_0068: ret + } // end of method PluginManagementContent::HomePageLBTN_LinkClicked + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 44 (0x2c) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 17,17 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\PluginManagementContent.Designer.cs' + IL_0000: nop + .line 18,18 : 13,51 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_000f + + IL_0004: ldarg.0 + IL_0005: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::components + IL_000a: ldnull + IL_000b: ceq + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.1 + IL_0010: nop + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0023 + + .line 19,19 : 13,14 '' + IL_0015: nop + .line 20,20 : 17,38 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::components + IL_001c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0021: nop + .line 21,21 : 13,14 '' + IL_0022: nop + .line 22,22 : 13,37 '' + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::Dispose(bool) + IL_002a: nop + .line 23,23 : 9,10 '' + IL_002b: ret + } // end of method PluginManagementContent::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 2177 (0x881) + .maxstack 6 + .locals init ([0] class [System.Windows.Forms]System.Windows.Forms.ListViewGroup listViewGroup1, + [1] class [System.Windows.Forms]System.Windows.Forms.ListViewGroup listViewGroup2, + [2] class [System.Windows.Forms]System.Windows.Forms.ListViewGroup listViewGroup3, + [3] class [System]System.ComponentModel.ComponentResourceManager resources, + [4] class [System.Windows.Forms]System.Windows.Forms.ColumnHeader[] CS$0$0000, + [5] class [System.Windows.Forms]System.Windows.Forms.ListViewGroup[] CS$0$0001) + .line 32,32 : 9,10 '' + IL_0000: nop + .line 33,33 : 13,174 '' + IL_0001: ldstr "Enabled and running" + IL_0006: ldc.i4.0 + IL_0007: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::.ctor(string, + valuetype [System.Windows.Forms]System.Windows.Forms.HorizontalAlignment) + IL_000c: stloc.0 + .line 34,34 : 13,175 '' + IL_000d: ldstr "Disabled by the user" + IL_0012: ldc.i4.0 + IL_0013: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::.ctor(string, + valuetype [System.Windows.Forms]System.Windows.Forms.HorizontalAlignment) + IL_0018: stloc.1 + .line 35,35 : 13,162 '' + IL_0019: ldstr "Crashed" + IL_001e: ldc.i4.0 + IL_001f: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::.ctor(string, + valuetype [System.Windows.Forms]System.Windows.Forms.HorizontalAlignment) + IL_0024: stloc.2 + .line 36,36 : 13,156 '' + IL_0025: ldtoken Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent + IL_002a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_002f: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_0034: stloc.3 + .line 37,37 : 13,70 '' + IL_0035: ldarg.0 + IL_0036: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_003b: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + .line 38,38 : 13,71 '' + IL_0040: ldarg.0 + IL_0041: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0046: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + .line 39,39 : 13,73 '' + IL_004b: ldarg.0 + IL_004c: newobj instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::.ctor() + IL_0051: stfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::StatusColumn + .line 40,40 : 13,69 '' + IL_0056: ldarg.0 + IL_0057: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListView::.ctor() + IL_005c: stfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + .line 41,41 : 13,71 '' + IL_0061: ldarg.0 + IL_0062: newobj instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::.ctor() + IL_0067: stfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::NameColumn + .line 42,42 : 13,73 '' + IL_006c: ldarg.0 + IL_006d: newobj instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::.ctor() + IL_0072: stfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::AuthorColumn + .line 43,43 : 13,74 '' + IL_0077: ldarg.0 + IL_0078: newobj instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::.ctor() + IL_007d: stfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::VersionColumn + .line 44,44 : 13,106 '' + IL_0082: ldarg.0 + IL_0083: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor() + IL_0088: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + .line 45,45 : 13,70 '' + IL_008d: ldarg.0 + IL_008e: newobj instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::.ctor() + IL_0093: stfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + .line 46,46 : 13,70 '' + IL_0098: ldarg.0 + IL_0099: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_009e: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + .line 47,47 : 13,107 '' + IL_00a3: ldarg.0 + IL_00a4: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::.ctor() + IL_00a9: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + .line 48,48 : 13,70 '' + IL_00ae: ldarg.0 + IL_00af: newobj instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::.ctor() + IL_00b4: stfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + .line 49,49 : 13,88 '' + IL_00b9: ldarg.0 + IL_00ba: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_00bf: callvirt instance void [System]System.ComponentModel.ISupportInitialize::BeginInit() + IL_00c4: nop + .line 50,50 : 13,34 '' + IL_00c5: ldarg.0 + IL_00c6: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_00cb: nop + .line 54,54 : 13,50 '' + IL_00cc: ldarg.0 + IL_00cd: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_00d2: ldc.i4.1 + IL_00d3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_00d8: nop + .line 55,55 : 13,50 '' + IL_00d9: ldarg.0 + IL_00da: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_00df: ldc.i4.0 + IL_00e0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_00e5: nop + .line 56,56 : 13,83 '' + IL_00e6: ldarg.0 + IL_00e7: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_00ec: ldc.i4.0 + IL_00ed: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_ImeMode(valuetype [System.Windows.Forms]System.Windows.Forms.ImeMode) + IL_00f2: nop + .line 57,57 : 13,79 '' + IL_00f3: ldarg.0 + IL_00f4: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_00f9: ldc.i4 0x2a6 + IL_00fe: ldc.i4.s 46 + IL_0100: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0105: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_010a: nop + .line 58,58 : 13,59 '' + IL_010b: ldarg.0 + IL_010c: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0111: ldstr "EnablePluginBTN" + IL_0116: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_011b: nop + .line 59,59 : 13,73 '' + IL_011c: ldarg.0 + IL_011d: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0122: ldc.i4.s 95 + IL_0124: ldc.i4.s 23 + IL_0126: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_012b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0130: nop + .line 60,60 : 13,48 '' + IL_0131: ldarg.0 + IL_0132: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0137: ldc.i4.s 11 + IL_0139: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_013e: nop + .line 61,61 : 13,57 '' + IL_013f: ldarg.0 + IL_0140: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0145: ldstr "Enable plugin" + IL_014a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_014f: nop + .line 62,62 : 13,66 '' + IL_0150: ldarg.0 + IL_0151: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0156: ldc.i4.0 + IL_0157: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + IL_015c: nop + .line 63,63 : 13,95 '' + IL_015d: ldarg.0 + IL_015e: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0163: ldarg.0 + IL_0164: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN_Click(object, + class [mscorlib]System.EventArgs) + IL_016a: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_016f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::add_Click(class [mscorlib]System.EventHandler) + IL_0174: nop + .line 67,67 : 13,51 '' + IL_0175: ldarg.0 + IL_0176: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_017b: ldc.i4.1 + IL_017c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_0181: nop + .line 68,68 : 13,51 '' + IL_0182: ldarg.0 + IL_0183: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_0188: ldc.i4.0 + IL_0189: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_018e: nop + .line 69,69 : 13,84 '' + IL_018f: ldarg.0 + IL_0190: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_0195: ldc.i4.0 + IL_0196: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_ImeMode(valuetype [System.Windows.Forms]System.Windows.Forms.ImeMode) + IL_019b: nop + .line 70,70 : 13,80 '' + IL_019c: ldarg.0 + IL_019d: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01a2: ldc.i4 0x2a6 + IL_01a7: ldc.i4.s 75 + IL_01a9: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_01ae: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_01b3: nop + .line 71,71 : 13,61 '' + IL_01b4: ldarg.0 + IL_01b5: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01ba: ldstr "DisablePluginBTN" + IL_01bf: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_01c4: nop + .line 72,72 : 13,74 '' + IL_01c5: ldarg.0 + IL_01c6: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01cb: ldc.i4.s 95 + IL_01cd: ldc.i4.s 23 + IL_01cf: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_01d4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_01d9: nop + .line 73,73 : 13,49 '' + IL_01da: ldarg.0 + IL_01db: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01e0: ldc.i4.s 10 + IL_01e2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_01e7: nop + .line 74,74 : 13,59 '' + IL_01e8: ldarg.0 + IL_01e9: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01ee: ldstr "Disable plugin" + IL_01f3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_01f8: nop + .line 75,75 : 13,67 '' + IL_01f9: ldarg.0 + IL_01fa: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01ff: ldc.i4.0 + IL_0200: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + IL_0205: nop + .line 76,76 : 13,97 '' + IL_0206: ldarg.0 + IL_0207: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_020c: ldarg.0 + IL_020d: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN_Click(object, + class [mscorlib]System.EventArgs) + IL_0213: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0218: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::add_Click(class [mscorlib]System.EventHandler) + IL_021d: nop + .line 80,80 : 13,47 '' + IL_021e: ldarg.0 + IL_021f: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::StatusColumn + IL_0224: ldstr "Status" + IL_0229: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::set_Text(string) + IL_022e: nop + .line 84,88 : 13,33 '' + IL_022f: ldarg.0 + IL_0230: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0235: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListView/ColumnHeaderCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Columns() + IL_023a: ldc.i4.4 + IL_023b: newarr [System.Windows.Forms]System.Windows.Forms.ColumnHeader + IL_0240: stloc.s CS$0$0000 + IL_0242: ldloc.s CS$0$0000 + IL_0244: ldc.i4.0 + IL_0245: ldarg.0 + IL_0246: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::NameColumn + IL_024b: stelem.ref + IL_024c: ldloc.s CS$0$0000 + IL_024e: ldc.i4.1 + IL_024f: ldarg.0 + IL_0250: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::AuthorColumn + IL_0255: stelem.ref + IL_0256: ldloc.s CS$0$0000 + IL_0258: ldc.i4.2 + IL_0259: ldarg.0 + IL_025a: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::VersionColumn + IL_025f: stelem.ref + IL_0260: ldloc.s CS$0$0000 + IL_0262: ldc.i4.3 + IL_0263: ldarg.0 + IL_0264: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::StatusColumn + IL_0269: stelem.ref + IL_026a: ldloc.s CS$0$0000 + IL_026c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView/ColumnHeaderCollection::AddRange(class [System.Windows.Forms]System.Windows.Forms.ColumnHeader[]) + IL_0271: nop + .line 89,89 : 13,52 '' + IL_0272: ldarg.0 + IL_0273: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0278: ldc.i4.1 + IL_0279: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_FullRowSelect(bool) + IL_027e: nop + .line 90,90 : 13,59 '' + IL_027f: ldloc.0 + IL_0280: ldstr "Enabled and running" + IL_0285: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Header(string) + IL_028a: nop + .line 91,91 : 13,50 '' + IL_028b: ldloc.0 + IL_028c: ldstr "EnabledGroup" + IL_0291: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Name(string) + IL_0296: nop + .line 92,92 : 13,60 '' + IL_0297: ldloc.1 + IL_0298: ldstr "Disabled by the user" + IL_029d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Header(string) + IL_02a2: nop + .line 93,93 : 13,57 '' + IL_02a3: ldloc.1 + IL_02a4: ldstr "DisabledByUserGroup" + IL_02a9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Name(string) + IL_02ae: nop + .line 94,94 : 13,47 '' + IL_02af: ldloc.2 + IL_02b0: ldstr "Crashed" + IL_02b5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Header(string) + IL_02ba: nop + .line 95,95 : 13,58 '' + IL_02bb: ldloc.2 + IL_02bc: ldstr "DisabledByCrashGroup" + IL_02c1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Name(string) + IL_02c6: nop + .line 96,99 : 13,30 '' + IL_02c7: ldarg.0 + IL_02c8: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_02cd: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Groups() + IL_02d2: ldc.i4.3 + IL_02d3: newarr [System.Windows.Forms]System.Windows.Forms.ListViewGroup + IL_02d8: stloc.s CS$0$0001 + IL_02da: ldloc.s CS$0$0001 + IL_02dc: ldc.i4.0 + IL_02dd: ldloc.0 + IL_02de: stelem.ref + IL_02df: ldloc.s CS$0$0001 + IL_02e1: ldc.i4.1 + IL_02e2: ldloc.1 + IL_02e3: stelem.ref + IL_02e4: ldloc.s CS$0$0001 + IL_02e6: ldc.i4.2 + IL_02e7: ldloc.2 + IL_02e8: stelem.ref + IL_02e9: ldloc.s CS$0$0001 + IL_02eb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection::AddRange(class [System.Windows.Forms]System.Windows.Forms.ListViewGroup[]) + IL_02f0: nop + .line 100,100 : 13,97 '' + IL_02f1: ldarg.0 + IL_02f2: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_02f7: ldc.i4.1 + IL_02f8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_HeaderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.ColumnHeaderStyle) + IL_02fd: nop + .line 101,101 : 13,53 '' + IL_02fe: ldarg.0 + IL_02ff: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0304: ldc.i4.0 + IL_0305: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_HideSelection(bool) + IL_030a: nop + .line 102,102 : 13,75 '' + IL_030b: ldarg.0 + IL_030c: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0311: ldc.i4.s 12 + IL_0313: ldc.i4.s 46 + IL_0315: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_031a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_031f: nop + .line 103,103 : 13,51 '' + IL_0320: ldarg.0 + IL_0321: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0326: ldc.i4.0 + IL_0327: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_MultiSelect(bool) + IL_032c: nop + .line 104,104 : 13,53 '' + IL_032d: ldarg.0 + IL_032e: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0333: ldstr "PluginsLVIEW" + IL_0338: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_033d: nop + .line 105,105 : 13,55 '' + IL_033e: ldarg.0 + IL_033f: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0344: ldc.i4.1 + IL_0345: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_ShowItemToolTips(bool) + IL_034a: nop + .line 106,106 : 13,72 '' + IL_034b: ldarg.0 + IL_034c: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0351: ldc.i4 0x28a + IL_0356: ldc.i4 0x101 + IL_035b: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0360: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0365: nop + .line 107,107 : 13,82 '' + IL_0366: ldarg.0 + IL_0367: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_036c: ldc.i4.1 + IL_036d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_Sorting(valuetype [System.Windows.Forms]System.Windows.Forms.SortOrder) + IL_0372: nop + .line 108,108 : 13,44 '' + IL_0373: ldarg.0 + IL_0374: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0379: ldc.i4.s 9 + IL_037b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_0380: nop + .line 109,109 : 13,71 '' + IL_0381: ldarg.0 + IL_0382: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0387: ldc.i4.0 + IL_0388: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_UseCompatibleStateImageBehavior(bool) + IL_038d: nop + .line 110,110 : 13,72 '' + IL_038e: ldarg.0 + IL_038f: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0394: ldc.i4.1 + IL_0395: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_View(valuetype [System.Windows.Forms]System.Windows.Forms.View) + IL_039a: nop + .line 111,111 : 13,161 '' + IL_039b: ldarg.0 + IL_039c: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_03a1: ldarg.0 + IL_03a2: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW_ItemSelectionChanged(object, + class [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventArgs) + IL_03a8: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventHandler::.ctor(object, + native int) + IL_03ad: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::add_ItemSelectionChanged(class [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventHandler) + IL_03b2: nop + .line 115,115 : 13,44 '' + IL_03b3: ldarg.0 + IL_03b4: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::NameColumn + IL_03b9: ldstr "Title" + IL_03be: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::set_Text(string) + IL_03c3: nop + .line 119,119 : 13,47 '' + IL_03c4: ldarg.0 + IL_03c5: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::AuthorColumn + IL_03ca: ldstr "Author" + IL_03cf: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::set_Text(string) + IL_03d4: nop + .line 123,123 : 13,49 '' + IL_03d5: ldarg.0 + IL_03d6: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::VersionColumn + IL_03db: ldstr "Version" + IL_03e0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::set_Text(string) + IL_03e5: nop + .line 127,127 : 13,70 '' + IL_03e6: ldarg.0 + IL_03e7: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_03ec: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_03f1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_03f6: nop + .line 128,128 : 13,133 '' + IL_03f7: ldarg.0 + IL_03f8: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_03fd: ldc.i4 0xff + IL_0402: ldc.i4 0x80 + IL_0407: ldc.i4.0 + IL_0408: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_040d: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + IL_0412: nop + .line 129,129 : 13,67 '' + IL_0413: ldarg.0 + IL_0414: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_0419: ldc.i4.1 + IL_041a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_041f: nop + .line 130,130 : 13,73 '' + IL_0420: ldarg.0 + IL_0421: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_0426: ldstr "Tahoma" + IL_042b: ldc.r4 8.25 + IL_0430: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32) + IL_0435: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_043a: nop + .line 131,131 : 13,157 '' + IL_043b: ldarg.0 + IL_043c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_0441: ldstr "Tahoma" + IL_0446: ldc.r4 8. + IL_044b: ldc.i4.1 + IL_044c: ldc.i4.3 + IL_044d: ldc.i4 0xee + IL_0452: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0457: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + IL_045c: nop + .line 132,132 : 13,94 '' + IL_045d: ldarg.0 + IL_045e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_0463: ldstr "The following list contains installed Hyphen plugi" + + "ns." + IL_0468: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + IL_046d: nop + .line 133,133 : 13,95 '' + IL_046e: ldarg.0 + IL_046f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_0474: ldloc.3 + IL_0475: ldstr "panel1.Image" + IL_047a: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_047f: castclass [System.Drawing]System.Drawing.Image + IL_0484: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0489: nop + .line 134,134 : 13,67 '' + IL_048a: ldarg.0 + IL_048b: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_0490: ldc.i4.0 + IL_0491: ldc.i4.0 + IL_0492: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0497: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_049c: nop + .line 135,135 : 13,72 '' + IL_049d: ldarg.0 + IL_049e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_04a3: ldc.i4 0x12c + IL_04a8: ldc.i4.s 40 + IL_04aa: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_04af: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_04b4: nop + .line 136,136 : 13,41 '' + IL_04b5: ldarg.0 + IL_04b6: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_04bb: ldstr "panel1" + IL_04c0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_04c5: nop + .line 137,137 : 13,65 '' + IL_04c6: ldarg.0 + IL_04c7: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_04cc: ldc.i4 0x316 + IL_04d1: ldc.i4.s 40 + IL_04d3: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_04d8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_04dd: nop + .line 138,138 : 13,39 '' + IL_04de: ldarg.0 + IL_04df: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_04e4: ldc.i4.s 16 + IL_04e6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_04eb: nop + .line 142,142 : 13,163 '' + IL_04ec: ldarg.0 + IL_04ed: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_04f2: ldc.i4.s 10 + IL_04f4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Anchor(valuetype [System.Windows.Forms]System.Windows.Forms.AnchorStyles) + IL_04f9: nop + .line 143,143 : 13,105 '' + IL_04fa: ldarg.0 + IL_04fb: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_0500: ldloc.3 + IL_0501: ldstr "pictureBox1.Image" + IL_0506: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_050b: castclass [System.Drawing]System.Drawing.Image + IL_0510: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0515: nop + .line 144,144 : 13,79 '' + IL_0516: ldarg.0 + IL_0517: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_051c: ldc.i4.0 + IL_051d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_ImeMode(valuetype [System.Windows.Forms]System.Windows.Forms.ImeMode) + IL_0522: nop + .line 145,145 : 13,76 '' + IL_0523: ldarg.0 + IL_0524: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_0529: ldc.i4 0x271 + IL_052e: ldc.i4 0xaa + IL_0533: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0538: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_053d: nop + .line 146,146 : 13,51 '' + IL_053e: ldarg.0 + IL_053f: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_0544: ldstr "pictureBox1" + IL_0549: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_054e: nop + .line 147,147 : 13,71 '' + IL_054f: ldarg.0 + IL_0550: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_0555: ldc.i4 0xd4 + IL_055a: ldc.i4 0xeb + IL_055f: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0564: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0569: nop + .line 148,148 : 13,90 '' + IL_056a: ldarg.0 + IL_056b: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_0570: ldc.i4.2 + IL_0571: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_SizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.PictureBoxSizeMode) + IL_0576: nop + .line 149,149 : 13,44 '' + IL_0577: ldarg.0 + IL_0578: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_057d: ldc.i4.s 15 + IL_057f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabIndex(int32) + IL_0584: nop + .line 150,150 : 13,46 '' + IL_0585: ldarg.0 + IL_0586: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_058b: ldc.i4.0 + IL_058c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabStop(bool) + IL_0591: nop + .line 154,154 : 13,55 '' + IL_0592: ldarg.0 + IL_0593: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_0598: ldc.i4.1 + IL_0599: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_AutoEllipsis(bool) + IL_059e: nop + .line 155,155 : 13,80 '' + IL_059f: ldarg.0 + IL_05a0: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_05a5: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_05aa: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_05af: nop + .line 156,156 : 13,84 '' + IL_05b0: ldarg.0 + IL_05b1: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_05b6: ldc.i4.0 + IL_05b7: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_ImeMode(valuetype [System.Windows.Forms]System.Windows.Forms.ImeMode) + IL_05bc: nop + .line 157,157 : 13,80 '' + IL_05bd: ldarg.0 + IL_05be: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_05c3: ldc.i4.s 20 + IL_05c5: ldc.i4 0x14f + IL_05ca: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_05cf: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_05d4: nop + .line 158,158 : 13,61 '' + IL_05d5: ldarg.0 + IL_05d6: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_05db: ldstr "DescriptionLABEL" + IL_05e0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_05e5: nop + .line 159,159 : 13,75 '' + IL_05e6: ldarg.0 + IL_05e7: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_05ec: ldc.i4 0x24a + IL_05f1: ldc.i4.s 53 + IL_05f3: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_05f8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_05fd: nop + .line 160,160 : 13,49 '' + IL_05fe: ldarg.0 + IL_05ff: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_0604: ldc.i4.s 12 + IL_0606: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_060b: nop + .line 161,161 : 13,50 '' + IL_060c: ldarg.0 + IL_060d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_0612: ldstr "(...)" + IL_0617: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_061c: nop + .line 165,165 : 13,70 '' + IL_061d: ldarg.0 + IL_061e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0623: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0628: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_062d: nop + .line 166,166 : 13,135 '' + IL_062e: ldarg.0 + IL_062f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0634: ldc.i4 0xff + IL_0639: ldc.i4 0xe0 + IL_063e: ldc.i4 0xc0 + IL_0643: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0648: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_Color(valuetype [System.Drawing]System.Drawing.Color) + IL_064d: nop + .line 167,167 : 13,154 '' + IL_064e: ldarg.0 + IL_064f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0654: ldstr "Tahoma" + IL_0659: ldc.r4 8.25 + IL_065e: ldc.i4.1 + IL_065f: ldc.i4.3 + IL_0660: ldc.i4 0xee + IL_0665: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_066a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_066f: nop + .line 168,168 : 13,64 '' + IL_0670: ldarg.0 + IL_0671: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0676: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Black() + IL_067b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0680: nop + .line 169,169 : 13,70 '' + IL_0681: ldarg.0 + IL_0682: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0687: ldc.i4.s 12 + IL_0689: ldc.i4 0x135 + IL_068e: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0693: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0698: nop + .line 170,170 : 13,72 '' + IL_0699: ldarg.0 + IL_069a: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_069f: ldc.i4 0x12c + IL_06a4: ldc.i4.s 20 + IL_06a6: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_06ab: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_06b0: nop + .line 171,171 : 13,41 '' + IL_06b1: ldarg.0 + IL_06b2: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_06b7: ldstr "panel2" + IL_06bc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_06c1: nop + .line 172,172 : 13,53 '' + IL_06c2: ldarg.0 + IL_06c3: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_06c8: ldstr "Description" + IL_06cd: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_SectionName(string) + IL_06d2: nop + .line 173,173 : 13,65 '' + IL_06d3: ldarg.0 + IL_06d4: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_06d9: ldc.i4 0x21f + IL_06de: ldc.i4.s 20 + IL_06e0: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_06e5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_06ea: nop + .line 174,174 : 13,39 '' + IL_06eb: ldarg.0 + IL_06ec: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_06f1: ldc.i4.s 17 + IL_06f3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_06f8: nop + .line 178,178 : 13,47 '' + IL_06f9: ldarg.0 + IL_06fa: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_06ff: ldc.i4.1 + IL_0700: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_0705: nop + .line 179,179 : 13,47 '' + IL_0706: ldarg.0 + IL_0707: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_070c: ldc.i4.0 + IL_070d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_0712: nop + .line 180,180 : 13,80 '' + IL_0713: ldarg.0 + IL_0714: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0719: ldc.i4.0 + IL_071a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_ImeMode(valuetype [System.Windows.Forms]System.Windows.Forms.ImeMode) + IL_071f: nop + .line 181,181 : 13,77 '' + IL_0720: ldarg.0 + IL_0721: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0726: ldc.i4 0x231 + IL_072b: ldc.i4 0x139 + IL_0730: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0735: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_073a: nop + .line 182,182 : 13,53 '' + IL_073b: ldarg.0 + IL_073c: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0741: ldstr "HomePageLBTN" + IL_0746: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_074b: nop + .line 183,183 : 13,70 '' + IL_074c: ldarg.0 + IL_074d: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0752: ldc.i4.s 58 + IL_0754: ldc.i4.s 13 + IL_0756: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_075b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0760: nop + .line 184,184 : 13,45 '' + IL_0761: ldarg.0 + IL_0762: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0767: ldc.i4.s 18 + IL_0769: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_076e: nop + .line 185,185 : 13,46 '' + IL_076f: ldarg.0 + IL_0770: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0775: ldc.i4.1 + IL_0776: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_TabStop(bool) + IL_077b: nop + .line 186,186 : 13,49 '' + IL_077c: ldarg.0 + IL_077d: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0782: ldstr "Homepage" + IL_0787: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_078c: nop + .line 190,190 : 13,74 '' + IL_078d: ldarg.0 + IL_078e: ldc.r4 6. + IL_0793: ldc.r4 13. + IL_0798: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_079d: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + IL_07a2: nop + .line 191,191 : 13,74 '' + IL_07a3: ldarg.0 + IL_07a4: ldc.i4.1 + IL_07a5: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + IL_07aa: nop + .line 192,192 : 13,77 '' + IL_07ab: ldarg.0 + IL_07ac: ldc.i4.1 + IL_07ad: call instance void [System.Windows.Forms]System.Windows.Forms.UserControl::set_BorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.BorderStyle) + IL_07b2: nop + .line 193,193 : 13,50 '' + IL_07b3: ldarg.0 + IL_07b4: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_07b9: ldarg.0 + IL_07ba: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_07bf: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_07c4: nop + .line 194,194 : 13,44 '' + IL_07c5: ldarg.0 + IL_07c6: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_07cb: ldarg.0 + IL_07cc: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_07d1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_07d6: nop + .line 195,195 : 13,53 '' + IL_07d7: ldarg.0 + IL_07d8: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_07dd: ldarg.0 + IL_07de: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_07e3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_07e8: nop + .line 196,196 : 13,54 '' + IL_07e9: ldarg.0 + IL_07ea: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_07ef: ldarg.0 + IL_07f0: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_07f5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_07fa: nop + .line 197,197 : 13,50 '' + IL_07fb: ldarg.0 + IL_07fc: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0801: ldarg.0 + IL_0802: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0807: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_080c: nop + .line 198,198 : 13,44 '' + IL_080d: ldarg.0 + IL_080e: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0813: ldarg.0 + IL_0814: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_0819: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_081e: nop + .line 199,199 : 13,49 '' + IL_081f: ldarg.0 + IL_0820: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0825: ldarg.0 + IL_0826: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_082b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0830: nop + .line 200,200 : 13,54 '' + IL_0831: ldarg.0 + IL_0832: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0837: ldarg.0 + IL_0838: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_083d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0842: nop + .line 201,201 : 13,51 '' + IL_0843: ldarg.0 + IL_0844: ldstr "PluginManagementContent" + IL_0849: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_084e: nop + .line 202,202 : 13,59 '' + IL_084f: ldarg.0 + IL_0850: ldc.i4 0x316 + IL_0855: ldc.i4 0x18e + IL_085a: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_085f: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0864: nop + .line 203,203 : 13,86 '' + IL_0865: ldarg.0 + IL_0866: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_086b: callvirt instance void [System]System.ComponentModel.ISupportInitialize::EndInit() + IL_0870: nop + .line 204,204 : 13,38 '' + IL_0871: ldarg.0 + IL_0872: ldc.i4.0 + IL_0873: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_0878: nop + .line 205,205 : 13,34 '' + IL_0879: ldarg.0 + IL_087a: call instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + IL_087f: nop + .line 207,207 : 9,10 '' + IL_0880: ret + } // end of method PluginManagementContent::InitializeComponent + + .method private hidebysig instance void + 'b__0'() cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 10 (0xa) + .maxstack 8 + .line 44,44 : 51,52 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\PluginManagementContent.cs' + IL_0000: nop + .line 44,44 : 53,66 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnShow(bool) + IL_0008: pop + IL_0009: ret + } // end of method PluginManagementContent::'b__0' + +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.RemotableForm + extends [System.Windows.Forms]System.Windows.Forms.Form +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 29,29 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\RemotableForm.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Form::.ctor() + IL_0006: nop + .line 29,29 : 34,35 '' + IL_0007: nop + .line 29,29 : 36,37 '' + IL_0008: nop + IL_0009: ret + } // end of method RemotableForm::.ctor + + .method public hidebysig virtual instance object + InitializeLifetimeService() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] object CS$1$0000) + .line 36,36 : 9,10 '' + IL_0000: nop + .line 37,37 : 13,25 '' + IL_0001: ldnull + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 38,38 : 9,10 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method RemotableForm::InitializeLifetimeService + +} // end of class Virtuoso.Miranda.Plugins.Forms.RemotableForm + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.PluginDialog + extends Virtuoso.Miranda.Plugins.Forms.RemotableForm +{ + .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass2' + extends [mscorlib]System.Object + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field public class Virtuoso.Miranda.Plugins.Forms.PluginDialog dialog + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method '<>c__DisplayClass2'::.ctor + + .method public hidebysig instance void + 'b__0'() cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 99,99 : 66,67 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\PluginDialog.cs' + IL_0000: nop + .line 99,99 : 68,85 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Forms.PluginDialog Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::dialog + IL_0007: callvirt instance void [System]System.ComponentModel.Component::Dispose() + IL_000c: nop + IL_000d: ret + } // end of method '<>c__DisplayClass2'::'b__0' + + } // end of class '<>c__DisplayClass2' + + .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass5' + extends [mscorlib]System.Object + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field public class [mscorlib]System.Threading.ParameterizedThreadStart threadStart + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method '<>c__DisplayClass5'::.ctor + + .method public hidebysig instance void + 'b__4'(object _state) cil managed + { + // Code size 59 (0x3b) + .maxstack 2 + .line 146,146 : 17,18 '' + IL_0000: nop + .line 148,148 : 21,22 '' + .try + { + IL_0001: nop + .line 149,149 : 25,84 '' + IL_0002: ldnull + IL_0003: ldftn void Virtuoso.Miranda.Plugins.Forms.PluginDialog::Application_ThreadException(object, + class [System]System.Threading.ThreadExceptionEventArgs) + IL_0009: newobj instance void [System]System.Threading.ThreadExceptionEventHandler::.ctor(object, + native int) + IL_000e: call void [System.Windows.Forms]System.Windows.Forms.Application::add_ThreadException(class [System]System.Threading.ThreadExceptionEventHandler) + IL_0013: nop + .line 150,150 : 25,45 '' + IL_0014: ldarg.0 + IL_0015: ldfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5'::threadStart + IL_001a: ldarg.1 + IL_001b: callvirt instance void [mscorlib]System.Threading.ParameterizedThreadStart::Invoke(object) + IL_0020: nop + .line 151,151 : 21,22 '' + IL_0021: nop + IL_0022: leave.s IL_0039 + + .line 153,153 : 21,22 '' + } // end .try + finally + { + IL_0024: nop + .line 154,154 : 25,84 '' + IL_0025: ldnull + IL_0026: ldftn void Virtuoso.Miranda.Plugins.Forms.PluginDialog::Application_ThreadException(object, + class [System]System.Threading.ThreadExceptionEventArgs) + IL_002c: newobj instance void [System]System.Threading.ThreadExceptionEventHandler::.ctor(object, + native int) + IL_0031: call void [System.Windows.Forms]System.Windows.Forms.Application::remove_ThreadException(class [System]System.Threading.ThreadExceptionEventHandler) + IL_0036: nop + .line 155,155 : 21,22 '' + IL_0037: nop + IL_0038: endfinally + } // end handler + IL_0039: nop + IL_003a: ret + } // end of method '<>c__DisplayClass5'::'b__4' + + } // end of class '<>c__DisplayClass5' + + .field private static initonly class [mscorlib]System.Collections.Generic.List`1 ActiveDialogs + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 40,40 : 9,33 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Forms.RemotableForm::.ctor() + IL_0006: nop + .line 40,40 : 34,35 '' + IL_0007: nop + .line 40,40 : 36,37 '' + IL_0008: nop + IL_0009: ret + } // end of method PluginDialog::.ctor + + .method family hidebysig virtual instance void + OnShown(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 47,47 : 9,10 '' + IL_0000: nop + .line 48,48 : 13,30 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::RegisterDialog() + IL_0007: nop + .line 49,49 : 13,29 '' + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: call instance void [System.Windows.Forms]System.Windows.Forms.Form::OnShown(class [mscorlib]System.EventArgs) + IL_000f: nop + .line 50,50 : 9,10 '' + IL_0010: ret + } // end of method PluginDialog::OnShown + + .method family hidebysig virtual instance void + OnClosed(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 53,53 : 9,10 '' + IL_0000: nop + .line 54,54 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterDialog() + IL_0007: nop + .line 55,55 : 13,30 '' + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: call instance void [System.Windows.Forms]System.Windows.Forms.Form::OnClosed(class [mscorlib]System.EventArgs) + IL_000f: nop + .line 56,56 : 9,10 '' + IL_0010: ret + } // end of method PluginDialog::OnClosed + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 59,59 : 9,10 '' + IL_0000: nop + .line 60,60 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterDialog() + IL_0007: nop + .line 61,61 : 13,37 '' + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Dispose(bool) + IL_000f: nop + .line 62,62 : 9,10 '' + IL_0010: ret + } // end of method PluginDialog::Dispose + + .method family hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + get_Context() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext CS$1$0000) + .line 70,70 : 17,18 '' + IL_0000: nop + .line 70,70 : 19,49 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 70,70 : 50,51 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method PluginDialog::get_Context + + .method assembly hidebysig newslot strict virtual + instance void RegisterDialog() cil managed + { + // Code size 38 (0x26) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 CS$2$0000) + .line 78,78 : 9,10 '' + IL_0000: nop + .line 79,79 : 13,33 '' + IL_0001: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 80,80 : 17,41 '' + .try + { + IL_000e: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_0013: ldarg.0 + IL_0014: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0019: nop + IL_001a: leave.s IL_0024 + + } // end .try + finally + { + IL_001c: ldloc.0 + IL_001d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0022: nop + IL_0023: endfinally + } // end handler + IL_0024: nop + .line 81,81 : 9,10 '' + IL_0025: ret + } // end of method PluginDialog::RegisterDialog + + .method assembly hidebysig newslot strict virtual + instance void UnregisterDialog() cil managed + { + // Code size 38 (0x26) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 CS$2$0000) + .line 87,87 : 9,10 '' + IL_0000: nop + .line 88,88 : 13,33 '' + IL_0001: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 89,89 : 17,44 '' + .try + { + IL_000e: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_0013: ldarg.0 + IL_0014: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_0019: pop + IL_001a: leave.s IL_0024 + + } // end .try + finally + { + IL_001c: ldloc.0 + IL_001d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0022: nop + IL_0023: endfinally + } // end handler + IL_0024: nop + .line 90,90 : 9,10 '' + IL_0025: ret + } // end of method PluginDialog::UnregisterDialog + + .method public hidebysig static void CloseDialogs(class Virtuoso.Miranda.Plugins.PluginDescriptor owner, + bool force) cil managed + { + // Code size 149 (0x95) + .maxstack 3 + .locals init ([0] class [System.Windows.Forms]System.Windows.Forms.MethodInvoker 'CS$<>9__CachedAnonymousMethodDelegate1', + [1] class Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2' 'CS$<>8__locals3', + [2] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000, + [3] bool CS$4$0001) + .line 93,93 : 9,10 '' + IL_0000: nop + .line 94,94 : 13,20 '' + IL_0001: nop + .line 94,94 : 45,81 '' + IL_0002: ldarg.0 + IL_0003: call class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterAndGetActiveDialogs(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0008: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_000d: stloc.2 + .try + { + IL_000e: br.s IL_0077 + + IL_0010: ldnull + IL_0011: stloc.0 + IL_0012: newobj instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::.ctor() + IL_0017: stloc.1 + .line 94,94 : 22,41 '' + IL_0018: ldloc.1 + IL_0019: ldloca.s CS$5$0000 + IL_001b: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0020: stfld class Virtuoso.Miranda.Plugins.Forms.PluginDialog Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::dialog + .line 95,95 : 13,14 '' + IL_0025: nop + .line 97,97 : 17,18 '' + .try + { + IL_0026: nop + .line 98,98 : 21,47 '' + IL_0027: ldloc.1 + IL_0028: ldfld class Virtuoso.Miranda.Plugins.Forms.PluginDialog Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::dialog + IL_002d: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_InvokeRequired() + IL_0032: ldc.i4.0 + IL_0033: ceq + IL_0035: stloc.3 + IL_0036: ldloc.3 + IL_0037: brtrue.s IL_005a + + .line 99,99 : 25,90 '' + IL_0039: ldloc.1 + IL_003a: ldfld class Virtuoso.Miranda.Plugins.Forms.PluginDialog Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::dialog + IL_003f: ldloc.0 + IL_0040: brtrue.s IL_0051 + + IL_0042: ldloc.1 + IL_0043: ldftn instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::'b__0'() + IL_0049: newobj instance void [System.Windows.Forms]System.Windows.Forms.MethodInvoker::.ctor(object, + native int) + IL_004e: stloc.0 + IL_004f: br.s IL_0051 + + IL_0051: ldloc.0 + IL_0052: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::Invoke(class [mscorlib]System.Delegate) + IL_0057: pop + IL_0058: br.s IL_0066 + + .line 101,101 : 25,42 '' + IL_005a: ldloc.1 + IL_005b: ldfld class Virtuoso.Miranda.Plugins.Forms.PluginDialog Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::dialog + IL_0060: callvirt instance void [System]System.ComponentModel.Component::Dispose() + IL_0065: nop + .line 102,102 : 17,18 '' + IL_0066: nop + IL_0067: leave.s IL_0075 + + .line 103,103 : 17,22 '' + } // end .try + catch [mscorlib]System.Object + { + IL_0069: pop + .line 103,103 : 23,24 '' + IL_006a: nop + .line 103,103 : 25,36 '' + IL_006b: ldarg.1 + IL_006c: stloc.3 + IL_006d: ldloc.3 + IL_006e: brtrue.s IL_0072 + + .line 103,103 : 37,43 '' + IL_0070: rethrow + .line 103,103 : 44,45 '' + IL_0072: nop + IL_0073: leave.s IL_0075 + + } // end handler + IL_0075: nop + .line 104,104 : 13,14 '' + IL_0076: nop + .line 94,94 : 42,44 '' + IL_0077: ldloca.s CS$5$0000 + IL_0079: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_007e: stloc.3 + IL_007f: ldloc.3 + IL_0080: brtrue.s IL_0010 + + IL_0082: leave.s IL_0093 + + } // end .try + finally + { + IL_0084: ldloca.s CS$5$0000 + IL_0086: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_008c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0091: nop + IL_0092: endfinally + } // end handler + IL_0093: nop + .line 105,105 : 9,10 '' + IL_0094: ret + } // end of method PluginDialog::CloseDialogs + + .method private hidebysig static class [mscorlib]System.Collections.Generic.List`1 + UnregisterAndGetActiveDialogs(class Virtuoso.Miranda.Plugins.PluginDescriptor plugin) cil managed + { + // Code size 214 (0xd6) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Reflection.Assembly pluginAssembly, + [1] class [mscorlib]System.Collections.Generic.List`1 dialogsToRemove, + [2] class Virtuoso.Miranda.Plugins.Forms.PluginDialog dialog, + [3] class [mscorlib]System.Collections.Generic.List`1 CS$1$0000, + [4] class [mscorlib]System.Collections.Generic.List`1 CS$2$0001, + [5] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0002, + [6] bool CS$4$0003) + .line 113,113 : 9,10 '' + IL_0000: nop + .line 114,114 : 13,72 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0007: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_000c: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0011: stloc.0 + .line 115,115 : 13,76 '' + IL_0012: ldc.i4.2 + IL_0013: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0018: stloc.1 + .line 117,117 : 13,33 '' + IL_0019: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_001e: dup + IL_001f: stloc.s CS$2$0001 + IL_0021: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0026: nop + .line 118,118 : 13,14 '' + .try + { + IL_0027: nop + .line 119,119 : 17,24 '' + IL_0028: nop + .line 119,119 : 49,62 '' + IL_0029: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_002e: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0033: stloc.s CS$5$0002 + .try + { + IL_0035: br.s IL_006b + + .line 119,119 : 26,45 '' + IL_0037: ldloca.s CS$5$0002 + IL_0039: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_003e: stloc.2 + .line 120,120 : 17,18 '' + IL_003f: nop + .line 122,122 : 21,90 '' + IL_0040: ldloc.2 + IL_0041: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_IsDisposed() + IL_0046: brtrue.s IL_0058 + + IL_0048: ldloc.2 + IL_0049: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_004e: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0053: ldloc.0 + IL_0054: ceq + IL_0056: br.s IL_0059 + + IL_0058: ldc.i4.0 + IL_0059: nop + IL_005a: stloc.s CS$4$0003 + IL_005c: ldloc.s CS$4$0003 + IL_005e: brtrue.s IL_0062 + + .line 123,123 : 25,34 '' + IL_0060: br.s IL_006b + + .line 125,125 : 21,49 '' + IL_0062: ldloc.1 + IL_0063: ldloc.2 + IL_0064: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0069: nop + .line 126,126 : 17,18 '' + IL_006a: nop + .line 119,119 : 46,48 '' + IL_006b: ldloca.s CS$5$0002 + IL_006d: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0072: stloc.s CS$4$0003 + IL_0074: ldloc.s CS$4$0003 + IL_0076: brtrue.s IL_0037 + + IL_0078: leave.s IL_0089 + + } // end .try + finally + { + IL_007a: ldloca.s CS$5$0002 + IL_007c: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0082: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0087: nop + IL_0088: endfinally + } // end handler + IL_0089: nop + .line 128,128 : 17,24 '' + IL_008a: nop + .line 128,128 : 49,64 '' + IL_008b: ldloc.1 + IL_008c: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0091: stloc.s CS$5$0002 + .try + { + IL_0093: br.s IL_00a4 + + .line 128,128 : 26,45 '' + IL_0095: ldloca.s CS$5$0002 + IL_0097: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_009c: stloc.2 + .line 129,129 : 21,47 '' + IL_009d: ldloc.2 + IL_009e: callvirt instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterDialog() + IL_00a3: nop + .line 128,128 : 46,48 '' + IL_00a4: ldloca.s CS$5$0002 + IL_00a6: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_00ab: stloc.s CS$4$0003 + IL_00ad: ldloc.s CS$4$0003 + IL_00af: brtrue.s IL_0095 + + IL_00b1: leave.s IL_00c2 + + } // end .try + finally + { + IL_00b3: ldloca.s CS$5$0002 + IL_00b5: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_00bb: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_00c0: nop + IL_00c1: endfinally + } // end handler + IL_00c2: nop + .line 130,130 : 13,14 '' + IL_00c3: nop + IL_00c4: leave.s IL_00cf + + } // end .try + finally + { + IL_00c6: ldloc.s CS$2$0001 + IL_00c8: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00cd: nop + IL_00ce: endfinally + } // end handler + IL_00cf: nop + .line 132,132 : 13,36 '' + IL_00d0: ldloc.1 + IL_00d1: stloc.3 + IL_00d2: br.s IL_00d4 + + .line 133,133 : 9,10 '' + IL_00d4: ldloc.3 + IL_00d5: ret + } // end of method PluginDialog::UnregisterAndGetActiveDialogs + + .method public hidebysig static void ExecuteOnSTAThread(class [mscorlib]System.Threading.ParameterizedThreadStart threadStart) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 136,136 : 9,10 '' + IL_0000: nop + .line 137,137 : 13,51 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: call void Virtuoso.Miranda.Plugins.Forms.PluginDialog::ExecuteOnSTAThread(class [mscorlib]System.Threading.ParameterizedThreadStart, + object) + IL_0008: nop + .line 138,138 : 9,10 '' + IL_0009: ret + } // end of method PluginDialog::ExecuteOnSTAThread + + .method public hidebysig static void ExecuteOnSTAThread(class [mscorlib]System.Threading.ParameterizedThreadStart threadStart, + object state) cil managed + { + // Code size 85 (0x55) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Threading.Thread thread, + [1] class Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5' 'CS$<>8__locals6', + [2] bool CS$4$0000) + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5'::.ctor() + IL_0005: stloc.1 + IL_0006: ldloc.1 + IL_0007: ldarg.0 + IL_0008: stfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5'::threadStart + .line 141,141 : 9,10 '' + IL_000d: nop + .line 142,142 : 13,37 '' + IL_000e: ldloc.1 + IL_000f: ldfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5'::threadStart + IL_0014: ldnull + IL_0015: ceq + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: stloc.2 + IL_001b: ldloc.2 + IL_001c: brtrue.s IL_0029 + + .line 143,143 : 17,64 '' + IL_001e: ldstr "threadStart" + IL_0023: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0028: throw + + .line 145,156 : 13,20 '' + IL_0029: ldloc.1 + IL_002a: ldftn instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5'::'b__4'(object) + IL_0030: newobj instance void [mscorlib]System.Threading.ParameterizedThreadStart::.ctor(object, + native int) + IL_0035: newobj instance void [mscorlib]System.Threading.Thread::.ctor(class [mscorlib]System.Threading.ParameterizedThreadStart) + IL_003a: stloc.0 + .line 158,158 : 13,58 '' + IL_003b: ldloc.0 + IL_003c: ldc.i4.0 + IL_003d: callvirt instance void [mscorlib]System.Threading.Thread::SetApartmentState(valuetype [mscorlib]System.Threading.ApartmentState) + IL_0042: nop + .line 159,159 : 13,40 '' + IL_0043: ldloc.0 + IL_0044: ldc.i4.1 + IL_0045: callvirt instance void [mscorlib]System.Threading.Thread::set_IsBackground(bool) + IL_004a: nop + .line 161,161 : 13,33 '' + IL_004b: ldloc.0 + IL_004c: ldarg.1 + IL_004d: callvirt instance void [mscorlib]System.Threading.Thread::Start(object) + IL_0052: nop + .line 162,162 : 9,10 '' + IL_0053: nop + IL_0054: ret + } // end of method PluginDialog::ExecuteOnSTAThread + + .method private hidebysig static void Application_ThreadException(object sender, + class [System]System.Threading.ThreadExceptionEventArgs e) cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 165,165 : 9,10 '' + IL_0000: nop + .line 166,166 : 13,81 '' + IL_0001: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create() + IL_0006: ldarg.1 + IL_0007: callvirt instance class [mscorlib]System.Exception [System]System.Threading.ThreadExceptionEventArgs::get_Exception() + IL_000c: ldnull + IL_000d: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0012: nop + .line 167,167 : 9,10 '' + IL_0013: ret + } // end of method PluginDialog::Application_ThreadException + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 34,34 : 9,93 '' + IL_0000: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor() + IL_0005: stsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_000a: ret + } // end of method PluginDialog::.cctor + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + Context() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Forms.PluginDialog::get_Context() + } // end of property PluginDialog::Context +} // end of class Virtuoso.Miranda.Plugins.Forms.PluginDialog + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.SingletonDialog + extends Virtuoso.Miranda.Plugins.Forms.PluginDialog +{ + .class auto ansi sealed nested private ShowSingletonInvoker + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method ShowSingletonInvoker::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(bool modal) runtime managed + { + } // end of method ShowSingletonInvoker::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(bool modal, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method ShowSingletonInvoker::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method ShowSingletonInvoker::EndInvoke + + } // end of class ShowSingletonInvoker + + .field private static initonly class [mscorlib]System.Collections.Generic.Dictionary`2 visibleDialogs + .field private string singletonName + .method family hidebysig specialname static + class [mscorlib]System.Collections.Generic.Dictionary`2 + get_VisibleDialogs() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$1$0000) + .line 32,32 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\SingletonDialog.cs' + IL_0000: nop + .line 32,32 : 19,41 '' + IL_0001: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 32,32 : 42,43 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method SingletonDialog::get_VisibleDialogs + + .method family hidebysig specialname instance string + get_SingletonName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 38,38 : 17,18 '' + IL_0000: nop + .line 38,38 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::singletonName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 38,38 : 41,42 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method SingletonDialog::get_SingletonName + + .method private hidebysig specialname instance void + set_SingletonName(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 39,39 : 25,26 '' + IL_0000: nop + .line 39,39 : 27,49 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::singletonName + .line 39,39 : 50,51 '' + IL_0008: ret + } // end of method SingletonDialog::set_SingletonName + + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 46,46 : 9,49 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: call instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::.ctor(string) + IL_0007: nop + .line 46,46 : 50,51 '' + IL_0008: nop + .line 46,46 : 52,53 '' + IL_0009: nop + IL_000a: ret + } // end of method SingletonDialog::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(string name) cil managed + { + // Code size 39 (0x27) + .maxstack 8 + .line 48,48 : 9,47 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::.ctor() + IL_0006: nop + .line 49,49 : 9,10 '' + IL_0007: nop + .line 50,50 : 13,96 '' + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000f: brtrue.s IL_0014 + + IL_0011: ldarg.1 + IL_0012: br.s IL_001f + + IL_0014: ldarg.0 + IL_0015: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_001a: call string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::GetDefaultName(class [mscorlib]System.Type) + IL_001f: nop + IL_0020: stfld string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::singletonName + .line 51,51 : 9,10 '' + IL_0025: nop + IL_0026: ret + } // end of method SingletonDialog::.ctor + + .method assembly hidebysig strict virtual + instance void RegisterDialog() cil managed + { + // Code size 73 (0x49) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000, + [1] bool CS$4$0001) + .line 58,58 : 9,10 '' + IL_0000: nop + .line 59,59 : 13,34 '' + IL_0001: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 60,60 : 13,14 '' + .try + { + IL_000e: nop + .line 61,61 : 17,64 '' + IL_000f: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0014: ldarg.0 + IL_0015: call instance string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_SingletonName() + IL_001a: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_001f: stloc.1 + IL_0020: ldloc.1 + IL_0021: brtrue.s IL_0035 + + .line 62,62 : 21,58 '' + IL_0023: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0028: ldarg.0 + IL_0029: call instance string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_SingletonName() + IL_002e: ldarg.0 + IL_002f: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + IL_0034: nop + .line 63,63 : 13,14 '' + IL_0035: nop + IL_0036: leave.s IL_0040 + + } // end .try + finally + { + IL_0038: ldloc.0 + IL_0039: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_003e: nop + IL_003f: endfinally + } // end handler + IL_0040: nop + .line 65,65 : 13,35 '' + IL_0041: ldarg.0 + IL_0042: call instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::RegisterDialog() + IL_0047: nop + .line 66,66 : 9,10 '' + IL_0048: ret + } // end of method SingletonDialog::RegisterDialog + + .method assembly hidebysig strict virtual + instance void UnregisterDialog() cil managed + { + // Code size 50 (0x32) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000) + .line 69,69 : 9,10 '' + IL_0000: nop + .line 70,70 : 13,34 '' + IL_0001: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 71,71 : 17,54 '' + .try + { + IL_000e: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0013: ldarg.0 + IL_0014: call instance string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_SingletonName() + IL_0019: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::Remove(!0) + IL_001e: pop + IL_001f: leave.s IL_0029 + + } // end .try + finally + { + IL_0021: ldloc.0 + IL_0022: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0027: nop + IL_0028: endfinally + } // end handler + IL_0029: nop + .line 73,73 : 13,37 '' + IL_002a: ldarg.0 + IL_002b: call instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterDialog() + IL_0030: nop + .line 74,74 : 9,10 '' + IL_0031: ret + } // end of method SingletonDialog::UnregisterDialog + + .method public hidebysig static !!TForm + GetSingleton<(Virtuoso.Miranda.Plugins.Forms.PluginDialog) TForm>(bool createIfNeeded) cil managed + { + // Code size 27 (0x1b) + .maxstack 2 + .locals init ([0] !!TForm CS$1$0000) + .line 81,81 : 9,10 '' + IL_0000: nop + .line 82,82 : 13,80 '' + IL_0001: ldarg.0 + IL_0002: ldtoken !!TForm + IL_0007: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000c: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0011: call !!0 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::GetSingleton(bool, + string) + IL_0016: stloc.0 + IL_0017: br.s IL_0019 + + .line 83,83 : 9,10 '' + IL_0019: ldloc.0 + IL_001a: ret + } // end of method SingletonDialog::GetSingleton + + .method public hidebysig static !!TForm + GetSingleton<(Virtuoso.Miranda.Plugins.Forms.PluginDialog) TForm>(bool createIfNeeded, + string name) cil managed + { + // Code size 159 (0x9f) + .maxstack 2 + .locals init ([0] !!TForm CS$1$0000, + [1] bool CS$4$0001, + [2] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0002, + [3] !!TForm CS$0$0003) + .line 86,86 : 9,10 '' + IL_0000: nop + .line 87,87 : 13,44 '' + IL_0001: ldarg.1 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.1 + IL_000b: ldloc.1 + IL_000c: brtrue.s IL_0019 + + .line 88,88 : 17,57 '' + IL_000e: ldstr "name" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 90,90 : 13,34 '' + IL_0019: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_001e: dup + IL_001f: stloc.2 + IL_0020: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0025: nop + .line 91,91 : 13,14 '' + .try + { + IL_0026: nop + .line 92,92 : 17,90 '' + IL_0027: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_002c: ldarg.1 + IL_002d: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0032: brfalse.s IL_0049 + + IL_0034: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0039: ldarg.1 + IL_003a: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_003f: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_IsDisposed() + IL_0044: ldc.i4.0 + IL_0045: ceq + IL_0047: br.s IL_004a + + IL_0049: ldc.i4.0 + IL_004a: nop + IL_004b: stloc.1 + IL_004c: ldloc.1 + IL_004d: brtrue.s IL_007c + + .line 93,93 : 17,18 '' + IL_004f: nop + .line 94,94 : 21,40 '' + IL_0050: ldarg.0 + IL_0051: ldc.i4.0 + IL_0052: ceq + IL_0054: stloc.1 + IL_0055: ldloc.1 + IL_0056: brtrue.s IL_0070 + + .line 95,95 : 25,85 '' + IL_0058: ldtoken !!TForm + IL_005d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0062: ldc.i4.1 + IL_0063: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type, + bool) + IL_0068: unbox.any !!TForm + IL_006d: stloc.0 + IL_006e: leave.s IL_009c + + .line 97,97 : 25,37 '' + IL_0070: ldloca.s CS$0$0003 + IL_0072: initobj !!TForm + IL_0078: ldloc.3 + IL_0079: stloc.0 + IL_007a: leave.s IL_009c + + .line 100,100 : 21,58 '' + IL_007c: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0081: ldarg.1 + IL_0082: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0087: isinst !!TForm + IL_008c: unbox.any !!TForm + IL_0091: stloc.0 + IL_0092: leave.s IL_009c + + } // end .try + finally + { + IL_0094: ldloc.2 + IL_0095: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_009a: nop + IL_009b: endfinally + } // end handler + IL_009c: nop + .line 102,102 : 9,10 '' + IL_009d: ldloc.0 + IL_009e: ret + } // end of method SingletonDialog::GetSingleton + + .method public hidebysig instance void + ShowSingleton(bool modal) cil managed + { + // Code size 61 (0x3d) + .maxstack 5 + .locals init ([0] bool CS$4$0000, + [1] object[] CS$0$0001) + .line 107,107 : 9,10 '' + IL_0000: nop + .line 108,108 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_InvokeRequired() + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0034 + + .line 109,109 : 17,74 '' + IL_000e: ldarg.0 + IL_000f: ldarg.0 + IL_0010: ldftn instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::DoShowSingleton(bool) + IL_0016: newobj instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog/ShowSingletonInvoker::.ctor(object, + native int) + IL_001b: ldc.i4.1 + IL_001c: newarr [mscorlib]System.Object + IL_0021: stloc.1 + IL_0022: ldloc.1 + IL_0023: ldc.i4.0 + IL_0024: ldarg.1 + IL_0025: box [mscorlib]System.Boolean + IL_002a: stelem.ref + IL_002b: ldloc.1 + IL_002c: call instance object [System.Windows.Forms]System.Windows.Forms.Control::Invoke(class [mscorlib]System.Delegate, + object[]) + IL_0031: pop + IL_0032: br.s IL_003c + + .line 111,111 : 17,40 '' + IL_0034: ldarg.0 + IL_0035: ldarg.1 + IL_0036: call instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::DoShowSingleton(bool) + IL_003b: nop + .line 112,112 : 9,10 '' + IL_003c: ret + } // end of method SingletonDialog::ShowSingleton + + .method private hidebysig instance void + DoShowSingleton(bool modal) cil managed + { + // Code size 48 (0x30) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 115,115 : 9,10 '' + IL_0000: nop + .line 116,116 : 13,25 '' + IL_0001: ldarg.0 + IL_0002: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_Visible() + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0017 + + .line 117,117 : 17,28 '' + IL_000e: ldarg.0 + IL_000f: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Activate() + IL_0014: nop + IL_0015: br.s IL_002f + + .line 118,118 : 18,28 '' + IL_0017: ldarg.1 + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: stloc.0 + IL_001c: ldloc.0 + IL_001d: brtrue.s IL_0028 + + .line 119,119 : 17,30 '' + IL_001f: ldarg.0 + IL_0020: call instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.Form::ShowDialog() + IL_0025: pop + IL_0026: br.s IL_002f + + .line 121,121 : 17,24 '' + IL_0028: ldarg.0 + IL_0029: call instance void [System.Windows.Forms]System.Windows.Forms.Control::Show() + IL_002e: nop + .line 122,122 : 9,10 '' + IL_002f: ret + } // end of method SingletonDialog::DoShowSingleton + + .method public hidebysig static string + GetDefaultName(class [mscorlib]System.Type 'type') cil managed + { + // Code size 34 (0x22) + .maxstack 2 + .locals init ([0] string CS$1$0000, + [1] bool CS$4$0001) + .line 125,125 : 9,10 '' + IL_0000: nop + .line 126,126 : 13,30 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 127,127 : 17,57 '' + IL_000c: ldstr "type" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 129,129 : 13,34 '' + IL_0017: ldarg.0 + IL_0018: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_001d: stloc.0 + IL_001e: br.s IL_0020 + + .line 130,130 : 9,10 '' + IL_0020: ldloc.0 + IL_0021: ret + } // end of method SingletonDialog::GetDefaultName + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 29,29 : 9,129 '' + IL_0000: ldc.i4.1 + IL_0001: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0006: stsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_000b: ret + } // end of method SingletonDialog::.cctor + + .property class [mscorlib]System.Collections.Generic.Dictionary`2 + VisibleDialogs() + { + .get class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_VisibleDialogs() + } // end of property SingletonDialog::VisibleDialogs + .property instance string SingletonName() + { + .get instance string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_SingletonName() + .set instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::set_SingletonName(string) + } // end of property SingletonDialog::SingletonName +} // end of class Virtuoso.Miranda.Plugins.Forms.SingletonDialog + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog + extends Virtuoso.Miranda.Plugins.Forms.SingletonDialog +{ + .field private static literal char PathSeparator = char(0x002F) + .field private bool Ok + .field private class [mscorlib]System.Collections.Generic.List`1 ConfigurableEntities + .field private string[] CurrentPath + .field private string ConfigurationParameter + .field private class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories + .field private class [System]System.ComponentModel.IContainer components + .field private class [System.Windows.Forms]System.Windows.Forms.Panel TopPanel + .field private class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher RibbonPageSwitcher + .field private class [TabStripControlLibrary]RibbonStyle.TabStrip RibbonStrip + .field private class [System.Windows.Forms]System.Windows.Forms.Button CancelBTN + .field private class [System.Windows.Forms]System.Windows.Forms.Button OkBTN + .field private class [System.Windows.Forms]System.Windows.Forms.Panel ControlPanel + .field private class [System.Windows.Forms]System.Windows.Forms.Panel BottomPanel + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader WelcomePanel + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 128 (0x80) + .maxstack 4 + .line 8,8 : 9,68 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\ConfigurationDialog.Designer.cs' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: stfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::components + .line 58,58 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\ConfigurationDialog.cs' + IL_0007: ldarg.0 + IL_0008: call instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::.ctor() + IL_000d: nop + .line 59,59 : 9,10 '' + IL_000e: nop + .line 60,60 : 13,35 '' + IL_000f: ldarg.0 + IL_0010: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::InitializeComponent() + IL_0015: nop + .line 61,61 : 13,119 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_001c: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripRenderer [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Renderer() + IL_0021: castclass [TabStripControlLibrary]RibbonStyle.TabStripProfessionalRenderer + IL_0026: ldc.i4 0xfe + IL_002b: ldc.i4 0xd1 + IL_0030: ldc.i4.s 94 + IL_0032: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0037: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabStripProfessionalRenderer::set_HaloColor(valuetype [System.Drawing]System.Drawing.Color) + IL_003c: nop + .line 62,62 : 13,120 '' + IL_003d: ldarg.0 + IL_003e: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0043: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripRenderer [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Renderer() + IL_0048: castclass [TabStripControlLibrary]RibbonStyle.TabStripProfessionalRenderer + IL_004d: ldc.i4 0xd7 + IL_0052: ldc.i4 0xe3 + IL_0057: ldc.i4 0xf2 + IL_005c: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0061: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabStripProfessionalRenderer::set_BaseColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0066: nop + .line 64,64 : 13,51 '' + IL_0067: ldarg.0 + IL_0068: newobj instance void Virtuoso.Miranda.Plugins.Configuration.CategoryCollection::.ctor() + IL_006d: stfld class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::categories + .line 65,65 : 13,78 '' + IL_0072: ldarg.0 + IL_0073: ldc.i4.5 + IL_0074: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0079: stfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + .line 66,66 : 9,10 '' + IL_007e: nop + IL_007f: ret + } // end of method ConfigurationDialog::.ctor + + .method public hidebysig static void Present(bool modal) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 69,69 : 9,10 '' + IL_0000: nop + .line 70,70 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ldnull + IL_0004: call void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present(bool, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + string) + IL_0009: nop + .line 71,71 : 9,10 '' + IL_000a: ret + } // end of method ConfigurationDialog::Present + + .method public hidebysig static void Present(bool modal, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 74,74 : 9,10 '' + IL_0000: nop + .line 75,75 : 13,42 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldnull + IL_0004: call void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present(bool, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + string) + IL_0009: nop + .line 76,76 : 9,10 '' + IL_000a: ret + } // end of method ConfigurationDialog::Present + + .method public hidebysig static void Present(bool modal, + string path) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 79,79 : 9,10 '' + IL_0000: nop + .line 80,80 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ldarg.1 + IL_0004: call void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present(bool, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + string) + IL_0009: nop + .line 81,81 : 9,10 '' + IL_000a: ret + } // end of method ConfigurationDialog::Present + + .method public hidebysig static void Present(bool modal, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin, + string path) cil managed + { + // Code size 52 (0x34) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog dialog, + [1] bool CS$4$0000) + .line 84,84 : 9,10 '' + IL_0000: nop + .line 85,85 : 13,103 '' + IL_0001: ldc.i4.0 + IL_0002: call !!0 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::GetSingleton(bool) + IL_0007: stloc.0 + .line 87,87 : 13,32 '' + IL_0008: ldloc.0 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.1 + IL_0010: ldloc.1 + IL_0011: brtrue.s IL_002b + + .line 88,88 : 13,14 '' + IL_0013: nop + .line 89,89 : 17,52 '' + IL_0014: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::.ctor() + IL_0019: stloc.0 + .line 91,91 : 17,38 '' + IL_001a: ldloc.0 + IL_001b: ldarg.2 + IL_001c: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::SetPath(string) + IL_0021: nop + .line 92,92 : 17,41 '' + IL_0022: ldloc.0 + IL_0023: ldarg.1 + IL_0024: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Populate(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_0029: nop + .line 93,93 : 13,14 '' + IL_002a: nop + .line 95,95 : 13,41 '' + IL_002b: ldloc.0 + IL_002c: ldarg.0 + IL_002d: callvirt instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::ShowSingleton(bool) + IL_0032: nop + .line 96,96 : 9,10 '' + IL_0033: ret + } // end of method ConfigurationDialog::Present + + .method private hidebysig instance void + OkBTN_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 103,103 : 9,10 '' + IL_0000: nop + .line 104,104 : 13,23 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Ok + .line 105,105 : 13,21 '' + IL_0008: ldarg.0 + IL_0009: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Close() + IL_000e: nop + .line 106,106 : 9,10 '' + IL_000f: ret + } // end of method ConfigurationDialog::OkBTN_Click + + .method private hidebysig instance void + CancelBTN_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 109,109 : 9,10 '' + IL_0000: nop + .line 110,110 : 13,24 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Ok + .line 111,111 : 13,21 '' + IL_0008: ldarg.0 + IL_0009: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Close() + IL_000e: nop + .line 112,112 : 9,10 '' + IL_000f: ret + } // end of method ConfigurationDialog::CancelBTN_Click + + .method private hidebysig instance void + ConfigurationDialog_FormClosing(object sender, + class [System.Windows.Forms]System.Windows.Forms.FormClosingEventArgs e) cil managed + { + // Code size 125 (0x7d) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor descriptor, + [1] bool CS$4$0000, + [2] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001) + .line 115,115 : 9,10 '' + IL_0000: nop + .line 116,116 : 13,50 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Ok + IL_0007: brfalse.s IL_0011 + + IL_0009: ldarg.0 + IL_000a: call instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanDismissActiveControl() + IL_000f: br.s IL_0012 + + IL_0011: ldc.i4.1 + IL_0012: nop + IL_0013: stloc.1 + IL_0014: ldloc.1 + IL_0015: brtrue.s IL_0022 + + .line 117,117 : 13,14 '' + IL_0017: nop + .line 118,118 : 17,33 '' + IL_0018: ldarg.2 + IL_0019: ldc.i4.1 + IL_001a: callvirt instance void [System]System.ComponentModel.CancelEventArgs::set_Cancel(bool) + IL_001f: nop + .line 119,119 : 17,24 '' + IL_0020: br.s IL_007c + + .line 122,122 : 13,20 '' + IL_0022: nop + .line 122,122 : 65,85 '' + IL_0023: ldarg.0 + IL_0024: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0029: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_002e: stloc.2 + .try + { + IL_002f: br.s IL_0047 + + .line 122,122 : 22,61 '' + IL_0031: ldloca.s CS$5$0001 + IL_0033: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0038: stloc.0 + .line 123,123 : 17,48 '' + IL_0039: ldarg.0 + IL_003a: ldloc.0 + IL_003b: ldarg.0 + IL_003c: ldfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Ok + IL_0041: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ProcessChanges(class Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor, + bool) + IL_0046: nop + .line 122,122 : 62,64 '' + IL_0047: ldloca.s CS$5$0001 + IL_0049: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_004e: stloc.1 + IL_004f: ldloc.1 + IL_0050: brtrue.s IL_0031 + + IL_0052: leave.s IL_0063 + + } // end .try + finally + { + IL_0054: ldloca.s CS$5$0001 + IL_0056: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_005c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0061: nop + IL_0062: endfinally + } // end handler + IL_0063: nop + .line 125,125 : 13,20 '' + IL_0064: ldarg.0 + IL_0065: ldfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Ok + IL_006a: ldc.i4.0 + IL_006b: ceq + IL_006d: stloc.1 + IL_006e: ldloc.1 + IL_006f: brtrue.s IL_007c + + .line 126,126 : 17,41 '' + IL_0071: call class Virtuoso.Miranda.Plugins.Properties.Settings Virtuoso.Miranda.Plugins.Properties.Settings::get_Default() + IL_0076: callvirt instance void [System]System.Configuration.SettingsBase::Save() + IL_007b: nop + .line 127,127 : 9,10 '' + IL_007c: ret + } // end of method ConfigurationDialog::ConfigurationDialog_FormClosing + + .method private hidebysig instance void + ProcessChanges(class Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor descriptor, + bool save) cil managed + { + // Code size 250 (0xfa) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.Category category, + [1] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + [2] class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl control, + [3] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration config, + [4] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000, + [5] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001, + [6] bool CS$4$0002, + [7] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$6$0003, + [8] int32 CS$7$0004) + .line 130,130 : 9,10 '' + IL_0000: nop + .line 131,131 : 13,20 '' + IL_0001: nop + .line 131,131 : 43,64 '' + IL_0002: ldarg.1 + IL_0003: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Categories() + IL_0008: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_000d: stloc.s CS$5$0000 + .try + { + IL_000f: br.s IL_008d + + .line 131,131 : 22,39 '' + IL_0011: ldloca.s CS$5$0000 + IL_0013: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0018: stloc.0 + .line 132,132 : 13,14 '' + IL_0019: nop + .line 133,133 : 17,24 '' + IL_001a: nop + .line 133,133 : 47,61 '' + IL_001b: ldloc.0 + IL_001c: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::get_Items() + IL_0021: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0026: stloc.s CS$5$0001 + .try + { + IL_0028: br.s IL_006d + + .line 133,133 : 26,43 '' + IL_002a: ldloca.s CS$5$0001 + IL_002c: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0031: stloc.1 + .line 134,134 : 17,18 '' + IL_0032: nop + .line 135,135 : 21,50 '' + IL_0033: ldloc.1 + IL_0034: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_ControlInitialized() + IL_0039: stloc.s CS$4$0002 + IL_003b: ldloc.s CS$4$0002 + IL_003d: brtrue.s IL_0041 + + .line 136,136 : 25,34 '' + IL_003f: br.s IL_006d + + .line 138,138 : 21,64 '' + IL_0041: ldloc.1 + IL_0042: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Control() + IL_0047: stloc.2 + .line 140,140 : 21,49 '' + IL_0048: ldarg.2 + IL_0049: brfalse.s IL_0056 + + IL_004b: ldloc.2 + IL_004c: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_IsDirty() + IL_0051: ldc.i4.0 + IL_0052: ceq + IL_0054: br.s IL_0057 + + IL_0056: ldc.i4.1 + IL_0057: nop + IL_0058: stloc.s CS$4$0002 + IL_005a: ldloc.s CS$4$0002 + IL_005c: brtrue.s IL_0065 + + .line 141,141 : 25,40 '' + IL_005e: ldloc.2 + IL_005f: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::Save() + IL_0064: nop + .line 143,143 : 21,37 '' + IL_0065: ldloc.2 + IL_0066: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::Close() + IL_006b: nop + .line 144,144 : 17,18 '' + IL_006c: nop + .line 133,133 : 44,46 '' + IL_006d: ldloca.s CS$5$0001 + IL_006f: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0074: stloc.s CS$4$0002 + IL_0076: ldloc.s CS$4$0002 + IL_0078: brtrue.s IL_002a + + IL_007a: leave.s IL_008b + + } // end .try + finally + { + IL_007c: ldloca.s CS$5$0001 + IL_007e: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0084: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0089: nop + IL_008a: endfinally + } // end handler + IL_008b: nop + .line 145,145 : 13,14 '' + IL_008c: nop + .line 131,131 : 40,42 '' + IL_008d: ldloca.s CS$5$0000 + IL_008f: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0094: stloc.s CS$4$0002 + IL_0096: ldloc.s CS$4$0002 + IL_0098: brtrue IL_0011 + + IL_009d: leave.s IL_00ae + + } // end .try + finally + { + IL_009f: ldloca.s CS$5$0000 + IL_00a1: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_00a7: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_00ac: nop + IL_00ad: endfinally + } // end handler + IL_00ae: nop + .line 147,147 : 13,22 '' + IL_00af: ldarg.2 + IL_00b0: ldc.i4.0 + IL_00b1: ceq + IL_00b3: stloc.s CS$4$0002 + IL_00b5: ldloc.s CS$4$0002 + IL_00b7: brtrue.s IL_00f9 + + .line 148,148 : 13,14 '' + IL_00b9: nop + .line 149,149 : 17,24 '' + IL_00ba: nop + .line 149,149 : 56,87 '' + IL_00bb: ldarg.1 + IL_00bc: callvirt instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin() + IL_00c1: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Configuration() + IL_00c6: stloc.s CS$6$0003 + IL_00c8: ldc.i4.0 + IL_00c9: stloc.s CS$7$0004 + IL_00cb: br.s IL_00ea + + .line 149,149 : 26,52 '' + IL_00cd: ldloc.s CS$6$0003 + IL_00cf: ldloc.s CS$7$0004 + IL_00d1: ldelem.ref + IL_00d2: stloc.3 + .line 150,150 : 21,40 '' + IL_00d3: ldloc.3 + IL_00d4: ldnull + IL_00d5: ceq + IL_00d7: stloc.s CS$4$0002 + IL_00d9: ldloc.s CS$4$0002 + IL_00db: brtrue.s IL_00e4 + + .line 151,151 : 25,39 '' + IL_00dd: ldloc.3 + IL_00de: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save() + IL_00e3: nop + IL_00e4: ldloc.s CS$7$0004 + IL_00e6: ldc.i4.1 + IL_00e7: add + IL_00e8: stloc.s CS$7$0004 + .line 149,149 : 53,55 '' + IL_00ea: ldloc.s CS$7$0004 + IL_00ec: ldloc.s CS$6$0003 + IL_00ee: ldlen + IL_00ef: conv.i4 + IL_00f0: clt + IL_00f2: stloc.s CS$4$0002 + IL_00f4: ldloc.s CS$4$0002 + IL_00f6: brtrue.s IL_00cd + + .line 152,152 : 13,14 '' + IL_00f8: nop + .line 153,153 : 9,10 '' + IL_00f9: ret + } // end of method ConfigurationDialog::ProcessChanges + + .method public hidebysig static string + CreatePath(class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin, + string category, + string item) cil managed + { + // Code size 15 (0xf) + .maxstack 4 + .locals init ([0] string CS$1$0000) + .line 162,162 : 9,10 '' + IL_0000: nop + .line 163,163 : 13,61 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldnull + IL_0005: call string Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreatePath(class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + string, + string, + string) + IL_000a: stloc.0 + IL_000b: br.s IL_000d + + .line 164,164 : 9,10 '' + IL_000d: ldloc.0 + IL_000e: ret + } // end of method ConfigurationDialog::CreatePath + + .method public hidebysig static string + CreatePath(class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin, + string category, + string item, + string parameter) cil managed + { + // Code size 137 (0x89) + .maxstack 5 + .locals init ([0] string CS$1$0000, + [1] bool CS$4$0001, + [2] object[] CS$0$0002, + [3] char CS$0$0003) + .line 167,167 : 9,10 '' + IL_0000: nop + .line 168,168 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 169,169 : 17,59 '' + IL_000c: ldstr "plugin" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 171,171 : 13,48 '' + IL_0017: ldarg.1 + IL_0018: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.1 + IL_0021: ldloc.1 + IL_0022: brtrue.s IL_002f + + .line 172,172 : 17,61 '' + IL_0024: ldstr "category" + IL_0029: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002e: throw + + .line 174,174 : 13,44 '' + IL_002f: ldarg.2 + IL_0030: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0035: ldc.i4.0 + IL_0036: ceq + IL_0038: stloc.1 + IL_0039: ldloc.1 + IL_003a: brtrue.s IL_0047 + + .line 175,175 : 17,57 '' + IL_003c: ldstr "item" + IL_0041: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0046: throw + + .line 177,177 : 13,143 '' + IL_0047: ldstr "{1}{0}{2}{0}{3}{0}{4}" + IL_004c: ldc.i4.5 + IL_004d: newarr [mscorlib]System.Object + IL_0052: stloc.2 + IL_0053: ldloc.2 + IL_0054: ldc.i4.0 + IL_0055: ldc.i4.s 47 + IL_0057: stloc.3 + IL_0058: ldloca.s CS$0$0003 + IL_005a: call instance string [mscorlib]System.Char::ToString() + IL_005f: stelem.ref + IL_0060: ldloc.2 + IL_0061: ldc.i4.1 + IL_0062: ldarg.0 + IL_0063: callvirt instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + IL_0068: stelem.ref + IL_0069: ldloc.2 + IL_006a: ldc.i4.2 + IL_006b: ldarg.1 + IL_006c: stelem.ref + IL_006d: ldloc.2 + IL_006e: ldc.i4.3 + IL_006f: ldarg.2 + IL_0070: stelem.ref + IL_0071: ldloc.2 + IL_0072: ldc.i4.4 + IL_0073: ldarg.3 + IL_0074: dup + IL_0075: brtrue.s IL_007d + + IL_0077: pop + IL_0078: ldsfld string [mscorlib]System.String::Empty + IL_007d: stelem.ref + IL_007e: ldloc.2 + IL_007f: call string [mscorlib]System.String::Format(string, + object[]) + IL_0084: stloc.0 + IL_0085: br.s IL_0087 + + .line 178,178 : 9,10 '' + IL_0087: ldloc.0 + IL_0088: ret + } // end of method ConfigurationDialog::CreatePath + + .method private hidebysig instance void + SetPath(string path) cil managed + { + // Code size 101 (0x65) + .maxstack 5 + .locals init ([0] bool CS$4$0000, + [1] char[] CS$0$0001) + .line 181,181 : 9,10 '' + IL_0000: nop + .line 182,182 : 13,44 '' + IL_0001: ldarg.1 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0010 + + .line 183,183 : 17,24 '' + IL_000e: br.s IL_0064 + + .line 185,185 : 13,53 '' + IL_0010: ldarg.0 + IL_0011: ldarg.1 + IL_0012: ldc.i4.1 + IL_0013: newarr [mscorlib]System.Char + IL_0018: stloc.1 + IL_0019: ldloc.1 + IL_001a: ldc.i4.0 + IL_001b: ldc.i4.s 47 + IL_001d: stelem.i2 + IL_001e: ldloc.1 + IL_001f: callvirt instance string[] [mscorlib]System.String::Split(char[]) + IL_0024: stfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + .line 187,187 : 13,41 '' + IL_0029: ldarg.0 + IL_002a: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_002f: ldlen + IL_0030: conv.i4 + IL_0031: ldc.i4.4 + IL_0032: ceq + IL_0034: stloc.0 + IL_0035: ldloc.0 + IL_0036: brtrue.s IL_0043 + + .line 188,188 : 17,63 '' + IL_0038: ldstr "path" + IL_003d: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0042: throw + + .line 190,190 : 13,101 '' + IL_0043: ldarg.0 + IL_0044: ldarg.0 + IL_0045: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_004a: ldc.i4.3 + IL_004b: ldelem.ref + IL_004c: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0051: brtrue.s IL_005d + + IL_0053: ldarg.0 + IL_0054: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_0059: ldc.i4.3 + IL_005a: ldelem.ref + IL_005b: br.s IL_005e + + IL_005d: ldnull + IL_005e: nop + IL_005f: stfld string Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurationParameter + .line 191,191 : 9,10 '' + IL_0064: ret + } // end of method ConfigurationDialog::SetPath + + .method private hidebysig instance bool + CanNavigateTo(class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin, + class Virtuoso.Miranda.Plugins.Configuration.Category category) cil managed + { + // Code size 114 (0x72) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 194,194 : 9,10 '' + IL_0000: nop + .line 195,195 : 13,32 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 196,196 : 17,59 '' + IL_000c: ldstr "plugin" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 198,198 : 13,34 '' + IL_0017: ldarg.2 + IL_0018: ldnull + IL_0019: ceq + IL_001b: ldc.i4.0 + IL_001c: ceq + IL_001e: stloc.1 + IL_001f: ldloc.1 + IL_0020: brtrue.s IL_002d + + .line 199,199 : 17,61 '' + IL_0022: ldstr "category" + IL_0027: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002c: throw + + .line 201,201 : 13,37 '' + IL_002d: ldarg.0 + IL_002e: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_0033: ldnull + IL_0034: ceq + IL_0036: ldc.i4.0 + IL_0037: ceq + IL_0039: stloc.1 + IL_003a: ldloc.1 + IL_003b: brtrue.s IL_0041 + + .line 202,202 : 17,30 '' + IL_003d: ldc.i4.0 + IL_003e: stloc.0 + IL_003f: br.s IL_0070 + + .line 204,204 : 13,87 '' + IL_0041: ldarg.0 + IL_0042: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_0047: ldc.i4.0 + IL_0048: ldelem.ref + IL_0049: ldarg.1 + IL_004a: callvirt instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + IL_004f: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0054: brfalse.s IL_006b + + IL_0056: ldarg.0 + IL_0057: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_005c: ldc.i4.1 + IL_005d: ldelem.ref + IL_005e: ldarg.2 + IL_005f: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.Category::get_Name() + IL_0064: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0069: br.s IL_006c + + IL_006b: ldc.i4.0 + IL_006c: nop + IL_006d: stloc.0 + IL_006e: br.s IL_0070 + + .line 205,205 : 9,10 '' + IL_0070: ldloc.0 + IL_0071: ret + } // end of method ConfigurationDialog::CanNavigateTo + + .method private hidebysig instance bool + CanNavigateTo(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item) cil managed + { + // Code size 67 (0x43) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 208,208 : 9,10 '' + IL_0000: nop + .line 209,209 : 13,30 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 210,210 : 17,57 '' + IL_000c: ldstr "item" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 212,212 : 13,37 '' + IL_0017: ldarg.0 + IL_0018: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_001d: ldnull + IL_001e: ceq + IL_0020: ldc.i4.0 + IL_0021: ceq + IL_0023: stloc.1 + IL_0024: ldloc.1 + IL_0025: brtrue.s IL_002b + + .line 213,213 : 17,30 '' + IL_0027: ldc.i4.0 + IL_0028: stloc.0 + IL_0029: br.s IL_0041 + + .line 215,215 : 13,48 '' + IL_002b: ldarg.0 + IL_002c: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_0031: ldc.i4.2 + IL_0032: ldelem.ref + IL_0033: ldarg.1 + IL_0034: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Name() + IL_0039: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_003e: stloc.0 + IL_003f: br.s IL_0041 + + .line 216,216 : 9,10 '' + IL_0041: ldloc.0 + IL_0042: ret + } // end of method ConfigurationDialog::CanNavigateTo + + .method private hidebysig instance void + Populate(class Virtuoso.Miranda.Plugins.IConfigurablePlugin pluginToPopulate) cil managed + { + // Code size 160 (0xa0) + .maxstack 4 + .locals init ([0] bool CS$4$0000) + .line 223,223 : 9,10 '' + IL_0000: nop + .line 224,224 : 13,42 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0007: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Clear() + IL_000c: nop + .line 226,226 : 13,60 '' + IL_000d: ldarg.0 + IL_000e: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0013: ldnull + IL_0014: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPageSwitcher::set_SelectedTabStripPage(class [TabStripControlLibrary]RibbonStyle.TabStripPage) + IL_0019: nop + .line 227,227 : 13,39 '' + IL_001a: ldarg.0 + IL_001b: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0020: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0025: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Clear() + IL_002a: nop + .line 229,229 : 13,42 '' + IL_002b: ldarg.1 + IL_002c: ldnull + IL_002d: ceq + IL_002f: ldc.i4.0 + IL_0030: ceq + IL_0032: stloc.0 + IL_0033: ldloc.0 + IL_0034: brtrue.s IL_0062 + + .line 230,230 : 13,14 '' + IL_0036: nop + .line 231,231 : 17,47 '' + IL_0037: ldarg.0 + IL_0038: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateHyphenConfiguration() + IL_003d: nop + .line 233,233 : 17,66 '' + IL_003e: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0043: callvirt instance bool [mscorlib]System.AppDomain::IsDefaultAppDomain() + IL_0048: ldc.i4.0 + IL_0049: ceq + IL_004b: stloc.0 + IL_004c: ldloc.0 + IL_004d: brtrue.s IL_0058 + + .line 234,234 : 21,49 '' + IL_004f: ldarg.0 + IL_0050: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateStandalonePlugins() + IL_0055: nop + IL_0056: br.s IL_005f + + .line 236,236 : 21,47 '' + IL_0058: ldarg.0 + IL_0059: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateIsolatedPlugins() + IL_005e: nop + .line 237,237 : 13,14 '' + IL_005f: nop + IL_0060: br.s IL_0098 + + .line 239,239 : 13,14 '' + IL_0062: nop + .line 240,240 : 17,94 '' + IL_0063: ldarg.0 + IL_0064: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0069: ldarg.1 + IL_006a: newobj instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_006f: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0074: nop + .line 241,241 : 17,72 '' + IL_0075: ldarg.0 + IL_0076: dup + IL_0077: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_007c: ldstr " : {0}" + IL_0081: ldarg.1 + IL_0082: callvirt instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + IL_0087: call string [mscorlib]System.String::Format(string, + object) + IL_008c: call string [mscorlib]System.String::Concat(string, + string) + IL_0091: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0096: nop + .line 242,242 : 13,14 '' + IL_0097: nop + .line 244,244 : 13,29 '' + IL_0098: ldarg.0 + IL_0099: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateItems() + IL_009e: nop + .line 245,245 : 9,10 '' + IL_009f: ret + } // end of method ConfigurationDialog::Populate + + .method private hidebysig instance void + PopulateItems() cil managed + { + // Code size 168 (0xa8) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories, + [1] int32 i, + [2] class Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor descriptor, + [3] class [TabStripControlLibrary]RibbonStyle.TabStripPage page, + [4] int32 j, + [5] class Virtuoso.Miranda.Plugins.Configuration.Category category, + [6] bool CS$4$0000) + .line 248,248 : 9,10 '' + IL_0000: nop + .line 249,249 : 13,50 '' + IL_0001: ldnull + IL_0002: stloc.0 + .line 251,251 : 18,28 '' + IL_0003: ldc.i4.0 + IL_0004: stloc.1 + IL_0005: br IL_0090 + + .line 252,252 : 13,14 '' + IL_000a: nop + .line 253,253 : 17,83 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0011: ldloc.1 + IL_0012: callvirt instance !0 class [mscorlib]System.Collections.Generic.List`1::get_Item(int32) + IL_0017: stloc.2 + .line 254,254 : 17,99 '' + IL_0018: ldarg.0 + IL_0019: ldloc.0 + IL_001a: ldloc.2 + IL_001b: callvirt instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin() + IL_0020: ldloc.1 + IL_0021: call instance class [TabStripControlLibrary]RibbonStyle.TabStripPage Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreateAndRegisterEntityPage(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + int32) + IL_0026: stloc.3 + .line 256,256 : 17,81 '' + IL_0027: ldloc.2 + IL_0028: newobj instance void Virtuoso.Miranda.Plugins.Configuration.CategoryCollection::.ctor() + IL_002d: dup + IL_002e: stloc.0 + IL_002f: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::set_Categories(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection) + IL_0034: nop + .line 257,257 : 17,69 '' + IL_0035: ldloc.2 + IL_0036: callvirt instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin() + IL_003b: ldloc.0 + IL_003c: callvirt instance void Virtuoso.Miranda.Plugins.IConfigurablePlugin::PopulateConfiguration(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection) + IL_0041: nop + .line 259,259 : 22,32 '' + IL_0042: ldc.i4.0 + IL_0043: stloc.s j + IL_0045: br.s IL_007b + + .line 260,260 : 17,18 '' + IL_0047: nop + .line 261,261 : 21,55 '' + IL_0048: ldloc.0 + IL_0049: ldloc.s j + IL_004b: callvirt instance !0 class [mscorlib]System.Collections.Generic.List`1::get_Item(int32) + IL_0050: stloc.s category + .line 263,263 : 21,42 '' + IL_0052: ldloc.s category + IL_0054: ldnull + IL_0055: ceq + IL_0057: ldc.i4.0 + IL_0058: ceq + IL_005a: stloc.s CS$4$0000 + IL_005c: ldloc.s CS$4$0000 + IL_005e: brtrue.s IL_0062 + + .line 264,264 : 25,34 '' + IL_0060: br.s IL_0075 + + .line 266,266 : 21,81 '' + IL_0062: ldarg.0 + IL_0063: ldloc.3 + IL_0064: ldloc.s category + IL_0066: ldloc.2 + IL_0067: callvirt instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin() + IL_006c: ldloc.s j + IL_006e: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateCategoryPanel(class [TabStripControlLibrary]RibbonStyle.TabStripPage, + class Virtuoso.Miranda.Plugins.Configuration.Category, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + int32) + IL_0073: nop + .line 267,267 : 17,18 '' + IL_0074: nop + .line 259,259 : 55,58 '' + IL_0075: ldloc.s j + IL_0077: ldc.i4.1 + IL_0078: add + IL_0079: stloc.s j + .line 259,259 : 33,53 '' + IL_007b: ldloc.s j + IL_007d: ldloc.0 + IL_007e: callvirt instance int32 class [mscorlib]System.Collections.Generic.List`1::get_Count() + IL_0083: clt + IL_0085: stloc.s CS$4$0000 + IL_0087: ldloc.s CS$4$0000 + IL_0089: brtrue.s IL_0047 + + .line 268,268 : 13,14 '' + IL_008b: nop + .line 251,251 : 61,64 '' + IL_008c: ldloc.1 + IL_008d: ldc.i4.1 + IL_008e: add + IL_008f: stloc.1 + .line 251,251 : 29,59 '' + IL_0090: ldloc.1 + IL_0091: ldarg.0 + IL_0092: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0097: callvirt instance int32 class [mscorlib]System.Collections.Generic.List`1::get_Count() + IL_009c: clt + IL_009e: stloc.s CS$4$0000 + IL_00a0: ldloc.s CS$4$0000 + IL_00a2: brtrue IL_000a + + .line 269,269 : 9,10 '' + IL_00a7: ret + } // end of method ConfigurationDialog::PopulateItems + + .method private hidebysig instance void + PopulateIsolatedPlugins() cil managed + { + // Code size 127 (0x7f) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection plugins, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [2] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000, + [3] bool CS$4$0001) + .line 272,272 : 9,10 '' + IL_0000: nop + .line 273,273 : 13,103 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_000b: callvirt instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + IL_0010: stloc.0 + .line 276,276 : 13,14 '' + .try + { + IL_0011: nop + .line 277,277 : 17,70 '' + IL_0012: ldloc.0 + IL_0013: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_0018: nop + .line 279,279 : 17,24 '' + IL_0019: nop + .line 279,279 : 57,64 '' + IL_001a: ldloc.0 + IL_001b: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_0020: stloc.2 + .try + { + IL_0021: br.s IL_0053 + + .line 279,279 : 26,53 '' + IL_0023: ldloc.2 + IL_0024: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0029: stloc.1 + .line 280,280 : 21,51 '' + IL_002a: ldloc.1 + IL_002b: callvirt instance bool Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsConfigurable() + IL_0030: ldc.i4.0 + IL_0031: ceq + IL_0033: stloc.3 + IL_0034: ldloc.3 + IL_0035: brtrue.s IL_0053 + + .line 281,281 : 25,124 '' + IL_0037: ldarg.0 + IL_0038: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_003d: ldloc.1 + IL_003e: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0043: castclass Virtuoso.Miranda.Plugins.IConfigurablePlugin + IL_0048: newobj instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_004d: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0052: nop + .line 279,279 : 54,56 '' + IL_0053: ldloc.2 + IL_0054: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0059: stloc.3 + IL_005a: ldloc.3 + IL_005b: brtrue.s IL_0023 + + IL_005d: leave.s IL_006f + + } // end .try + finally + { + IL_005f: ldloc.2 + IL_0060: ldnull + IL_0061: ceq + IL_0063: stloc.3 + IL_0064: ldloc.3 + IL_0065: brtrue.s IL_006e + + IL_0067: ldloc.2 + IL_0068: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_006d: nop + IL_006e: endfinally + } // end handler + IL_006f: nop + .line 282,282 : 13,14 '' + IL_0070: nop + IL_0071: leave.s IL_007d + + .line 284,284 : 13,14 '' + } // end .try + finally + { + IL_0073: nop + .line 285,285 : 17,58 '' + IL_0074: ldloc.0 + IL_0075: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_007a: nop + .line 286,286 : 13,14 '' + IL_007b: nop + IL_007c: endfinally + } // end handler + IL_007d: nop + .line 287,287 : 9,10 '' + IL_007e: ret + } // end of method ConfigurationDialog::PopulateIsolatedPlugins + + .method private hidebysig instance void + PopulateStandalonePlugins() cil managed + { + // Code size 132 (0x84) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection modules, + [1] class Virtuoso.Hyphen.Mini.Module module, + [2] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000, + [3] bool CS$4$0001) + .line 290,290 : 9,10 '' + IL_0000: nop + .line 291,291 : 13,90 '' + IL_0001: call class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + IL_0006: callvirt instance class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection Virtuoso.Hyphen.Mini.ModuleManager::get_RegisteredModules() + IL_000b: stloc.0 + .line 294,294 : 13,14 '' + .try + { + IL_000c: nop + .line 295,295 : 17,70 '' + IL_000d: ldloc.0 + IL_000e: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_0013: nop + .line 297,297 : 17,24 '' + IL_0014: nop + .line 297,297 : 43,50 '' + IL_0015: ldloc.0 + IL_0016: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_001b: stloc.2 + .try + { + IL_001c: br.s IL_0058 + + .line 297,297 : 26,39 '' + IL_001e: ldloc.2 + IL_001f: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0024: stloc.1 + .line 298,298 : 21,75 '' + IL_0025: ldloc.1 + IL_0026: callvirt instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_002b: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0030: callvirt instance bool Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsConfigurable() + IL_0035: ldc.i4.0 + IL_0036: ceq + IL_0038: stloc.3 + IL_0039: ldloc.3 + IL_003a: brtrue.s IL_0058 + + .line 299,299 : 25,130 '' + IL_003c: ldarg.0 + IL_003d: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0042: ldloc.1 + IL_0043: callvirt instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_0048: castclass Virtuoso.Miranda.Plugins.IConfigurablePlugin + IL_004d: newobj instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_0052: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0057: nop + .line 297,297 : 40,42 '' + IL_0058: ldloc.2 + IL_0059: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_005e: stloc.3 + IL_005f: ldloc.3 + IL_0060: brtrue.s IL_001e + + IL_0062: leave.s IL_0074 + + } // end .try + finally + { + IL_0064: ldloc.2 + IL_0065: ldnull + IL_0066: ceq + IL_0068: stloc.3 + IL_0069: ldloc.3 + IL_006a: brtrue.s IL_0073 + + IL_006c: ldloc.2 + IL_006d: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0072: nop + IL_0073: endfinally + } // end handler + IL_0074: nop + .line 300,300 : 13,14 '' + IL_0075: nop + IL_0076: leave.s IL_0082 + + .line 302,302 : 13,14 '' + } // end .try + finally + { + IL_0078: nop + .line 303,303 : 17,58 '' + IL_0079: ldloc.0 + IL_007a: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_007f: nop + .line 304,304 : 13,14 '' + IL_0080: nop + IL_0081: endfinally + } // end handler + IL_0082: nop + .line 305,305 : 9,10 '' + IL_0083: ret + } // end of method ConfigurationDialog::PopulateStandalonePlugins + + .method private hidebysig instance void + PopulateHyphenConfiguration() cil managed + { + // Code size 65 (0x41) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 308,308 : 9,10 '' + IL_0000: nop + .line 309,309 : 13,62 '' + IL_0001: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0006: callvirt instance bool [mscorlib]System.AppDomain::IsDefaultAppDomain() + IL_000b: ldc.i4.0 + IL_000c: ceq + IL_000e: stloc.0 + IL_000f: ldloc.0 + IL_0010: brtrue.s IL_002a + + .line 310,310 : 17,107 '' + IL_0012: ldarg.0 + IL_0013: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0018: call class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Singleton() + IL_001d: newobj instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_0022: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0027: nop + IL_0028: br.s IL_0040 + + .line 312,312 : 17,102 '' + IL_002a: ldarg.0 + IL_002b: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0030: call class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Singleton() + IL_0035: newobj instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_003a: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_003f: nop + .line 313,313 : 9,10 '' + IL_0040: ret + } // end of method ConfigurationDialog::PopulateHyphenConfiguration + + .method private hidebysig instance void + PopulateCategoryPanel(class [TabStripControlLibrary]RibbonStyle.TabStripPage entityPage, + class Virtuoso.Miranda.Plugins.Configuration.Category category, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin, + int32 index) cil managed + { + // Code size 172 (0xac) + .maxstack 3 + .locals init ([0] class [TabStripControlLibrary]RibbonStyle.TabPanel categoryPanel, + [1] valuetype [System.Drawing]System.Drawing.Point nextLocation, + [2] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + [3] class [TabStripControlLibrary]RibbonStyle.RibbonButton btn, + [4] bool CS$4$0000, + [5] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001) + .line 320,320 : 9,10 '' + IL_0000: nop + .line 321,321 : 13,75 '' + IL_0001: ldarg.0 + IL_0002: ldarg.2 + IL_0003: ldarg.s index + IL_0005: call instance class [TabStripControlLibrary]RibbonStyle.TabPanel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreateCategoryPanel(class Virtuoso.Miranda.Plugins.Configuration.Category, + int32) + IL_000a: stloc.0 + .line 322,322 : 13,52 '' + IL_000b: ldarg.1 + IL_000c: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0011: ldloc.0 + IL_0012: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0017: nop + .line 324,324 : 13,49 '' + IL_0018: ldarg.0 + IL_0019: ldarg.3 + IL_001a: ldarg.2 + IL_001b: call instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanNavigateTo(class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + class Virtuoso.Miranda.Plugins.Configuration.Category) + IL_0020: ldc.i4.0 + IL_0021: ceq + IL_0023: stloc.s CS$4$0000 + IL_0025: ldloc.s CS$4$0000 + IL_0027: brtrue.s IL_0036 + + .line 325,325 : 17,70 '' + IL_0029: ldarg.0 + IL_002a: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_002f: ldarg.1 + IL_0030: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPageSwitcher::set_SelectedTabStripPage(class [TabStripControlLibrary]RibbonStyle.TabStripPage) + IL_0035: nop + .line 327,327 : 13,46 '' + IL_0036: ldloca.s nextLocation + IL_0038: initobj [System.Drawing]System.Drawing.Point + .line 329,329 : 13,20 '' + IL_003e: nop + .line 329,329 : 43,57 '' + IL_003f: ldarg.2 + IL_0040: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::get_Items() + IL_0045: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_004a: stloc.s CS$5$0001 + .try + { + IL_004c: br.s IL_008c + + .line 329,329 : 22,39 '' + IL_004e: ldloca.s CS$5$0001 + IL_0050: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0055: stloc.2 + .line 330,330 : 13,14 '' + IL_0056: nop + .line 331,331 : 17,73 '' + IL_0057: ldarg.0 + IL_0058: ldloc.2 + IL_0059: ldloca.s nextLocation + IL_005b: call instance class [TabStripControlLibrary]RibbonStyle.RibbonButton Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreateButton(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem, + valuetype [System.Drawing]System.Drawing.Point&) + IL_0060: stloc.3 + .line 332,332 : 17,49 '' + IL_0061: ldloc.0 + IL_0062: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0067: ldloc.3 + IL_0068: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_006d: nop + .line 334,334 : 17,41 '' + IL_006e: ldarg.0 + IL_006f: ldloc.2 + IL_0070: call instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanNavigateTo(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem) + IL_0075: ldc.i4.0 + IL_0076: ceq + IL_0078: stloc.s CS$4$0000 + IL_007a: ldloc.s CS$4$0000 + IL_007c: brtrue.s IL_008b + + .line 335,335 : 21,62 '' + IL_007e: ldarg.0 + IL_007f: ldloc.3 + IL_0080: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_0085: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonButton_Click(object, + class [mscorlib]System.EventArgs) + IL_008a: nop + .line 336,336 : 13,14 '' + IL_008b: nop + .line 329,329 : 40,42 '' + IL_008c: ldloca.s CS$5$0001 + IL_008e: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0093: stloc.s CS$4$0000 + IL_0095: ldloc.s CS$4$0000 + IL_0097: brtrue.s IL_004e + + IL_0099: leave.s IL_00aa + + } // end .try + finally + { + IL_009b: ldloca.s CS$5$0001 + IL_009d: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_00a3: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_00a8: nop + IL_00a9: endfinally + } // end handler + IL_00aa: nop + .line 337,337 : 9,10 '' + IL_00ab: ret + } // end of method ConfigurationDialog::PopulateCategoryPanel + + .method private hidebysig instance class [TabStripControlLibrary]RibbonStyle.RibbonButton + CreateButton(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + valuetype [System.Drawing]System.Drawing.Point& nextLocation) cil managed + { + // Code size 252 (0xfc) + .maxstack 3 + .locals init ([0] class [TabStripControlLibrary]RibbonStyle.RibbonButton btn, + [1] class [TabStripControlLibrary]RibbonStyle.RibbonButton CS$1$0000, + [2] bool CS$4$0001, + [3] valuetype [System.Drawing]System.Drawing.Size CS$0$0002) + .line 340,340 : 9,10 '' + IL_0000: nop + .line 341,341 : 13,51 '' + IL_0001: newobj instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::.ctor() + IL_0006: stloc.0 + .line 342,342 : 13,34 '' + IL_0007: ldloc.0 + IL_0008: ldarg.1 + IL_0009: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Name() + IL_000e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0013: nop + .line 344,344 : 13,37 '' + IL_0014: ldloc.0 + IL_0015: ldc.i4.1 + IL_0016: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_ShowInfoTips(bool) + IL_001b: nop + .line 345,345 : 13,39 '' + IL_001c: ldloc.0 + IL_001d: ldarg.1 + IL_001e: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Name() + IL_0023: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_InfoTitle(string) + IL_0028: nop + .line 346,346 : 13,48 '' + IL_0029: ldloc.0 + IL_002a: ldarg.1 + IL_002b: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Description() + IL_0030: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_InfoComment(string) + IL_0035: nop + .line 348,348 : 13,36 '' + IL_0036: ldarg.1 + IL_0037: callvirt instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Image() + IL_003c: ldnull + IL_003d: ceq + IL_003f: ldc.i4.0 + IL_0040: ceq + IL_0042: stloc.2 + IL_0043: ldloc.2 + IL_0044: brtrue.s IL_0052 + + .line 349,349 : 17,72 '' + IL_0046: ldarg.1 + IL_0047: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Configuration() + IL_004c: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0051: nop + .line 351,351 : 13,34 '' + IL_0052: ldloc.0 + IL_0053: ldarg.1 + IL_0054: callvirt instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Image() + IL_0059: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_img(class [System.Drawing]System.Drawing.Image) + IL_005e: nop + .line 352,352 : 13,37 '' + IL_005f: ldloc.0 + IL_0060: ldloc.0 + IL_0061: callvirt instance class [System.Drawing]System.Drawing.Image [TabStripControlLibrary]RibbonStyle.RibbonButton::get_img() + IL_0066: callvirt instance valuetype [System.Drawing]System.Drawing.Size [System.Drawing]System.Drawing.Image::get_Size() + IL_006b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0070: nop + .line 354,354 : 13,38 '' + IL_0071: ldarg.2 + IL_0072: call instance bool [System.Drawing]System.Drawing.Point::get_IsEmpty() + IL_0077: ldc.i4.0 + IL_0078: ceq + IL_007a: stloc.2 + IL_007b: ldloc.2 + IL_007c: brtrue.s IL_0099 + + .line 355,355 : 17,62 '' + IL_007e: ldarg.2 + IL_007f: ldloc.0 + IL_0080: callvirt instance valuetype [System.Drawing]System.Drawing.Size [System.Windows.Forms]System.Windows.Forms.Control::get_Size() + IL_0085: stloc.3 + IL_0086: ldloca.s CS$0$0002 + IL_0088: call instance int32 [System.Drawing]System.Drawing.Size::get_Width() + IL_008d: neg + IL_008e: ldc.i4.6 + IL_008f: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0094: stobj [System.Drawing]System.Drawing.Point + .line 357,357 : 13,59 '' + IL_0099: ldloc.0 + IL_009a: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_RibbonHover() + IL_009f: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_img_on(class [System.Drawing]System.Drawing.Image) + IL_00a4: nop + .line 358,358 : 13,62 '' + IL_00a5: ldloc.0 + IL_00a6: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_RibbonClick() + IL_00ab: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_img_click(class [System.Drawing]System.Drawing.Image) + IL_00b0: nop + .line 360,360 : 13,60 '' + IL_00b1: ldarg.2 + IL_00b2: ldloc.0 + IL_00b3: callvirt instance class [System.Drawing]System.Drawing.Image [TabStripControlLibrary]RibbonStyle.RibbonButton::get_img() + IL_00b8: callvirt instance valuetype [System.Drawing]System.Drawing.Size [System.Drawing]System.Drawing.Image::get_Size() + IL_00bd: stloc.3 + IL_00be: ldloca.s CS$0$0002 + IL_00c0: call instance int32 [System.Drawing]System.Drawing.Size::get_Width() + IL_00c5: ldc.i4.5 + IL_00c6: add + IL_00c7: ldc.i4.0 + IL_00c8: call instance void [System.Drawing]System.Drawing.Point::Offset(int32, + int32) + IL_00cd: nop + .line 361,361 : 13,41 '' + IL_00ce: ldloc.0 + IL_00cf: ldarg.2 + IL_00d0: ldobj [System.Drawing]System.Drawing.Point + IL_00d5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_00da: nop + .line 363,363 : 13,28 '' + IL_00db: ldloc.0 + IL_00dc: ldarg.1 + IL_00dd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Tag(object) + IL_00e2: nop + .line 364,364 : 13,45 '' + IL_00e3: ldloc.0 + IL_00e4: ldarg.0 + IL_00e5: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonButton_Click(object, + class [mscorlib]System.EventArgs) + IL_00eb: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_00f0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::add_Click(class [mscorlib]System.EventHandler) + IL_00f5: nop + .line 366,366 : 13,24 '' + IL_00f6: ldloc.0 + IL_00f7: stloc.1 + IL_00f8: br.s IL_00fa + + .line 367,367 : 9,10 '' + IL_00fa: ldloc.1 + IL_00fb: ret + } // end of method ConfigurationDialog::CreateButton + + .method private hidebysig instance class [TabStripControlLibrary]RibbonStyle.TabPanel + CreateCategoryPanel(class Virtuoso.Miranda.Plugins.Configuration.Category category, + int32 index) cil managed + { + // Code size 175 (0xaf) + .maxstack 5 + .locals init ([0] class [TabStripControlLibrary]RibbonStyle.TabPanel categoryPanel, + [1] class [TabStripControlLibrary]RibbonStyle.TabPanel CS$1$0000) + .line 370,370 : 9,10 '' + IL_0000: nop + .line 371,371 : 13,53 '' + IL_0001: newobj instance void [TabStripControlLibrary]RibbonStyle.TabPanel::.ctor() + IL_0006: stloc.0 + .line 373,373 : 13,84 '' + IL_0007: ldloc.0 + IL_0008: ldc.i4 0xd7 + IL_000d: ldc.i4 0xe3 + IL_0012: ldc.i4 0xf2 + IL_0017: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_001c: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPanel::set_BaseColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0021: nop + .line 374,374 : 13,86 '' + IL_0022: ldloc.0 + IL_0023: ldc.i4 0xe9 + IL_0028: ldc.i4 0xef + IL_002d: ldc.i4 0xf8 + IL_0032: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0037: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPanel::set_BaseColorOn(valuetype [System.Drawing]System.Drawing.Color) + IL_003c: nop + .line 375,375 : 13,70 '' + IL_003d: ldloc.0 + IL_003e: ldc.i4.3 + IL_003f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_0044: nop + .line 376,376 : 13,75 '' + IL_0045: ldloc.0 + IL_0046: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Desktop() + IL_004b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0050: nop + .line 377,377 : 13,71 '' + IL_0051: ldloc.0 + IL_0052: ldc.i4.s 101 + IL_0054: ldc.i4.3 + IL_0055: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_005a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_005f: nop + .line 378,378 : 13,41 '' + IL_0060: ldloc.0 + IL_0061: ldc.i4 0xff + IL_0066: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPanel::set_Opacity(int32) + IL_006b: nop + .line 379,379 : 13,82 '' + IL_006c: ldloc.0 + IL_006d: ldc.i4.6 + IL_006e: ldc.i4.3 + IL_006f: ldc.i4.6 + IL_0070: ldc.i4.0 + IL_0071: newobj instance void [System.Windows.Forms]System.Windows.Forms.Padding::.ctor(int32, + int32, + int32, + int32) + IL_0076: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Padding(valuetype [System.Windows.Forms]System.Windows.Forms.Padding) + IL_007b: nop + .line 380,380 : 13,43 '' + IL_007c: ldloc.0 + IL_007d: ldc.i4.1 + IL_007e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_0083: nop + .line 381,381 : 13,69 '' + IL_0084: ldloc.0 + IL_0085: ldc.i4.0 + IL_0086: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Panel::set_AutoSizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoSizeMode) + IL_008b: nop + .line 382,382 : 13,37 '' + IL_008c: ldloc.0 + IL_008d: ldc.i4.1 + IL_008e: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPanel::set_Speed(int32) + IL_0093: nop + .line 383,383 : 13,44 '' + IL_0094: ldloc.0 + IL_0095: ldarg.2 + IL_0096: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_009b: nop + .line 384,384 : 13,51 '' + IL_009c: ldloc.0 + IL_009d: ldarg.1 + IL_009e: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.Category::get_Name() + IL_00a3: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPanel::set_Caption(string) + IL_00a8: nop + .line 386,386 : 13,34 '' + IL_00a9: ldloc.0 + IL_00aa: stloc.1 + IL_00ab: br.s IL_00ad + + .line 387,387 : 9,10 '' + IL_00ad: ldloc.1 + IL_00ae: ret + } // end of method ConfigurationDialog::CreateCategoryPanel + + .method private hidebysig instance class [TabStripControlLibrary]RibbonStyle.TabStripPage + CreateAndRegisterEntityPage(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin entity, + int32 index) cil managed + { + // Code size 317 (0x13d) + .maxstack 5 + .locals init ([0] class [TabStripControlLibrary]RibbonStyle.TabStripPage entityPage, + [1] class [TabStripControlLibrary]RibbonStyle.Tab entityTab, + [2] class [TabStripControlLibrary]RibbonStyle.TabStripPage CS$1$0000, + [3] bool CS$4$0001) + .line 390,390 : 9,10 '' + IL_0000: nop + .line 391,391 : 13,58 '' + IL_0001: newobj instance void [TabStripControlLibrary]RibbonStyle.TabStripPage::.ctor() + IL_0006: stloc.0 + .line 392,392 : 13,81 '' + IL_0007: ldloc.0 + IL_0008: ldc.i4 0xd7 + IL_000d: ldc.i4 0xe3 + IL_0012: ldc.i4 0xf2 + IL_0017: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_001c: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonPanel::set_BaseColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0021: nop + .line 393,393 : 13,83 '' + IL_0022: ldloc.0 + IL_0023: ldc.i4 0xd7 + IL_0028: ldc.i4 0xe3 + IL_002d: ldc.i4 0xf2 + IL_0032: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0037: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonPanel::set_BaseColorOn(valuetype [System.Drawing]System.Drawing.Color) + IL_003c: nop + .line 394,394 : 13,67 '' + IL_003d: ldloc.0 + IL_003e: ldc.i4.5 + IL_003f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_0044: nop + .line 395,395 : 13,38 '' + IL_0045: ldloc.0 + IL_0046: ldc.i4 0xff + IL_004b: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonPanel::set_Opacity(int32) + IL_0050: nop + .line 396,396 : 13,79 '' + IL_0051: ldloc.0 + IL_0052: ldc.i4.0 + IL_0053: ldc.i4.3 + IL_0054: ldc.i4.0 + IL_0055: ldc.i4.0 + IL_0056: newobj instance void [System.Windows.Forms]System.Windows.Forms.Padding::.ctor(int32, + int32, + int32, + int32) + IL_005b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Padding(valuetype [System.Windows.Forms]System.Windows.Forms.Padding) + IL_0060: nop + .line 397,397 : 13,64 '' + IL_0061: ldloc.0 + IL_0062: ldc.i4 0x310 + IL_0067: ldc.i4.s 99 + IL_0069: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_006e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0073: nop + .line 398,398 : 13,34 '' + IL_0074: ldloc.0 + IL_0075: ldc.i4.1 + IL_0076: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonPanel::set_Speed(int32) + IL_007b: nop + .line 399,399 : 13,41 '' + IL_007c: ldloc.0 + IL_007d: ldarg.3 + IL_007e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_0083: nop + .line 401,401 : 13,57 '' + IL_0084: ldarg.0 + IL_0085: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_008a: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_008f: ldloc.0 + IL_0090: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0095: nop + .line 403,403 : 13,50 '' + IL_0096: ldarg.2 + IL_0097: callvirt instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + IL_009c: newobj instance void [TabStripControlLibrary]RibbonStyle.Tab::.ctor(string) + IL_00a1: stloc.1 + .line 404,404 : 13,40 '' + IL_00a2: ldloc.1 + IL_00a3: ldc.i4.0 + IL_00a4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_AutoSize(bool) + IL_00a9: nop + .line 405,405 : 13,38 '' + IL_00aa: ldloc.1 + IL_00ab: ldc.i4.1 + IL_00ac: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripButton::set_Checked(bool) + IL_00b1: nop + .line 406,406 : 13,55 '' + IL_00b2: ldloc.1 + IL_00b3: ldc.i4.1 + IL_00b4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripButton::set_CheckState(valuetype [System.Windows.Forms]System.Windows.Forms.CheckState) + IL_00b9: nop + .line 407,407 : 13,78 '' + IL_00ba: ldloc.1 + IL_00bb: ldc.i4.s 44 + IL_00bd: ldc.i4.s 90 + IL_00bf: ldc.i4 0x9a + IL_00c4: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_00c9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + IL_00ce: nop + .line 408,408 : 13,56 '' + IL_00cf: ldloc.1 + IL_00d0: ldc.i4.6 + IL_00d1: ldc.i4.1 + IL_00d2: ldc.i4.0 + IL_00d3: ldc.i4.2 + IL_00d4: newobj instance void [System.Windows.Forms]System.Windows.Forms.Padding::.ctor(int32, + int32, + int32, + int32) + IL_00d9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Margin(valuetype [System.Windows.Forms]System.Windows.Forms.Padding) + IL_00de: nop + .line 409,409 : 13,47 '' + IL_00df: ldloc.1 + IL_00e0: ldc.i4.s 73 + IL_00e2: ldc.i4.s 23 + IL_00e4: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00e9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_00ee: nop + .line 410,410 : 13,42 '' + IL_00ef: ldloc.1 + IL_00f0: ldarg.2 + IL_00f1: callvirt instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + IL_00f6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Text(string) + IL_00fb: nop + .line 411,411 : 13,49 '' + IL_00fc: ldloc.1 + IL_00fd: ldloc.0 + IL_00fe: callvirt instance void [TabStripControlLibrary]RibbonStyle.Tab::set_TabStripPage(class [TabStripControlLibrary]RibbonStyle.TabStripPage) + IL_0103: nop + .line 413,413 : 13,49 '' + IL_0104: ldarg.2 + IL_0105: isinst Virtuoso.Miranda.Plugins.IInternalConfigurator + IL_010a: ldnull + IL_010b: cgt.un + IL_010d: ldc.i4.0 + IL_010e: ceq + IL_0110: stloc.3 + IL_0111: ldloc.3 + IL_0112: brtrue.s IL_0125 + + .line 414,414 : 17,80 '' + IL_0114: ldloc.1 + IL_0115: call class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_16x16_Hyphen() + IL_011a: callvirt instance class [System.Drawing]System.Drawing.Bitmap [System.Drawing]System.Drawing.Icon::ToBitmap() + IL_011f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0124: nop + .line 416,416 : 13,46 '' + IL_0125: ldarg.0 + IL_0126: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_012b: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0130: ldloc.1 + IL_0131: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_0136: pop + .line 418,418 : 13,31 '' + IL_0137: ldloc.0 + IL_0138: stloc.2 + IL_0139: br.s IL_013b + + .line 419,419 : 9,10 '' + IL_013b: ldloc.2 + IL_013c: ret + } // end of method ConfigurationDialog::CreateAndRegisterEntityPage + + .method private hidebysig instance bool + CanDismissActiveControl() cil managed + { + // Code size 95 (0x5f) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 426,426 : 9,10 '' + IL_0000: nop + .line 427,427 : 13,100 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0007: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_000c: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.Layout.ArrangedElementCollection::get_Count() + IL_0011: ldc.i4.0 + IL_0012: ble.s IL_0032 + + IL_0014: ldarg.0 + IL_0015: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_001a: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_001f: ldc.i4.0 + IL_0020: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::get_Item(int32) + IL_0025: isinst Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + IL_002a: ldnull + IL_002b: cgt.un + IL_002d: ldc.i4.0 + IL_002e: ceq + IL_0030: br.s IL_0033 + + IL_0032: ldc.i4.1 + IL_0033: nop + IL_0034: stloc.1 + IL_0035: ldloc.1 + IL_0036: brtrue.s IL_0059 + + .line 428,428 : 17,82 '' + IL_0038: ldarg.0 + IL_0039: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_003e: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0043: ldc.i4.0 + IL_0044: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::get_Item(int32) + IL_0049: castclass Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + IL_004e: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnHide() + IL_0053: ldc.i4.0 + IL_0054: ceq + IL_0056: stloc.0 + IL_0057: br.s IL_005d + + .line 430,430 : 17,29 '' + IL_0059: ldc.i4.1 + IL_005a: stloc.0 + IL_005b: br.s IL_005d + + .line 431,431 : 9,10 '' + IL_005d: ldloc.0 + IL_005e: ret + } // end of method ConfigurationDialog::CanDismissActiveControl + + .method private hidebysig instance void + RibbonButton_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 142 (0x8e) + .maxstack 2 + .locals init ([0] class [TabStripControlLibrary]RibbonStyle.RibbonButton btn, + [1] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + [2] bool firstTime, + [3] class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl control, + [4] bool CS$4$0000) + .line 434,434 : 9,10 '' + IL_0000: nop + .line 435,435 : 13,53 '' + IL_0001: ldarg.1 + IL_0002: castclass [TabStripControlLibrary]RibbonStyle.RibbonButton + IL_0007: stloc.0 + .line 436,436 : 13,55 '' + IL_0008: ldloc.0 + IL_0009: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_000e: castclass Virtuoso.Miranda.Plugins.Configuration.CategoryItem + IL_0013: stloc.1 + .line 438,438 : 13,55 '' + IL_0014: ldloc.1 + IL_0015: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_ControlInitialized() + IL_001a: ldc.i4.0 + IL_001b: ceq + IL_001d: stloc.2 + .line 439,439 : 13,56 '' + IL_001e: ldloc.1 + IL_001f: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Control() + IL_0024: stloc.3 + .line 441,441 : 13,34 '' + IL_0025: ldloc.3 + IL_0026: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnSelected() + IL_002b: nop + .line 443,443 : 13,61 '' + IL_002c: ldloc.3 + IL_002d: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_HasUI() + IL_0032: brfalse.s IL_003d + + IL_0034: ldloc.3 + IL_0035: ldloc.2 + IL_0036: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnShow(bool) + IL_003b: br.s IL_003e + + IL_003d: ldc.i4.1 + IL_003e: nop + IL_003f: stloc.s CS$4$0000 + IL_0041: ldloc.s CS$4$0000 + IL_0043: brtrue.s IL_008d + + .line 444,444 : 13,14 '' + IL_0045: nop + .line 445,445 : 17,48 '' + IL_0046: ldarg.0 + IL_0047: call instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanDismissActiveControl() + IL_004c: stloc.s CS$4$0000 + IL_004e: ldloc.s CS$4$0000 + IL_0050: brtrue.s IL_0054 + + .line 446,446 : 21,28 '' + IL_0052: br.s IL_008d + + .line 448,448 : 17,73 '' + IL_0054: ldloc.3 + IL_0055: ldarg.0 + IL_0056: ldfld string Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurationParameter + IL_005b: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::set_ConfigurationParameter(string) + IL_0060: nop + .line 449,449 : 17,47 '' + IL_0061: ldarg.0 + IL_0062: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0067: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_006c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Clear() + IL_0071: nop + .line 451,451 : 17,47 '' + IL_0072: ldloc.3 + IL_0073: ldc.i4.5 + IL_0074: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_0079: nop + .line 452,452 : 17,52 '' + IL_007a: ldarg.0 + IL_007b: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0080: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0085: ldloc.3 + IL_0086: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_008b: nop + .line 453,453 : 13,14 '' + IL_008c: nop + .line 454,454 : 9,10 '' + IL_008d: ret + } // end of method ConfigurationDialog::RibbonButton_Click + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 44 (0x2c) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 15,15 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\ConfigurationDialog.Designer.cs' + IL_0000: nop + .line 16,16 : 13,51 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_000f + + IL_0004: ldarg.0 + IL_0005: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::components + IL_000a: ldnull + IL_000b: ceq + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.1 + IL_0010: nop + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0023 + + .line 17,17 : 13,14 '' + IL_0015: nop + .line 18,18 : 17,38 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::components + IL_001c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0021: nop + .line 19,19 : 13,14 '' + IL_0022: nop + .line 20,20 : 13,37 '' + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: call instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::Dispose(bool) + IL_002a: nop + .line 21,21 : 9,10 '' + IL_002b: ret + } // end of method ConfigurationDialog::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 1832 (0x728) + .maxstack 6 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources) + .line 30,30 : 9,10 '' + IL_0000: nop + .line 31,31 : 13,152 '' + IL_0001: ldtoken Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_0010: stloc.0 + .line 32,32 : 13,62 '' + IL_0011: ldarg.0 + IL_0012: newobj instance void [System.Windows.Forms]System.Windows.Forms.Panel::.ctor() + IL_0017: stfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + .line 33,33 : 13,73 '' + IL_001c: ldarg.0 + IL_001d: newobj instance void [TabStripControlLibrary]RibbonStyle.TabPageSwitcher::.ctor() + IL_0022: stfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + .line 34,34 : 13,59 '' + IL_0027: ldarg.0 + IL_0028: newobj instance void [TabStripControlLibrary]RibbonStyle.TabStrip::.ctor() + IL_002d: stfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + .line 35,35 : 13,65 '' + IL_0032: ldarg.0 + IL_0033: newobj instance void [System.Windows.Forms]System.Windows.Forms.Panel::.ctor() + IL_0038: stfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + .line 36,36 : 13,64 '' + IL_003d: ldarg.0 + IL_003e: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0043: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + .line 37,37 : 13,60 '' + IL_0048: ldarg.0 + IL_0049: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_004e: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + .line 38,38 : 13,66 '' + IL_0053: ldarg.0 + IL_0054: newobj instance void [System.Windows.Forms]System.Windows.Forms.Panel::.ctor() + IL_0059: stfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + .line 39,39 : 13,112 '' + IL_005e: ldarg.0 + IL_005f: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor() + IL_0064: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + .line 40,40 : 13,43 '' + IL_0069: ldarg.0 + IL_006a: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_006f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0074: nop + .line 41,41 : 13,46 '' + IL_0075: ldarg.0 + IL_0076: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_007b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0080: nop + .line 42,42 : 13,47 '' + IL_0081: ldarg.0 + IL_0082: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0087: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_008c: nop + .line 43,43 : 13,34 '' + IL_008d: ldarg.0 + IL_008e: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0093: nop + .line 47,47 : 13,65 '' + IL_0094: ldarg.0 + IL_0095: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_009a: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_009f: ldarg.0 + IL_00a0: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_00a5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_00aa: nop + .line 48,48 : 13,58 '' + IL_00ab: ldarg.0 + IL_00ac: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_00b1: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_00b6: ldarg.0 + IL_00b7: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_00bc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_00c1: nop + .line 49,49 : 13,69 '' + IL_00c2: ldarg.0 + IL_00c3: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_00c8: ldc.i4.1 + IL_00c9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_00ce: nop + .line 50,50 : 13,69 '' + IL_00cf: ldarg.0 + IL_00d0: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_00d5: ldc.i4.0 + IL_00d6: ldc.i4.0 + IL_00d7: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_00dc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_00e1: nop + .line 51,51 : 13,45 '' + IL_00e2: ldarg.0 + IL_00e3: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_00e8: ldstr "TopPanel" + IL_00ed: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_00f2: nop + .line 52,52 : 13,68 '' + IL_00f3: ldarg.0 + IL_00f4: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_00f9: ldc.i4 0x31a + IL_00fe: ldc.i4.s 127 + IL_0100: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0105: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_010a: nop + .line 53,53 : 13,40 '' + IL_010b: ldarg.0 + IL_010c: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_0111: ldc.i4.0 + IL_0112: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_0117: nop + .line 57,57 : 13,151 '' + IL_0118: ldarg.0 + IL_0119: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_011e: ldc.i4 0xbf + IL_0123: ldc.i4 0xdb + IL_0128: ldc.i4 0xff + IL_012d: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0132: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0137: nop + .line 58,58 : 13,80 '' + IL_0138: ldarg.0 + IL_0139: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_013e: ldc.i4.5 + IL_013f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_0144: nop + .line 59,59 : 13,80 '' + IL_0145: ldarg.0 + IL_0146: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_014b: ldc.i4.0 + IL_014c: ldc.i4.s 26 + IL_014e: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0153: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0158: nop + .line 60,60 : 13,65 '' + IL_0159: ldarg.0 + IL_015a: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_015f: ldstr "RibbonPageSwitcher" + IL_0164: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0169: nop + .line 61,61 : 13,65 '' + IL_016a: ldarg.0 + IL_016b: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0170: ldnull + IL_0171: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPageSwitcher::set_SelectedTabStripPage(class [TabStripControlLibrary]RibbonStyle.TabStripPage) + IL_0176: nop + .line 62,62 : 13,78 '' + IL_0177: ldarg.0 + IL_0178: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_017d: ldc.i4 0x31a + IL_0182: ldc.i4.s 101 + IL_0184: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0189: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_018e: nop + .line 63,63 : 13,50 '' + IL_018f: ldarg.0 + IL_0190: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0195: ldc.i4.1 + IL_0196: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_019b: nop + .line 64,64 : 13,65 '' + IL_019c: ldarg.0 + IL_019d: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_01a2: ldarg.0 + IL_01a3: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_01a8: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPageSwitcher::set_TabStrip(class [TabStripControlLibrary]RibbonStyle.TabStrip) + IL_01ad: nop + .line 65,65 : 13,65 '' + IL_01ae: ldarg.0 + IL_01af: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_01b4: ldstr "RibbonPageSwitcher" + IL_01b9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_01be: nop + .line 69,69 : 13,47 '' + IL_01bf: ldarg.0 + IL_01c0: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_01c5: ldc.i4.0 + IL_01c6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_01cb: nop + .line 70,70 : 13,144 '' + IL_01cc: ldarg.0 + IL_01cd: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_01d2: ldc.i4 0xbf + IL_01d7: ldc.i4 0xdb + IL_01dc: ldc.i4 0xff + IL_01e1: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_01e6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStrip::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_01eb: nop + .line 71,71 : 13,89 '' + IL_01ec: ldarg.0 + IL_01ed: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_01f2: ldc.i4.0 + IL_01f3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStrip::set_GripStyle(valuetype [System.Windows.Forms]System.Windows.Forms.ToolStripGripStyle) + IL_01f8: nop + .line 72,72 : 13,72 '' + IL_01f9: ldarg.0 + IL_01fa: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_01ff: ldc.i4.0 + IL_0200: ldc.i4.0 + IL_0201: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0206: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_020b: nop + .line 73,73 : 13,51 '' + IL_020c: ldarg.0 + IL_020d: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0212: ldstr "RibbonStrip" + IL_0217: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_021c: nop + .line 74,74 : 13,87 '' + IL_021d: ldarg.0 + IL_021e: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0223: ldc.i4.s 60 + IL_0225: ldc.i4.3 + IL_0226: ldc.i4.s 30 + IL_0228: ldc.i4.0 + IL_0229: newobj instance void [System.Windows.Forms]System.Windows.Forms.Padding::.ctor(int32, + int32, + int32, + int32) + IL_022e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Padding(valuetype [System.Windows.Forms]System.Windows.Forms.Padding) + IL_0233: nop + .line 75,75 : 13,49 '' + IL_0234: ldarg.0 + IL_0235: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_023a: ldnull + IL_023b: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabStrip::set_SelectedTab(class [TabStripControlLibrary]RibbonStyle.Tab) + IL_0240: nop + .line 76,76 : 13,55 '' + IL_0241: ldarg.0 + IL_0242: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0247: ldc.i4.0 + IL_0248: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStrip::set_ShowItemToolTips(bool) + IL_024d: nop + .line 77,77 : 13,70 '' + IL_024e: ldarg.0 + IL_024f: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0254: ldc.i4 0x31a + IL_0259: ldc.i4.s 26 + IL_025b: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0260: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0265: nop + .line 78,78 : 13,43 '' + IL_0266: ldarg.0 + IL_0267: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_026c: ldc.i4.0 + IL_026d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_0272: nop + .line 79,79 : 13,45 '' + IL_0273: ldarg.0 + IL_0274: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0279: ldc.i4.0 + IL_027a: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabStrip::set_TabOverlap(int32) + IL_027f: nop + .line 80,80 : 13,49 '' + IL_0280: ldarg.0 + IL_0281: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0286: ldstr "tabStrip1" + IL_028b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0290: nop + .line 84,84 : 13,144 '' + IL_0291: ldarg.0 + IL_0292: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_0297: ldc.i4 0xbf + IL_029c: ldc.i4 0xdb + IL_02a1: ldc.i4 0xff + IL_02a6: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_02ab: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_02b0: nop + .line 85,85 : 13,59 '' + IL_02b1: ldarg.0 + IL_02b2: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_02b7: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_02bc: ldarg.0 + IL_02bd: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_02c2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_02c7: nop + .line 86,86 : 13,55 '' + IL_02c8: ldarg.0 + IL_02c9: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_02ce: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_02d3: ldarg.0 + IL_02d4: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_02d9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_02de: nop + .line 87,87 : 13,75 '' + IL_02df: ldarg.0 + IL_02e0: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_02e5: ldc.i4.2 + IL_02e6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_02eb: nop + .line 88,88 : 13,74 '' + IL_02ec: ldarg.0 + IL_02ed: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_02f2: ldc.i4.0 + IL_02f3: ldc.i4 0x211 + IL_02f8: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_02fd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0302: nop + .line 89,89 : 13,51 '' + IL_0303: ldarg.0 + IL_0304: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_0309: ldstr "BottomPanel" + IL_030e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0313: nop + .line 90,90 : 13,70 '' + IL_0314: ldarg.0 + IL_0315: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_031a: ldc.i4 0x31a + IL_031f: ldc.i4.s 39 + IL_0321: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0326: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_032b: nop + .line 91,91 : 13,43 '' + IL_032c: ldarg.0 + IL_032d: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_0332: ldc.i4.1 + IL_0333: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_0338: nop + .line 95,95 : 13,84 '' + IL_0339: ldarg.0 + IL_033a: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_033f: ldc.i4.2 + IL_0340: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Button::set_DialogResult(valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult) + IL_0345: nop + .line 96,96 : 13,71 '' + IL_0346: ldarg.0 + IL_0347: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_034c: ldc.i4.s 93 + IL_034e: ldc.i4.7 + IL_034f: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0354: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0359: nop + .line 97,97 : 13,47 '' + IL_035a: ldarg.0 + IL_035b: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0360: ldstr "CancelBTN" + IL_0365: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_036a: nop + .line 98,98 : 13,67 '' + IL_036b: ldarg.0 + IL_036c: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0371: ldc.i4.s 75 + IL_0373: ldc.i4.s 23 + IL_0375: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_037a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_037f: nop + .line 99,99 : 13,41 '' + IL_0380: ldarg.0 + IL_0381: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0386: ldc.i4.0 + IL_0387: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_038c: nop + .line 100,100 : 13,44 '' + IL_038d: ldarg.0 + IL_038e: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0393: ldstr "Cancel" + IL_0398: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_039d: nop + .line 101,101 : 13,59 '' + IL_039e: ldarg.0 + IL_039f: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_03a4: ldc.i4.1 + IL_03a5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + IL_03aa: nop + .line 102,102 : 13,83 '' + IL_03ab: ldarg.0 + IL_03ac: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_03b1: ldarg.0 + IL_03b2: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN_Click(object, + class [mscorlib]System.EventArgs) + IL_03b8: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_03bd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::add_Click(class [mscorlib]System.EventHandler) + IL_03c2: nop + .line 106,106 : 13,76 '' + IL_03c3: ldarg.0 + IL_03c4: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_03c9: ldc.i4.1 + IL_03ca: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Button::set_DialogResult(valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult) + IL_03cf: nop + .line 107,107 : 13,67 '' + IL_03d0: ldarg.0 + IL_03d1: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_03d6: ldc.i4.s 12 + IL_03d8: ldc.i4.7 + IL_03d9: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_03de: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_03e3: nop + .line 108,108 : 13,39 '' + IL_03e4: ldarg.0 + IL_03e5: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_03ea: ldstr "OkBTN" + IL_03ef: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_03f4: nop + .line 109,109 : 13,63 '' + IL_03f5: ldarg.0 + IL_03f6: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_03fb: ldc.i4.s 75 + IL_03fd: ldc.i4.s 23 + IL_03ff: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0404: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0409: nop + .line 110,110 : 13,37 '' + IL_040a: ldarg.0 + IL_040b: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_0410: ldc.i4.0 + IL_0411: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_0416: nop + .line 111,111 : 13,36 '' + IL_0417: ldarg.0 + IL_0418: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_041d: ldstr "OK" + IL_0422: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0427: nop + .line 112,112 : 13,55 '' + IL_0428: ldarg.0 + IL_0429: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_042e: ldc.i4.1 + IL_042f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + IL_0434: nop + .line 113,113 : 13,75 '' + IL_0435: ldarg.0 + IL_0436: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_043b: ldarg.0 + IL_043c: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN_Click(object, + class [mscorlib]System.EventArgs) + IL_0442: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0447: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::add_Click(class [mscorlib]System.EventHandler) + IL_044c: nop + .line 117,117 : 13,49 '' + IL_044d: ldarg.0 + IL_044e: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0453: ldc.i4.1 + IL_0454: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ScrollableControl::set_AutoScroll(bool) + IL_0459: nop + .line 118,118 : 13,63 '' + IL_045a: ldarg.0 + IL_045b: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0460: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0465: ldarg.0 + IL_0466: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_046b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0470: nop + .line 119,119 : 13,74 '' + IL_0471: ldarg.0 + IL_0472: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0477: ldc.i4.5 + IL_0478: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_047d: nop + .line 120,120 : 13,75 '' + IL_047e: ldarg.0 + IL_047f: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0484: ldc.i4.0 + IL_0485: ldc.i4.s 127 + IL_0487: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_048c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0491: nop + .line 121,121 : 13,53 '' + IL_0492: ldarg.0 + IL_0493: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0498: ldstr "ControlPanel" + IL_049d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_04a2: nop + .line 122,122 : 13,72 '' + IL_04a3: ldarg.0 + IL_04a4: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_04a9: ldc.i4 0x31a + IL_04ae: ldc.i4 0x192 + IL_04b3: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_04b8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_04bd: nop + .line 123,123 : 13,44 '' + IL_04be: ldarg.0 + IL_04bf: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_04c4: ldc.i4.2 + IL_04c5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_04ca: nop + .line 127,127 : 13,76 '' + IL_04cb: ldarg.0 + IL_04cc: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_04d1: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_04d6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_04db: nop + .line 128,128 : 13,141 '' + IL_04dc: ldarg.0 + IL_04dd: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_04e2: ldc.i4 0xbf + IL_04e7: ldc.i4 0xdb + IL_04ec: ldc.i4 0xff + IL_04f1: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_04f6: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + IL_04fb: nop + .line 129,129 : 13,73 '' + IL_04fc: ldarg.0 + IL_04fd: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0502: ldc.i4.1 + IL_0503: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_0508: nop + .line 130,130 : 13,163 '' + IL_0509: ldarg.0 + IL_050a: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_050f: ldstr "Tahoma" + IL_0514: ldc.r4 8.25 + IL_0519: ldc.i4.0 + IL_051a: ldc.i4.3 + IL_051b: ldc.i4 0xee + IL_0520: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0525: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_052a: nop + .line 131,131 : 13,166 '' + IL_052b: ldarg.0 + IL_052c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0531: ldstr "Tahoma" + IL_0536: ldc.r4 9.75 + IL_053b: ldc.i4.1 + IL_053c: ldc.i4.3 + IL_053d: ldc.i4 0xee + IL_0542: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0547: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + IL_054c: nop + .line 132,132 : 13,95 '' + IL_054d: ldarg.0 + IL_054e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0553: ldstr " Select a tab and pick a section to configure..." + IL_0558: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + IL_055d: nop + .line 133,133 : 13,107 '' + IL_055e: ldarg.0 + IL_055f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0564: ldloc.0 + IL_0565: ldstr "WelcomePanel.Image" + IL_056a: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_056f: castclass [System.Drawing]System.Drawing.Image + IL_0574: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0579: nop + .line 134,134 : 13,73 '' + IL_057a: ldarg.0 + IL_057b: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0580: ldc.i4.0 + IL_0581: ldc.i4.0 + IL_0582: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0587: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_058c: nop + .line 135,135 : 13,78 '' + IL_058d: ldarg.0 + IL_058e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0593: ldc.i4 0x12c + IL_0598: ldc.i4.s 40 + IL_059a: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_059f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_05a4: nop + .line 136,136 : 13,53 '' + IL_05a5: ldarg.0 + IL_05a6: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_05ab: ldstr "WelcomePanel" + IL_05b0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_05b5: nop + .line 137,137 : 13,72 '' + IL_05b6: ldarg.0 + IL_05b7: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_05bc: ldc.i4 0x31a + IL_05c1: ldc.i4.s 100 + IL_05c3: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_05c8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_05cd: nop + .line 138,138 : 13,44 '' + IL_05ce: ldarg.0 + IL_05cf: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_05d4: ldc.i4.1 + IL_05d5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_05da: nop + .line 142,142 : 13,44 '' + IL_05db: ldarg.0 + IL_05dc: ldarg.0 + IL_05dd: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_05e2: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_AcceptButton(class [System.Windows.Forms]System.Windows.Forms.IButtonControl) + IL_05e7: nop + .line 143,143 : 13,74 '' + IL_05e8: ldarg.0 + IL_05e9: ldc.r4 6. + IL_05ee: ldc.r4 13. + IL_05f3: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_05f8: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + IL_05fd: nop + .line 144,144 : 13,74 '' + IL_05fe: ldarg.0 + IL_05ff: ldc.i4.1 + IL_0600: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + IL_0605: nop + .line 145,145 : 13,65 '' + IL_0606: ldarg.0 + IL_0607: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Window() + IL_060c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0611: nop + .line 146,146 : 13,48 '' + IL_0612: ldarg.0 + IL_0613: ldarg.0 + IL_0614: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0619: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_CancelButton(class [System.Windows.Forms]System.Windows.Forms.IButtonControl) + IL_061e: nop + .line 147,147 : 13,65 '' + IL_061f: ldarg.0 + IL_0620: ldc.i4 0x31a + IL_0625: ldc.i4 0x238 + IL_062a: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_062f: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_ClientSize(valuetype [System.Drawing]System.Drawing.Size) + IL_0634: nop + .line 148,148 : 13,50 '' + IL_0635: ldarg.0 + IL_0636: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_063b: ldarg.0 + IL_063c: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0641: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0646: nop + .line 149,149 : 13,46 '' + IL_0647: ldarg.0 + IL_0648: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_064d: ldarg.0 + IL_064e: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_0653: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0658: nop + .line 150,150 : 13,49 '' + IL_0659: ldarg.0 + IL_065a: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_065f: ldarg.0 + IL_0660: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_0665: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_066a: nop + .line 151,151 : 13,150 '' + IL_066b: ldarg.0 + IL_066c: ldstr "Tahoma" + IL_0671: ldc.r4 8.25 + IL_0676: ldc.i4.0 + IL_0677: ldc.i4.3 + IL_0678: ldc.i4 0xee + IL_067d: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0682: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_0687: nop + .line 152,152 : 13,85 '' + IL_0688: ldarg.0 + IL_0689: ldc.i4.3 + IL_068a: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_FormBorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FormBorderStyle) + IL_068f: nop + .line 153,153 : 13,84 '' + IL_0690: ldarg.0 + IL_0691: ldloc.0 + IL_0692: ldstr "$this.Icon" + IL_0697: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_069c: castclass [System.Drawing]System.Drawing.Icon + IL_06a1: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_Icon(class [System.Drawing]System.Drawing.Icon) + IL_06a6: nop + .line 154,154 : 13,38 '' + IL_06a7: ldarg.0 + IL_06a8: ldc.i4.0 + IL_06a9: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MaximizeBox(bool) + IL_06ae: nop + .line 155,155 : 13,66 '' + IL_06af: ldarg.0 + IL_06b0: ldc.i4 0x320 + IL_06b5: ldc.i4 0x258 + IL_06ba: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_06bf: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_06c4: nop + .line 156,156 : 13,47 '' + IL_06c5: ldarg.0 + IL_06c6: ldstr "ConfigurationDialog" + IL_06cb: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_06d0: nop + .line 157,157 : 13,86 '' + IL_06d1: ldarg.0 + IL_06d2: ldc.i4.1 + IL_06d3: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_StartPosition(valuetype [System.Windows.Forms]System.Windows.Forms.FormStartPosition) + IL_06d8: nop + .line 158,158 : 13,55 '' + IL_06d9: ldarg.0 + IL_06da: ldstr "Hyphen Configuration Center" + IL_06df: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_06e4: nop + .line 159,159 : 13,120 '' + IL_06e5: ldarg.0 + IL_06e6: ldarg.0 + IL_06e7: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurationDialog_FormClosing(object, + class [System.Windows.Forms]System.Windows.Forms.FormClosingEventArgs) + IL_06ed: newobj instance void [System.Windows.Forms]System.Windows.Forms.FormClosingEventHandler::.ctor(object, + native int) + IL_06f2: call instance void [System.Windows.Forms]System.Windows.Forms.Form::add_FormClosing(class [System.Windows.Forms]System.Windows.Forms.FormClosingEventHandler) + IL_06f7: nop + .line 160,160 : 13,47 '' + IL_06f8: ldarg.0 + IL_06f9: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_06fe: ldc.i4.0 + IL_06ff: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_0704: nop + .line 161,161 : 13,50 '' + IL_0705: ldarg.0 + IL_0706: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_070b: ldc.i4.0 + IL_070c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_0711: nop + .line 162,162 : 13,51 '' + IL_0712: ldarg.0 + IL_0713: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0718: ldc.i4.0 + IL_0719: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_071e: nop + .line 163,163 : 13,38 '' + IL_071f: ldarg.0 + IL_0720: ldc.i4.0 + IL_0721: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_0726: nop + .line 165,165 : 9,10 '' + IL_0727: ret + } // end of method ConfigurationDialog::InitializeComponent + +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog + +.class public auto ansi serializable sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.CategoryItem + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested public Command + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method Command::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item) runtime managed + { + } // end of method Command::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method Command::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method Command::EndInvoke + + } // end of class Command + + .field private string name + .field private string description + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl control + .field private class [mscorlib]System.Type controlType + .field private class [System.Drawing]System.Drawing.Image image + .field private bool isExpertOption + .method public hidebysig specialname rtspecialname + instance void .ctor(string name, + string description, + class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command command) cil managed + { + // Code size 47 (0x2f) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 50,51 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\CategoryItem.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor(string, + string) + IL_0008: nop + .line 52,52 : 9,10 '' + IL_0009: nop + .line 53,53 : 13,33 '' + IL_000a: ldarg.3 + IL_000b: ldnull + IL_000c: ceq + IL_000e: ldc.i4.0 + IL_000f: ceq + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0020 + + .line 54,54 : 17,60 '' + IL_0015: ldstr "command" + IL_001a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001f: throw + + .line 56,56 : 13,69 '' + IL_0020: ldarg.0 + IL_0021: ldarg.0 + IL_0022: ldarg.3 + IL_0023: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::.ctor(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem, + class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command) + IL_0028: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + .line 57,57 : 9,10 '' + IL_002d: nop + IL_002e: ret + } // end of method CategoryItem::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string name, + string description, + class [mscorlib]System.Type itemOptionsType) cil managed + { + // Code size 77 (0x4d) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 59,60 : 9,38 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor(string, + string) + IL_0008: nop + .line 61,61 : 9,10 '' + IL_0009: nop + .line 62,62 : 13,41 '' + IL_000a: ldarg.3 + IL_000b: ldnull + IL_000c: ceq + IL_000e: ldc.i4.0 + IL_000f: ceq + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0020 + + .line 63,63 : 17,68 '' + IL_0015: ldstr "itemOptionsType" + IL_001a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001f: throw + + .line 65,65 : 13,76 '' + IL_0020: ldarg.3 + IL_0021: ldtoken Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + IL_0026: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_002b: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0030: stloc.0 + IL_0031: ldloc.0 + IL_0032: brtrue.s IL_0044 + + .line 66,66 : 17,127 '' + IL_0034: ldstr "Type must derive from the CategoryItemOptionsContr" + + "ol class." + IL_0039: ldstr "itemOptionsType" + IL_003e: newobj instance void [mscorlib]System.ArgumentException::.ctor(string, + string) + IL_0043: throw + + .line 68,68 : 13,48 '' + IL_0044: ldarg.0 + IL_0045: ldarg.3 + IL_0046: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Configuration.CategoryItem::controlType + .line 69,69 : 9,10 '' + IL_004b: nop + IL_004c: ret + } // end of method CategoryItem::.ctor + + .method private hidebysig specialname rtspecialname + instance void .ctor(string name, + string description) cil managed + { + // Code size 72 (0x48) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 71,71 : 9,62 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 72,72 : 9,10 '' + IL_0007: nop + .line 73,73 : 13,44 '' + IL_0008: ldarg.1 + IL_0009: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000e: ldc.i4.0 + IL_000f: ceq + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0020 + + .line 74,74 : 17,57 '' + IL_0015: ldstr "name" + IL_001a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001f: throw + + .line 76,76 : 13,51 '' + IL_0020: ldarg.2 + IL_0021: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0026: ldc.i4.0 + IL_0027: ceq + IL_0029: stloc.0 + IL_002a: ldloc.0 + IL_002b: brtrue.s IL_0038 + + .line 77,77 : 17,64 '' + IL_002d: ldstr "description" + IL_0032: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0037: throw + + .line 79,79 : 13,30 '' + IL_0038: ldarg.0 + IL_0039: ldarg.1 + IL_003a: stfld string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::name + .line 80,80 : 13,44 '' + IL_003f: ldarg.0 + IL_0040: ldarg.2 + IL_0041: stfld string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::description + .line 81,81 : 9,10 '' + IL_0046: nop + IL_0047: ret + } // end of method CategoryItem::.ctor + + .method public hidebysig specialname instance string + get_Name() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 89,89 : 17,18 '' + IL_0000: nop + .line 89,89 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::name + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 89,89 : 32,33 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CategoryItem::get_Name + + .method public hidebysig specialname instance string + get_Description() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 94,94 : 17,18 '' + IL_0000: nop + .line 94,94 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::description + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 94,94 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CategoryItem::get_Description + + .method public hidebysig specialname instance class [System.Drawing]System.Drawing.Image + get_Image() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [System.Drawing]System.Drawing.Image CS$1$0000) + .line 99,99 : 17,18 '' + IL_0000: nop + .line 99,99 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.CategoryItem::image + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 99,99 : 33,34 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CategoryItem::get_Image + + .method public hidebysig specialname instance void + set_Image(class [System.Drawing]System.Drawing.Image 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 100,100 : 17,18 '' + IL_0000: nop + .line 100,100 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.CategoryItem::image + .line 100,100 : 34,35 '' + IL_0008: ret + } // end of method CategoryItem::set_Image + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + get_Control() cil managed + { + // Code size 66 (0x42) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl CS$1$0000, + [1] bool CS$4$0001) + .line 106,106 : 13,14 '' + IL_0000: nop + .line 107,107 : 17,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.1 + IL_000e: ldloc.1 + IL_000f: brtrue.s IL_0037 + + .line 108,108 : 17,18 '' + IL_0011: nop + .line 109,109 : 21,96 '' + IL_0012: ldarg.0 + IL_0013: ldarg.0 + IL_0014: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Configuration.CategoryItem::controlType + IL_0019: ldc.i4.1 + IL_001a: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type, + bool) + IL_001f: castclass Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + IL_0024: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + .line 110,110 : 21,46 '' + IL_0029: ldarg.0 + IL_002a: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + IL_002f: ldarg.0 + IL_0030: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::Initialize(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem) + IL_0035: nop + .line 111,111 : 17,18 '' + IL_0036: nop + .line 113,113 : 17,32 '' + IL_0037: ldarg.0 + IL_0038: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + IL_003d: stloc.0 + IL_003e: br.s IL_0040 + + .line 114,114 : 13,14 '' + IL_0040: ldloc.0 + IL_0041: ret + } // end of method CategoryItem::get_Control + + .method assembly hidebysig specialname + instance bool get_ControlInitialized() cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 120,120 : 13,14 '' + IL_0000: nop + .line 121,121 : 17,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 122,122 : 13,14 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method CategoryItem::get_ControlInitialized + + .method public hidebysig specialname instance bool + get_IsExpertOption() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 127,127 : 17,18 '' + IL_0000: nop + .line 127,127 : 19,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::isExpertOption + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 127,127 : 42,43 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CategoryItem::get_IsExpertOption + + .method public hidebysig specialname instance void + set_IsExpertOption(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 128,128 : 17,18 '' + IL_0000: nop + .line 128,128 : 19,42 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::isExpertOption + .line 128,128 : 43,44 '' + IL_0008: ret + } // end of method CategoryItem::set_IsExpertOption + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Name() + } // end of property CategoryItem::Name + .property instance string Description() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Description() + } // end of property CategoryItem::Description + .property instance class [System.Drawing]System.Drawing.Image + Image() + { + .get instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Image() + .set instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_Image(class [System.Drawing]System.Drawing.Image) + } // end of property CategoryItem::Image + .property instance class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + Control() + { + .get instance class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Control() + } // end of property CategoryItem::Control + .property instance bool ControlInitialized() + { + .get instance bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_ControlInitialized() + } // end of property CategoryItem::ControlInitialized + .property instance bool IsExpertOption() + { + .get instance bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_IsExpertOption() + .set instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_IsExpertOption(bool) + } // end of property CategoryItem::IsExpertOption +} // end of class Virtuoso.Miranda.Plugins.Configuration.CategoryItem + +.class public auto ansi serializable sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 29,29 : 9,52 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\CategoryItemCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0007: nop + .line 29,29 : 53,54 '' + IL_0008: nop + .line 29,29 : 55,56 '' + IL_0009: nop + IL_000a: ret + } // end of method CategoryItemCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader + extends [System.Windows.Forms]System.Windows.Forms.UserControl +{ + .field private class [System]System.ComponentModel.IContainer components + .field private class [System.Windows.Forms]System.Windows.Forms.PictureBox ImagePBOX + .field private class [System.Windows.Forms]System.Windows.Forms.Label DescriptionLABEL + .field private class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel panel1 + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 9,9 : 9,68 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemHeader.Designer.cs' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: stfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::components + .line 31,31 : 9,36 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemHeader.cs' + IL_0007: ldarg.0 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.UserControl::.ctor() + IL_000d: nop + .line 32,32 : 9,10 '' + IL_000e: nop + .line 33,33 : 13,35 '' + IL_000f: ldarg.0 + IL_0010: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::InitializeComponent() + IL_0015: nop + .line 34,34 : 9,10 '' + IL_0016: nop + IL_0017: ret + } // end of method CategoryItemHeader::.ctor + + .method public hidebysig specialname instance class [System.Drawing]System.Drawing.Image + get_Image() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] class [System.Drawing]System.Drawing.Image CS$1$0000) + .line 39,39 : 17,18 '' + IL_0000: nop + .line 39,39 : 19,42 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0007: callvirt instance class [System.Drawing]System.Drawing.Image [System.Windows.Forms]System.Windows.Forms.PictureBox::get_Image() + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 39,39 : 43,44 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method CategoryItemHeader::get_Image + + .method public hidebysig specialname instance void + set_Image(class [System.Drawing]System.Drawing.Image 'value') cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 40,40 : 17,18 '' + IL_0000: nop + .line 40,40 : 19,43 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0007: ldarg.1 + IL_0008: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + IL_000d: nop + .line 40,40 : 44,45 '' + IL_000e: ret + } // end of method CategoryItemHeader::set_Image + + .method public hidebysig specialname instance string + get_HeaderText() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 47,47 : 17,18 '' + IL_0000: nop + .line 47,47 : 19,48 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0007: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 47,47 : 49,50 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method CategoryItemHeader::get_HeaderText + + .method public hidebysig specialname instance void + set_HeaderText(string 'value') cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 48,48 : 17,18 '' + IL_0000: nop + .line 48,48 : 19,49 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0007: ldarg.1 + IL_0008: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_000d: nop + .line 48,48 : 50,51 '' + IL_000e: ret + } // end of method CategoryItemHeader::set_HeaderText + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Color + get_Color() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] valuetype [System.Drawing]System.Drawing.Color CS$1$0000) + .line 54,54 : 17,18 '' + IL_0000: nop + .line 54,54 : 19,47 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0007: callvirt instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_GradientColor() + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 54,54 : 48,49 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method CategoryItemHeader::get_Color + + .method public hidebysig specialname instance void + set_Color(valuetype [System.Drawing]System.Drawing.Color 'value') cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 55,55 : 17,18 '' + IL_0000: nop + .line 55,55 : 19,48 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0007: ldarg.1 + IL_0008: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor(valuetype [System.Drawing]System.Drawing.Color) + IL_000d: nop + .line 55,55 : 49,50 '' + IL_000e: ret + } // end of method CategoryItemHeader::set_Color + + .method public hidebysig specialname virtual + instance valuetype [System.Drawing]System.Drawing.Color + get_ForeColor() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] valuetype [System.Drawing]System.Drawing.Color CS$1$0000) + .line 61,61 : 13,14 '' + IL_0000: nop + .line 62,62 : 17,51 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0007: callvirt instance valuetype [System.Drawing]System.Drawing.Color [System.Windows.Forms]System.Windows.Forms.Control::get_ForeColor() + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 63,63 : 13,14 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method CategoryItemHeader::get_ForeColor + + .method public hidebysig specialname virtual + instance void set_ForeColor(valuetype [System.Drawing]System.Drawing.Color 'value') cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 65,65 : 13,14 '' + IL_0000: nop + .line 66,66 : 17,52 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0007: ldarg.1 + IL_0008: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + IL_000d: nop + .line 67,67 : 13,14 '' + IL_000e: ret + } // end of method CategoryItemHeader::set_ForeColor + + .method public hidebysig specialname instance class [System.Drawing]System.Drawing.Font + get_HeaderFont() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] class [System.Drawing]System.Drawing.Font CS$1$0000) + .line 73,73 : 17,18 '' + IL_0000: nop + .line 73,73 : 19,48 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0007: callvirt instance class [System.Drawing]System.Drawing.Font [System.Windows.Forms]System.Windows.Forms.Control::get_Font() + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 73,73 : 49,50 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method CategoryItemHeader::get_HeaderFont + + .method public hidebysig specialname instance void + set_HeaderFont(class [System.Drawing]System.Drawing.Font 'value') cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 74,74 : 17,18 '' + IL_0000: nop + .line 74,74 : 19,49 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0007: ldarg.1 + IL_0008: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_000d: nop + .line 74,74 : 50,51 '' + IL_000e: ret + } // end of method CategoryItemHeader::set_HeaderFont + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 44 (0x2c) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 16,16 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemHeader.Designer.cs' + IL_0000: nop + .line 17,17 : 13,51 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_000f + + IL_0004: ldarg.0 + IL_0005: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::components + IL_000a: ldnull + IL_000b: ceq + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.1 + IL_0010: nop + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0023 + + .line 18,18 : 13,14 '' + IL_0015: nop + .line 19,19 : 17,38 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::components + IL_001c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0021: nop + .line 20,20 : 13,14 '' + IL_0022: nop + .line 21,21 : 13,37 '' + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::Dispose(bool) + IL_002a: nop + .line 22,22 : 9,10 '' + IL_002b: ret + } // end of method CategoryItemHeader::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 676 (0x2a4) + .maxstack 6 + .line 31,31 : 9,10 '' + IL_0000: nop + .line 32,32 : 13,68 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::.ctor() + IL_0007: stfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + .line 33,33 : 13,70 '' + IL_000c: ldarg.0 + IL_000d: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0012: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + .line 34,34 : 13,87 '' + IL_0017: ldarg.0 + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::.ctor() + IL_001d: stfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + .line 35,35 : 13,86 '' + IL_0022: ldarg.0 + IL_0023: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0028: callvirt instance void [System]System.ComponentModel.ISupportInitialize::BeginInit() + IL_002d: nop + .line 36,36 : 13,41 '' + IL_002e: ldarg.0 + IL_002f: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0034: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0039: nop + .line 37,37 : 13,34 '' + IL_003a: ldarg.0 + IL_003b: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0040: nop + .line 41,41 : 13,105 '' + IL_0041: ldarg.0 + IL_0042: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0047: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_256_32x32() + IL_004c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0051: nop + .line 42,42 : 13,71 '' + IL_0052: ldarg.0 + IL_0053: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0058: ldc.i4.s 10 + IL_005a: ldc.i4.4 + IL_005b: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0060: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0065: nop + .line 43,43 : 13,47 '' + IL_0066: ldarg.0 + IL_0067: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_006c: ldstr "ImagePBOX" + IL_0071: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0076: nop + .line 44,44 : 13,67 '' + IL_0077: ldarg.0 + IL_0078: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_007d: ldc.i4.s 32 + IL_007f: ldc.i4.s 32 + IL_0081: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0086: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_008b: nop + .line 45,45 : 13,88 '' + IL_008c: ldarg.0 + IL_008d: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0092: ldc.i4.2 + IL_0093: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_SizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.PictureBoxSizeMode) + IL_0098: nop + .line 46,46 : 13,41 '' + IL_0099: ldarg.0 + IL_009a: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_009f: ldc.i4.0 + IL_00a0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabIndex(int32) + IL_00a5: nop + .line 47,47 : 13,44 '' + IL_00a6: ldarg.0 + IL_00a7: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_00ac: ldc.i4.0 + IL_00ad: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabStop(bool) + IL_00b2: nop + .line 51,51 : 13,51 '' + IL_00b3: ldarg.0 + IL_00b4: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_00b9: ldc.i4.1 + IL_00ba: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_00bf: nop + .line 52,52 : 13,160 '' + IL_00c0: ldarg.0 + IL_00c1: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_00c6: ldstr "Tahoma" + IL_00cb: ldc.r4 8. + IL_00d0: ldc.i4.1 + IL_00d1: ldc.i4.3 + IL_00d2: ldc.i4 0xee + IL_00d7: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_00dc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_00e1: nop + .line 53,53 : 13,74 '' + IL_00e2: ldarg.0 + IL_00e3: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_00e8: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Black() + IL_00ed: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + IL_00f2: nop + .line 54,54 : 13,79 '' + IL_00f3: ldarg.0 + IL_00f4: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_00f9: ldc.i4.s 50 + IL_00fb: ldc.i4.s 12 + IL_00fd: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0102: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0107: nop + .line 55,55 : 13,61 '' + IL_0108: ldarg.0 + IL_0109: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_010e: ldstr "DescriptionLABEL" + IL_0113: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0118: nop + .line 56,56 : 13,73 '' + IL_0119: ldarg.0 + IL_011a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_011f: ldc.i4.0 + IL_0120: ldc.i4.s 16 + IL_0122: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0127: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_012c: nop + .line 57,57 : 13,48 '' + IL_012d: ldarg.0 + IL_012e: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0133: ldc.i4.2 + IL_0134: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_0139: nop + .line 61,61 : 13,54 '' + IL_013a: ldarg.0 + IL_013b: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0140: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0145: ldarg.0 + IL_0146: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_014b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0150: nop + .line 62,62 : 13,61 '' + IL_0151: ldarg.0 + IL_0152: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0157: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_015c: ldarg.0 + IL_015d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0162: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0167: nop + .line 63,63 : 13,68 '' + IL_0168: ldarg.0 + IL_0169: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_016e: ldc.i4.5 + IL_016f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_0174: nop + .line 64,64 : 13,141 '' + IL_0175: ldarg.0 + IL_0176: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_017b: ldc.i4 0xff + IL_0180: ldc.i4 0x80 + IL_0185: ldc.i4.0 + IL_0186: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_018b: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0190: nop + .line 65,65 : 13,67 '' + IL_0191: ldarg.0 + IL_0192: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0197: ldc.i4.0 + IL_0198: ldc.i4.0 + IL_0199: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_019e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_01a3: nop + .line 66,66 : 13,41 '' + IL_01a4: ldarg.0 + IL_01a5: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_01aa: ldstr "panel1" + IL_01af: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_01b4: nop + .line 67,67 : 13,41 '' + IL_01b5: ldarg.0 + IL_01b6: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_01bb: ldc.r4 -90. + IL_01c0: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_Rotation(float32) + IL_01c5: nop + .line 68,68 : 13,65 '' + IL_01c6: ldarg.0 + IL_01c7: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_01cc: ldc.i4 0x2fd + IL_01d1: ldc.i4.s 40 + IL_01d3: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_01d8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_01dd: nop + .line 69,69 : 13,38 '' + IL_01de: ldarg.0 + IL_01df: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_01e4: ldc.i4.3 + IL_01e5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_01ea: nop + .line 73,73 : 13,74 '' + IL_01eb: ldarg.0 + IL_01ec: ldc.r4 6. + IL_01f1: ldc.r4 13. + IL_01f6: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_01fb: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + IL_0200: nop + .line 74,74 : 13,74 '' + IL_0201: ldarg.0 + IL_0202: ldc.i4.1 + IL_0203: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + IL_0208: nop + .line 75,75 : 13,63 '' + IL_0209: ldarg.0 + IL_020a: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_020f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0214: nop + .line 76,76 : 13,44 '' + IL_0215: ldarg.0 + IL_0216: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_021b: ldarg.0 + IL_021c: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0221: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0226: nop + .line 77,77 : 13,150 '' + IL_0227: ldarg.0 + IL_0228: ldstr "Tahoma" + IL_022d: ldc.r4 8.25 + IL_0232: ldc.i4.0 + IL_0233: ldc.i4.3 + IL_0234: ldc.i4 0xee + IL_0239: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_023e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_0243: nop + .line 78,78 : 13,65 '' + IL_0244: ldarg.0 + IL_0245: ldc.i4 0x12c + IL_024a: ldc.i4.s 40 + IL_024c: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0251: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_0256: nop + .line 79,79 : 13,46 '' + IL_0257: ldarg.0 + IL_0258: ldstr "CategoryItemHeader" + IL_025d: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0262: nop + .line 80,80 : 13,58 '' + IL_0263: ldarg.0 + IL_0264: ldc.i4 0x2fd + IL_0269: ldc.i4.s 40 + IL_026b: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0270: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0275: nop + .line 81,81 : 13,84 '' + IL_0276: ldarg.0 + IL_0277: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_027c: callvirt instance void [System]System.ComponentModel.ISupportInitialize::EndInit() + IL_0281: nop + .line 82,82 : 13,45 '' + IL_0282: ldarg.0 + IL_0283: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0288: ldc.i4.0 + IL_0289: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_028e: nop + .line 83,83 : 13,41 '' + IL_028f: ldarg.0 + IL_0290: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0295: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + IL_029a: nop + .line 84,84 : 13,38 '' + IL_029b: ldarg.0 + IL_029c: ldc.i4.0 + IL_029d: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_02a2: nop + .line 86,86 : 9,10 '' + IL_02a3: ret + } // end of method CategoryItemHeader::InitializeComponent + + .property instance class [System.Drawing]System.Drawing.Image + Image() + { + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + .get instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_Image() + } // end of property CategoryItemHeader::Image + .property instance string HeaderText() + { + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.LocalizableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.DefaultValueAttribute::.ctor(string) = ( 01 00 06 48 65 61 64 65 72 00 00 ) // ...Header.. + .custom instance void [System]System.ComponentModel.EditorAttribute::.ctor(string, + class [mscorlib]System.Type) = ( 01 00 80 84 53 79 73 74 65 6D 2E 43 6F 6D 70 6F // ....System.Compo + 6E 65 6E 74 4D 6F 64 65 6C 2E 44 65 73 69 67 6E // nentModel.Design + 2E 4D 75 6C 74 69 6C 69 6E 65 53 74 72 69 6E 67 // .MultilineString + 45 64 69 74 6F 72 2C 20 53 79 73 74 65 6D 2E 44 // Editor, System.D + 65 73 69 67 6E 2C 20 56 65 72 73 69 6F 6E 3D 32 // esign, Version=2 + 2E 30 2E 30 2E 30 2C 20 43 75 6C 74 75 72 65 3D // .0.0.0, Culture= + 6E 65 75 74 72 61 6C 2C 20 50 75 62 6C 69 63 4B // neutral, PublicK + 65 79 54 6F 6B 65 6E 3D 62 30 33 66 35 66 37 66 // eyToken=b03f5f7f + 31 31 64 35 30 61 33 61 75 53 79 73 74 65 6D 2E // 11d50a3auSystem. + 44 72 61 77 69 6E 67 2E 44 65 73 69 67 6E 2E 55 // Drawing.Design.U + 49 54 79 70 65 45 64 69 74 6F 72 2C 20 53 79 73 // ITypeEditor, Sys + 74 65 6D 2E 44 72 61 77 69 6E 67 2C 20 56 65 72 // tem.Drawing, Ver + 73 69 6F 6E 3D 32 2E 30 2E 30 2E 30 2C 20 43 75 // sion=2.0.0.0, Cu + 6C 74 75 72 65 3D 6E 65 75 74 72 61 6C 2C 20 50 // lture=neutral, P + 75 62 6C 69 63 4B 65 79 54 6F 6B 65 6E 3D 62 30 // ublicKeyToken=b0 + 33 66 35 66 37 66 31 31 64 35 30 61 33 61 00 00 ) // 3f5f7f11d50a3a.. + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + .get instance string Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_HeaderText() + } // end of property CategoryItemHeader::HeaderText + .property instance valuetype [System.Drawing]System.Drawing.Color + Color() + { + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .get instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_Color() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + } // end of property CategoryItemHeader::Color + .property instance valuetype [System.Drawing]System.Drawing.Color + ForeColor() + { + .get instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_ForeColor() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + } // end of property CategoryItemHeader::ForeColor + .property instance class [System.Drawing]System.Drawing.Font + HeaderFont() + { + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .get instance class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_HeaderFont() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + } // end of property CategoryItemHeader::HeaderFont +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl + extends Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl +{ + .field private class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command Command + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command command) cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 34,34 : 9,91 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemCommandControl.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::.ctor() + IL_0006: nop + .line 35,35 : 9,10 '' + IL_0007: nop + .line 36,36 : 13,33 '' + IL_0008: ldarg.2 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 37,37 : 17,60 '' + IL_0013: ldstr "command" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 39,39 : 13,36 '' + IL_001e: ldarg.0 + IL_001f: ldarg.2 + IL_0020: stfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::Command + .line 40,40 : 9,10 '' + IL_0025: nop + IL_0026: ret + } // end of method CategoryItemCommandControl::.ctor + + .method famorassem hidebysig virtual instance void + OnSelected() cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 47,47 : 9,10 '' + IL_0000: nop + .line 48,48 : 13,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::Command + IL_0007: ldarg.0 + IL_0008: call instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItem Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_ParentItem() + IL_000d: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command::Invoke(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem) + IL_0012: nop + .line 49,49 : 9,10 '' + IL_0013: ret + } // end of method CategoryItemCommandControl::OnSelected + + .method famorassem hidebysig specialname virtual + instance bool get_HasUI() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 54,54 : 13,14 '' + IL_0000: nop + .line 55,55 : 17,30 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 56,56 : 13,14 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method CategoryItemCommandControl::get_HasUI + + .property instance bool HasUI() + { + .get instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::get_HasUI() + } // end of property CategoryItemCommandControl::HasUI +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl + +.class public auto ansi serializable sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Category + extends [mscorlib]System.Object +{ + .field private string name + .field private string description + .field private class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection items + .method public hidebysig specialname rtspecialname + instance void .ctor(string name, + string description) cil managed + { + // Code size 83 (0x53) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 39,39 : 9,57 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Category.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 40,40 : 9,10 '' + IL_0007: nop + .line 41,41 : 13,44 '' + IL_0008: ldarg.1 + IL_0009: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000e: ldc.i4.0 + IL_000f: ceq + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0020 + + .line 42,42 : 17,57 '' + IL_0015: ldstr "name" + IL_001a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001f: throw + + .line 44,44 : 13,51 '' + IL_0020: ldarg.2 + IL_0021: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0026: ldc.i4.0 + IL_0027: ceq + IL_0029: stloc.0 + IL_002a: ldloc.0 + IL_002b: brtrue.s IL_0038 + + .line 45,45 : 17,64 '' + IL_002d: ldstr "description" + IL_0032: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0037: throw + + .line 47,47 : 13,55 '' + IL_0038: ldarg.0 + IL_0039: newobj instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection::.ctor() + IL_003e: stfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::items + .line 48,48 : 13,30 '' + IL_0043: ldarg.0 + IL_0044: ldarg.1 + IL_0045: stfld string Virtuoso.Miranda.Plugins.Configuration.Category::name + .line 49,49 : 13,44 '' + IL_004a: ldarg.0 + IL_004b: ldarg.2 + IL_004c: stfld string Virtuoso.Miranda.Plugins.Configuration.Category::description + .line 50,50 : 9,10 '' + IL_0051: nop + IL_0052: ret + } // end of method Category::.ctor + + .method public hidebysig specialname instance string + get_Description() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 58,58 : 17,18 '' + IL_0000: nop + .line 58,58 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Configuration.Category::description + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 58,58 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Category::get_Description + + .method public hidebysig specialname instance string + get_Name() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 63,63 : 17,18 '' + IL_0000: nop + .line 63,63 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Configuration.Category::name + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 63,63 : 32,33 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Category::get_Name + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection + get_Items() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection CS$1$0000) + .line 68,68 : 17,18 '' + IL_0000: nop + .line 68,68 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::items + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 68,68 : 33,34 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Category::get_Items + + .property instance string Description() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.Category::get_Description() + } // end of property Category::Description + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.Category::get_Name() + } // end of property Category::Name + .property instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection + Items() + { + .get instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::get_Items() + } // end of property Category::Items +} // end of class Virtuoso.Miranda.Plugins.Configuration.Category + +.class public auto ansi serializable sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.CategoryCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 29,29 : 9,46 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\CategoryCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0007: nop + .line 29,29 : 47,48 '' + IL_0008: nop + .line 29,29 : 49,50 '' + IL_0009: nop + IL_000a: ret + } // end of method CategoryCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection + extends [System.Windows.Forms]System.Windows.Forms.UserControl +{ + .field private class [System]System.ComponentModel.IContainer components + .field private class [System.Windows.Forms]System.Windows.Forms.Label SectionLABEL + .field private class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel panel1 + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 9,9 : 9,68 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemSection.Designer.cs' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: stfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::components + .line 31,31 : 9,37 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemSection.cs' + IL_0007: ldarg.0 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.UserControl::.ctor() + IL_000d: nop + .line 32,32 : 9,10 '' + IL_000e: nop + .line 33,33 : 13,35 '' + IL_000f: ldarg.0 + IL_0010: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::InitializeComponent() + IL_0015: nop + .line 34,34 : 9,10 '' + IL_0016: nop + IL_0017: ret + } // end of method CategoryItemSection::.ctor + + .method public hidebysig specialname instance string + get_SectionName() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 40,40 : 17,18 '' + IL_0000: nop + .line 40,40 : 19,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_0007: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 40,40 : 45,46 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method CategoryItemSection::get_SectionName + + .method public hidebysig specialname instance void + set_SectionName(string 'value') cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 41,41 : 17,18 '' + IL_0000: nop + .line 41,41 : 19,45 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_0007: ldarg.1 + IL_0008: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_000d: nop + .line 41,41 : 46,47 '' + IL_000e: ret + } // end of method CategoryItemSection::set_SectionName + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Color + get_Color() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] valuetype [System.Drawing]System.Drawing.Color CS$1$0000) + .line 47,47 : 17,18 '' + IL_0000: nop + .line 47,47 : 19,47 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0007: callvirt instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_GradientColor() + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 47,47 : 48,49 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method CategoryItemSection::get_Color + + .method public hidebysig specialname instance void + set_Color(valuetype [System.Drawing]System.Drawing.Color 'value') cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 48,48 : 17,18 '' + IL_0000: nop + .line 48,48 : 19,48 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0007: ldarg.1 + IL_0008: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor(valuetype [System.Drawing]System.Drawing.Color) + IL_000d: nop + .line 48,48 : 49,50 '' + IL_000e: ret + } // end of method CategoryItemSection::set_Color + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 44 (0x2c) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 16,16 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemSection.Designer.cs' + IL_0000: nop + .line 17,17 : 13,51 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_000f + + IL_0004: ldarg.0 + IL_0005: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::components + IL_000a: ldnull + IL_000b: ceq + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.1 + IL_0010: nop + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0023 + + .line 18,18 : 13,14 '' + IL_0015: nop + .line 19,19 : 17,38 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::components + IL_001c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0021: nop + .line 20,20 : 13,14 '' + IL_0022: nop + .line 21,21 : 13,37 '' + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::Dispose(bool) + IL_002a: nop + .line 22,22 : 9,10 '' + IL_002b: ret + } // end of method CategoryItemSection::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 484 (0x1e4) + .maxstack 6 + .line 31,31 : 9,10 '' + IL_0000: nop + .line 32,32 : 13,87 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::.ctor() + IL_0007: stfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + .line 33,33 : 13,66 '' + IL_000c: ldarg.0 + IL_000d: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0012: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + .line 34,34 : 13,41 '' + IL_0017: ldarg.0 + IL_0018: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_001d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0022: nop + .line 35,35 : 13,34 '' + IL_0023: ldarg.0 + IL_0024: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0029: nop + .line 39,39 : 13,57 '' + IL_002a: ldarg.0 + IL_002b: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0030: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0035: ldarg.0 + IL_0036: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_003b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0040: nop + .line 40,40 : 13,68 '' + IL_0041: ldarg.0 + IL_0042: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0047: ldc.i4.5 + IL_0048: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_004d: nop + .line 41,41 : 13,143 '' + IL_004e: ldarg.0 + IL_004f: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0054: ldc.i4 0xff + IL_0059: ldc.i4 0xe0 + IL_005e: ldc.i4 0xc0 + IL_0063: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0068: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor(valuetype [System.Drawing]System.Drawing.Color) + IL_006d: nop + .line 42,42 : 13,67 '' + IL_006e: ldarg.0 + IL_006f: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0074: ldc.i4.0 + IL_0075: ldc.i4.0 + IL_0076: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_007b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0080: nop + .line 43,43 : 13,41 '' + IL_0081: ldarg.0 + IL_0082: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0087: ldstr "panel1" + IL_008c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0091: nop + .line 44,44 : 13,40 '' + IL_0092: ldarg.0 + IL_0093: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0098: ldc.r4 90. + IL_009d: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_Rotation(float32) + IL_00a2: nop + .line 45,45 : 13,65 '' + IL_00a3: ldarg.0 + IL_00a4: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_00a9: ldc.i4 0x2fd + IL_00ae: ldc.i4.s 20 + IL_00b0: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00b5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_00ba: nop + .line 46,46 : 13,38 '' + IL_00bb: ldarg.0 + IL_00bc: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_00c1: ldc.i4.1 + IL_00c2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_00c7: nop + .line 50,50 : 13,47 '' + IL_00c8: ldarg.0 + IL_00c9: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_00ce: ldc.i4.1 + IL_00cf: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_00d4: nop + .line 51,51 : 13,80 '' + IL_00d5: ldarg.0 + IL_00d6: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_00db: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_MenuText() + IL_00e0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + IL_00e5: nop + .line 52,52 : 13,73 '' + IL_00e6: ldarg.0 + IL_00e7: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_00ec: ldc.i4.8 + IL_00ed: ldc.i4.4 + IL_00ee: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_00f3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_00f8: nop + .line 53,53 : 13,53 '' + IL_00f9: ldarg.0 + IL_00fa: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_00ff: ldstr "SectionLABEL" + IL_0104: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0109: nop + .line 54,54 : 13,69 '' + IL_010a: ldarg.0 + IL_010b: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_0110: ldc.i4.0 + IL_0111: ldc.i4.s 13 + IL_0113: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0118: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_011d: nop + .line 55,55 : 13,44 '' + IL_011e: ldarg.0 + IL_011f: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_0124: ldc.i4.0 + IL_0125: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_012a: nop + .line 59,59 : 13,74 '' + IL_012b: ldarg.0 + IL_012c: ldc.r4 7. + IL_0131: ldc.r4 13. + IL_0136: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_013b: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + IL_0140: nop + .line 60,60 : 13,74 '' + IL_0141: ldarg.0 + IL_0142: ldc.i4.1 + IL_0143: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + IL_0148: nop + .line 61,61 : 13,63 '' + IL_0149: ldarg.0 + IL_014a: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_014f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0154: nop + .line 62,62 : 13,44 '' + IL_0155: ldarg.0 + IL_0156: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_015b: ldarg.0 + IL_015c: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0161: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0166: nop + .line 63,63 : 13,147 '' + IL_0167: ldarg.0 + IL_0168: ldstr "Tahoma" + IL_016d: ldc.r4 8.25 + IL_0172: ldc.i4.1 + IL_0173: ldc.i4.3 + IL_0174: ldc.i4 0xee + IL_0179: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_017e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_0183: nop + .line 64,64 : 13,57 '' + IL_0184: ldarg.0 + IL_0185: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Black() + IL_018a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + IL_018f: nop + .line 65,65 : 13,65 '' + IL_0190: ldarg.0 + IL_0191: ldc.i4 0x12c + IL_0196: ldc.i4.s 20 + IL_0198: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_019d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_01a2: nop + .line 66,66 : 13,47 '' + IL_01a3: ldarg.0 + IL_01a4: ldstr "CategoryItemSection" + IL_01a9: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_01ae: nop + .line 67,67 : 13,58 '' + IL_01af: ldarg.0 + IL_01b0: ldc.i4 0x2fd + IL_01b5: ldc.i4.s 20 + IL_01b7: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_01bc: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_01c1: nop + .line 68,68 : 13,45 '' + IL_01c2: ldarg.0 + IL_01c3: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_01c8: ldc.i4.0 + IL_01c9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_01ce: nop + .line 69,69 : 13,41 '' + IL_01cf: ldarg.0 + IL_01d0: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_01d5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + IL_01da: nop + .line 70,70 : 13,38 '' + IL_01db: ldarg.0 + IL_01dc: ldc.i4.0 + IL_01dd: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_01e2: nop + .line 72,72 : 9,10 '' + IL_01e3: ret + } // end of method CategoryItemSection::InitializeComponent + + .property instance string SectionName() + { + .custom instance void [System]System.ComponentModel.DefaultValueAttribute::.ctor(string) = ( 01 00 07 53 65 63 74 69 6F 6E 00 00 ) // ...Section.. + .custom instance void [System]System.ComponentModel.LocalizableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.EditorAttribute::.ctor(string, + class [mscorlib]System.Type) = ( 01 00 80 84 53 79 73 74 65 6D 2E 43 6F 6D 70 6F // ....System.Compo + 6E 65 6E 74 4D 6F 64 65 6C 2E 44 65 73 69 67 6E // nentModel.Design + 2E 4D 75 6C 74 69 6C 69 6E 65 53 74 72 69 6E 67 // .MultilineString + 45 64 69 74 6F 72 2C 20 53 79 73 74 65 6D 2E 44 // Editor, System.D + 65 73 69 67 6E 2C 20 56 65 72 73 69 6F 6E 3D 32 // esign, Version=2 + 2E 30 2E 30 2E 30 2C 20 43 75 6C 74 75 72 65 3D // .0.0.0, Culture= + 6E 65 75 74 72 61 6C 2C 20 50 75 62 6C 69 63 4B // neutral, PublicK + 65 79 54 6F 6B 65 6E 3D 62 30 33 66 35 66 37 66 // eyToken=b03f5f7f + 31 31 64 35 30 61 33 61 75 53 79 73 74 65 6D 2E // 11d50a3auSystem. + 44 72 61 77 69 6E 67 2E 44 65 73 69 67 6E 2E 55 // Drawing.Design.U + 49 54 79 70 65 45 64 69 74 6F 72 2C 20 53 79 73 // ITypeEditor, Sys + 74 65 6D 2E 44 72 61 77 69 6E 67 2C 20 56 65 72 // tem.Drawing, Ver + 73 69 6F 6E 3D 32 2E 30 2E 30 2E 30 2C 20 43 75 // sion=2.0.0.0, Cu + 6C 74 75 72 65 3D 6E 65 75 74 72 61 6C 2C 20 50 // lture=neutral, P + 75 62 6C 69 63 4B 65 79 54 6F 6B 65 6E 3D 62 30 // ublicKeyToken=b0 + 33 66 35 66 37 66 31 31 64 35 30 61 33 61 00 00 ) // 3f5f7f11d50a3a.. + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_SectionName(string) + .get instance string Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::get_SectionName() + } // end of property CategoryItemSection::SectionName + .property instance valuetype [System.Drawing]System.Drawing.Color + Color() + { + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .get instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::get_Color() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_Color(valuetype [System.Drawing]System.Drawing.Color) + } // end of property CategoryItemSection::Color +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Configuration.IEncryption +{ + .method public hidebysig newslot abstract virtual + instance uint8[] Encrypt(uint8[] data) cil managed + { + } // end of method IEncryption::Encrypt + + .method public hidebysig newslot abstract virtual + instance uint8[] Decrypt(uint8[] data) cil managed + { + } // end of method IEncryption::Decrypt + +} // end of class Virtuoso.Miranda.Plugins.Configuration.IEncryption + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Configuration.IStorage + implements [mscorlib]System.IDisposable +{ + .method public hidebysig newslot abstract virtual + instance class [mscorlib]System.IO.Stream + OpenRead(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method IStorage::OpenRead + + .method public hidebysig newslot abstract virtual + instance class [mscorlib]System.IO.Stream + OpenWrite(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method IStorage::OpenWrite + + .method public hidebysig newslot abstract virtual + instance bool Exists(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method IStorage::Exists + +} // end of class Virtuoso.Miranda.Plugins.Configuration.IStorage + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.StorageBase + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Configuration.IStorage, + [mscorlib]System.IDisposable +{ + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 30,30 : 9,32 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\StorageBase.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 30,30 : 33,34 '' + IL_0007: nop + .line 30,30 : 35,36 '' + IL_0008: nop + IL_0009: ret + } // end of method StorageBase::.ctor + + .method family hidebysig newslot virtual + instance string GetFileName(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 166 (0xa6) + .maxstack 4 + .locals init ([0] string versionSuffix, + [1] string profileBoundSuffix, + [2] string CS$1$0000, + [3] bool CS$4$0001) + .line 37,37 : 9,10 '' + IL_0000: nop + .line 38,38 : 13,36 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.3 + IL_0009: ldloc.3 + IL_000a: brtrue.s IL_0017 + + .line 39,39 : 17,63 '' + IL_000c: ldstr "configType" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 41,42 : 13,59 '' + IL_0017: ldarg.2 + IL_0018: brfalse.s IL_0028 + + IL_001a: ldarg.2 + IL_001b: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Version() + IL_0020: ldnull + IL_0021: call bool [mscorlib]System.Version::op_Inequality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_0026: brtrue.s IL_002f + + IL_0028: ldsfld string [mscorlib]System.String::Empty + IL_002d: br.s IL_003a + + IL_002f: ldarg.2 + IL_0030: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Version() + IL_0035: callvirt instance string [mscorlib]System.Object::ToString() + IL_003a: nop + IL_003b: stloc.0 + .line 44,44 : 13,54 '' + IL_003c: ldsfld string [mscorlib]System.String::Empty + IL_0041: stloc.1 + .line 46,46 : 13,57 '' + IL_0042: ldarg.2 + IL_0043: brfalse.s IL_0050 + + IL_0045: ldarg.2 + IL_0046: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_ProfileBound() + IL_004b: ldc.i4.0 + IL_004c: ceq + IL_004e: br.s IL_0051 + + IL_0050: ldc.i4.1 + IL_0051: nop + IL_0052: stloc.3 + IL_0053: ldloc.3 + IL_0054: brtrue.s IL_007c + + .line 47,47 : 13,14 '' + IL_0056: nop + .line 48,48 : 17,49 '' + IL_0057: call bool Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Initialized() + IL_005c: stloc.3 + IL_005d: ldloc.3 + IL_005e: brtrue.s IL_0066 + + .line 49,49 : 21,59 '' + IL_0060: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0065: throw + + .line 51,51 : 17,123 '' + IL_0066: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_006b: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaDatabase() + IL_0070: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::get_ProfileName() + IL_0075: call string [mscorlib]System.IO.Path::GetFileNameWithoutExtension(string) + IL_007a: stloc.1 + .line 52,52 : 13,14 '' + IL_007b: nop + .line 54,54 : 13,132 '' + IL_007c: ldstr "{0}_{1}_{2}" + IL_0081: ldarg.1 + IL_0082: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0087: ldloc.0 + IL_0088: ldloc.1 + IL_0089: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_008e: ldc.i4.s 46 + IL_0090: ldc.i4.s 45 + IL_0092: callvirt instance string [mscorlib]System.String::Replace(char, + char) + IL_0097: ldstr ".dat" + IL_009c: call string [mscorlib]System.String::Concat(string, + string) + IL_00a1: stloc.2 + IL_00a2: br.s IL_00a4 + + .line 55,55 : 9,10 '' + IL_00a4: ldloc.2 + IL_00a5: ret + } // end of method StorageBase::GetFileName + + .method public hidebysig newslot abstract virtual + instance class [mscorlib]System.IO.Stream + OpenRead(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method StorageBase::OpenRead + + .method public hidebysig newslot abstract virtual + instance class [mscorlib]System.IO.Stream + OpenWrite(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method StorageBase::OpenWrite + + .method public hidebysig newslot abstract virtual + instance bool Exists(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method StorageBase::Exists + + .method public hidebysig newslot abstract virtual + instance void Dispose() cil managed + { + } // end of method StorageBase::Dispose + +} // end of class Virtuoso.Miranda.Plugins.Configuration.StorageBase + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage + extends Virtuoso.Miranda.Plugins.Configuration.StorageBase +{ + .field private class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Store + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 38,38 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\IsolatedStorage.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Configuration.StorageBase::.ctor() + IL_0006: nop + .line 39,39 : 9,10 '' + IL_0007: nop + .line 40,40 : 13,67 '' + IL_0008: ldarg.0 + IL_0009: call class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile::GetUserStoreForAssembly() + IL_000e: stfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + .line 41,41 : 9,10 '' + IL_0013: nop + IL_0014: ret + } // end of method IsolatedStorage::.ctor + + .method public hidebysig virtual instance class [mscorlib]System.IO.Stream + OpenRead(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init ([0] class [mscorlib]System.IO.Stream CS$1$0000, + [1] bool CS$4$0001) + .line 48,48 : 9,10 '' + IL_0000: nop + .line 49,49 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.1 + IL_000e: ldloc.1 + IL_000f: brtrue.s IL_0017 + + .line 50,50 : 17,55 '' + IL_0011: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0016: throw + + .line 52,52 : 13,106 '' + IL_0017: ldarg.0 + IL_0018: ldarg.1 + IL_0019: ldarg.2 + IL_001a: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.StorageBase::GetFileName(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_001f: ldc.i4.3 + IL_0020: ldarg.0 + IL_0021: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0026: newobj instance void [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFileStream::.ctor(string, + valuetype [mscorlib]System.IO.FileMode, + class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile) + IL_002b: stloc.0 + IL_002c: br.s IL_002e + + .line 53,53 : 9,10 '' + IL_002e: ldloc.0 + IL_002f: ret + } // end of method IsolatedStorage::OpenRead + + .method public hidebysig virtual instance class [mscorlib]System.IO.Stream + OpenWrite(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init ([0] class [mscorlib]System.IO.Stream CS$1$0000, + [1] bool CS$4$0001) + .line 56,56 : 9,10 '' + IL_0000: nop + .line 57,57 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.1 + IL_000e: ldloc.1 + IL_000f: brtrue.s IL_0017 + + .line 58,58 : 17,55 '' + IL_0011: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0016: throw + + .line 60,60 : 13,108 '' + IL_0017: ldarg.0 + IL_0018: ldarg.1 + IL_0019: ldarg.2 + IL_001a: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.StorageBase::GetFileName(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_001f: ldc.i4.2 + IL_0020: ldarg.0 + IL_0021: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0026: newobj instance void [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFileStream::.ctor(string, + valuetype [mscorlib]System.IO.FileMode, + class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile) + IL_002b: stloc.0 + IL_002c: br.s IL_002e + + .line 61,61 : 9,10 '' + IL_002e: ldloc.0 + IL_002f: ret + } // end of method IsolatedStorage::OpenWrite + + .method public hidebysig virtual instance bool + Exists(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 33 (0x21) + .maxstack 4 + .locals init ([0] bool CS$1$0000) + .line 64,64 : 9,10 '' + IL_0000: nop + .line 65,65 : 13,85 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0007: ldarg.0 + IL_0008: ldarg.1 + IL_0009: ldarg.2 + IL_000a: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.StorageBase::GetFileName(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_000f: callvirt instance string[] [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile::GetFileNames(string) + IL_0014: ldlen + IL_0015: conv.i4 + IL_0016: ldc.i4.0 + IL_0017: ceq + IL_0019: ldc.i4.0 + IL_001a: ceq + IL_001c: stloc.0 + IL_001d: br.s IL_001f + + .line 66,66 : 9,10 '' + IL_001f: ldloc.0 + IL_0020: ret + } // end of method IsolatedStorage::Exists + + .method public hidebysig virtual instance void + Dispose() cil managed + { + // Code size 34 (0x22) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 69,69 : 9,10 '' + IL_0000: nop + .line 70,70 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_001a + + .line 71,71 : 17,33 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0014: callvirt instance void [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile::Dispose() + IL_0019: nop + .line 73,73 : 13,26 '' + IL_001a: ldarg.0 + IL_001b: ldnull + IL_001c: stfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + .line 74,74 : 9,10 '' + IL_0021: ret + } // end of method IsolatedStorage::Dispose + +} // end of class Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.PortableEncryption + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Configuration.IEncryption +{ + .field private static initonly uint8[] KeyGeneratorSalt + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 36,36 : 9,39 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\PortableEncryption.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 36,36 : 40,41 '' + IL_0007: nop + .line 36,36 : 42,43 '' + IL_0008: nop + IL_0009: ret + } // end of method PortableEncryption::.ctor + + .method public hidebysig newslot virtual + instance uint8[] Encrypt(uint8[] data) cil managed + { + // Code size 90 (0x5a) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Security.Cryptography.ICryptoTransform transform, + [1] class [mscorlib]System.IO.MemoryStream 'stream', + [2] class [mscorlib]System.Security.Cryptography.CryptoStream crypto, + [3] uint8[] CS$1$0000, + [4] bool CS$4$0001) + .line 43,43 : 9,10 '' + IL_0000: nop + .line 44,44 : 13,60 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance class [mscorlib]System.Security.Cryptography.ICryptoTransform Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::CreateEncryptor() + IL_0007: stloc.0 + .line 46,46 : 20,71 '' + IL_0008: ldarg.1 + IL_0009: ldlen + IL_000a: conv.i4 + IL_000b: newobj instance void [mscorlib]System.IO.MemoryStream::.ctor(int32) + IL_0010: stloc.1 + .line 47,47 : 13,14 '' + .try + { + IL_0011: nop + .line 48,48 : 24,105 '' + IL_0012: ldloc.1 + IL_0013: ldloc.0 + IL_0014: ldc.i4.1 + IL_0015: newobj instance void [mscorlib]System.Security.Cryptography.CryptoStream::.ctor(class [mscorlib]System.IO.Stream, + class [mscorlib]System.Security.Cryptography.ICryptoTransform, + valuetype [mscorlib]System.Security.Cryptography.CryptoStreamMode) + IL_001a: stloc.2 + .line 49,49 : 21,56 '' + .try + { + IL_001b: ldloc.2 + IL_001c: ldarg.1 + IL_001d: ldc.i4.0 + IL_001e: ldarg.1 + IL_001f: ldlen + IL_0020: conv.i4 + IL_0021: callvirt instance void [mscorlib]System.IO.Stream::Write(uint8[], + int32, + int32) + IL_0026: nop + IL_0027: leave.s IL_003b + + } // end .try + finally + { + IL_0029: ldloc.2 + IL_002a: ldnull + IL_002b: ceq + IL_002d: stloc.s CS$4$0001 + IL_002f: ldloc.s CS$4$0001 + IL_0031: brtrue.s IL_003a + + IL_0033: ldloc.2 + IL_0034: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0039: nop + IL_003a: endfinally + } // end handler + IL_003b: nop + .line 51,51 : 17,41 '' + IL_003c: ldloc.1 + IL_003d: callvirt instance uint8[] [mscorlib]System.IO.MemoryStream::ToArray() + IL_0042: stloc.3 + IL_0043: leave.s IL_0057 + + } // end .try + finally + { + IL_0045: ldloc.1 + IL_0046: ldnull + IL_0047: ceq + IL_0049: stloc.s CS$4$0001 + IL_004b: ldloc.s CS$4$0001 + IL_004d: brtrue.s IL_0056 + + IL_004f: ldloc.1 + IL_0050: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0055: nop + IL_0056: endfinally + } // end handler + IL_0057: nop + .line 53,53 : 9,10 '' + IL_0058: ldloc.3 + IL_0059: ret + } // end of method PortableEncryption::Encrypt + + .method public hidebysig newslot virtual + instance uint8[] Decrypt(uint8[] data) cil managed + { + // Code size 164 (0xa4) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Security.Cryptography.ICryptoTransform transform, + [1] class [mscorlib]System.IO.MemoryStream inStream, + [2] class [mscorlib]System.IO.MemoryStream outStream, + [3] class [mscorlib]System.Security.Cryptography.CryptoStream crypto, + [4] int32 count, + [5] uint8[] buffer, + [6] uint8[] CS$1$0000, + [7] bool CS$4$0001) + .line 56,56 : 9,10 '' + IL_0000: nop + .line 57,57 : 13,60 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance class [mscorlib]System.Security.Cryptography.ICryptoTransform Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::CreateDecryptor() + IL_0007: stloc.0 + .line 59,59 : 20,67 '' + IL_0008: ldarg.1 + IL_0009: newobj instance void [mscorlib]System.IO.MemoryStream::.ctor(uint8[]) + IL_000e: stloc.1 + .line 59,59 : 68,109 '' + .try + { + IL_000f: ldarg.1 + IL_0010: ldlen + IL_0011: conv.i4 + IL_0012: newobj instance void [mscorlib]System.IO.MemoryStream::.ctor(int32) + IL_0017: stloc.2 + .line 60,60 : 13,14 '' + .try + { + IL_0018: nop + .line 61,61 : 24,106 '' + IL_0019: ldloc.1 + IL_001a: ldloc.0 + IL_001b: ldc.i4.0 + IL_001c: newobj instance void [mscorlib]System.Security.Cryptography.CryptoStream::.ctor(class [mscorlib]System.IO.Stream, + class [mscorlib]System.Security.Cryptography.ICryptoTransform, + valuetype [mscorlib]System.Security.Cryptography.CryptoStreamMode) + IL_0021: stloc.3 + .line 62,62 : 17,18 '' + .try + { + IL_0022: nop + .line 63,63 : 21,35 '' + IL_0023: ldc.i4.0 + IL_0024: stloc.s count + .line 64,64 : 21,52 '' + IL_0026: ldc.i4 0x800 + IL_002b: newarr [mscorlib]System.Byte + IL_0030: stloc.s buffer + IL_0032: br.s IL_0040 + + .line 67,67 : 25,59 '' + IL_0034: ldloc.2 + IL_0035: ldloc.s buffer + IL_0037: ldc.i4.0 + IL_0038: ldloc.s count + IL_003a: callvirt instance void [mscorlib]System.IO.Stream::Write(uint8[], + int32, + int32) + IL_003f: nop + .line 66,66 : 21,81 '' + IL_0040: ldloc.3 + IL_0041: ldloc.s buffer + IL_0043: ldc.i4.0 + IL_0044: ldloc.s buffer + IL_0046: ldlen + IL_0047: conv.i4 + IL_0048: callvirt instance int32 [mscorlib]System.IO.Stream::Read(uint8[], + int32, + int32) + IL_004d: dup + IL_004e: stloc.s count + IL_0050: ldc.i4.0 + IL_0051: ceq + IL_0053: ldc.i4.0 + IL_0054: ceq + IL_0056: stloc.s CS$4$0001 + IL_0058: ldloc.s CS$4$0001 + IL_005a: brtrue.s IL_0034 + + .line 68,68 : 17,18 '' + IL_005c: nop + IL_005d: leave.s IL_0071 + + } // end .try + finally + { + IL_005f: ldloc.3 + IL_0060: ldnull + IL_0061: ceq + IL_0063: stloc.s CS$4$0001 + IL_0065: ldloc.s CS$4$0001 + IL_0067: brtrue.s IL_0070 + + IL_0069: ldloc.3 + IL_006a: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_006f: nop + IL_0070: endfinally + } // end handler + IL_0071: nop + .line 70,70 : 17,44 '' + IL_0072: ldloc.2 + IL_0073: callvirt instance uint8[] [mscorlib]System.IO.MemoryStream::ToArray() + IL_0078: stloc.s CS$1$0000 + IL_007a: leave.s IL_00a0 + + } // end .try + finally + { + IL_007c: ldloc.2 + IL_007d: ldnull + IL_007e: ceq + IL_0080: stloc.s CS$4$0001 + IL_0082: ldloc.s CS$4$0001 + IL_0084: brtrue.s IL_008d + + IL_0086: ldloc.2 + IL_0087: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_008c: nop + IL_008d: endfinally + } // end handler + } // end .try + finally + { + IL_008e: ldloc.1 + IL_008f: ldnull + IL_0090: ceq + IL_0092: stloc.s CS$4$0001 + IL_0094: ldloc.s CS$4$0001 + IL_0096: brtrue.s IL_009f + + IL_0098: ldloc.1 + IL_0099: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_009e: nop + IL_009f: endfinally + } // end handler + IL_00a0: nop + .line 72,72 : 9,10 '' + IL_00a1: ldloc.s CS$1$0000 + IL_00a3: ret + } // end of method PortableEncryption::Decrypt + + .method family hidebysig newslot virtual + instance class [mscorlib]System.Security.Cryptography.ICryptoTransform + CreateEncryptor() cil managed + { + // Code size 42 (0x2a) + .maxstack 4 + .locals init ([0] string key, + [1] class [mscorlib]System.Security.Cryptography.TripleDES tripleDes, + [2] uint8[] keyBytes, + [3] uint8[] ivBytes, + [4] class [mscorlib]System.Security.Cryptography.ICryptoTransform CS$1$0000) + .line 79,79 : 9,10 '' + IL_0000: nop + .line 80,80 : 13,46 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::PromptForKey(bool) + IL_0008: stloc.0 + .line 82,82 : 13,54 '' + IL_0009: call class [mscorlib]System.Security.Cryptography.TripleDES [mscorlib]System.Security.Cryptography.TripleDES::Create() + IL_000e: stloc.1 + .line 85,85 : 13,71 '' + IL_000f: ldloc.1 + IL_0010: ldloc.0 + IL_0011: ldloca.s keyBytes + IL_0013: ldloca.s ivBytes + IL_0015: call void Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::GetSecretBytes(class [mscorlib]System.Security.Cryptography.SymmetricAlgorithm, + string, + uint8[]&, + uint8[]&) + IL_001a: nop + .line 87,87 : 13,65 '' + IL_001b: ldloc.1 + IL_001c: ldloc.2 + IL_001d: ldloc.3 + IL_001e: callvirt instance class [mscorlib]System.Security.Cryptography.ICryptoTransform [mscorlib]System.Security.Cryptography.SymmetricAlgorithm::CreateEncryptor(uint8[], + uint8[]) + IL_0023: stloc.s CS$1$0000 + IL_0025: br.s IL_0027 + + .line 88,88 : 9,10 '' + IL_0027: ldloc.s CS$1$0000 + IL_0029: ret + } // end of method PortableEncryption::CreateEncryptor + + .method family hidebysig newslot virtual + instance class [mscorlib]System.Security.Cryptography.ICryptoTransform + CreateDecryptor() cil managed + { + // Code size 42 (0x2a) + .maxstack 4 + .locals init ([0] string key, + [1] class [mscorlib]System.Security.Cryptography.TripleDES tripleDes, + [2] uint8[] keyBytes, + [3] uint8[] ivBytes, + [4] class [mscorlib]System.Security.Cryptography.ICryptoTransform CS$1$0000) + .line 91,91 : 9,10 '' + IL_0000: nop + .line 92,92 : 13,45 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::PromptForKey(bool) + IL_0008: stloc.0 + .line 94,94 : 13,54 '' + IL_0009: call class [mscorlib]System.Security.Cryptography.TripleDES [mscorlib]System.Security.Cryptography.TripleDES::Create() + IL_000e: stloc.1 + .line 97,97 : 13,71 '' + IL_000f: ldloc.1 + IL_0010: ldloc.0 + IL_0011: ldloca.s keyBytes + IL_0013: ldloca.s ivBytes + IL_0015: call void Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::GetSecretBytes(class [mscorlib]System.Security.Cryptography.SymmetricAlgorithm, + string, + uint8[]&, + uint8[]&) + IL_001a: nop + .line 99,99 : 13,65 '' + IL_001b: ldloc.1 + IL_001c: ldloc.2 + IL_001d: ldloc.3 + IL_001e: callvirt instance class [mscorlib]System.Security.Cryptography.ICryptoTransform [mscorlib]System.Security.Cryptography.SymmetricAlgorithm::CreateDecryptor(uint8[], + uint8[]) + IL_0023: stloc.s CS$1$0000 + IL_0025: br.s IL_0027 + + .line 100,100 : 9,10 '' + IL_0027: ldloc.s CS$1$0000 + IL_0029: ret + } // end of method PortableEncryption::CreateDecryptor + + .method family hidebysig static void GetSecretBytes(class [mscorlib]System.Security.Cryptography.SymmetricAlgorithm 'algorithm', + string password, + [out] uint8[]& keyBytes, + [out] uint8[]& ivBytes) cil managed + { + // Code size 71 (0x47) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Security.Cryptography.Rfc2898DeriveBytes keyGenerator) + .line 103,103 : 9,10 '' + IL_0000: nop + .line 104,104 : 13,102 '' + IL_0001: ldarg.1 + IL_0002: ldsfld uint8[] Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::KeyGeneratorSalt + IL_0007: ldc.i4.s 20 + IL_0009: newobj instance void [mscorlib]System.Security.Cryptography.Rfc2898DeriveBytes::.ctor(string, + uint8[], + int32) + IL_000e: stloc.0 + .line 105,105 : 13,86 '' + IL_000f: ldarg.2 + IL_0010: ldloc.0 + IL_0011: ldarg.0 + IL_0012: callvirt instance class [mscorlib]System.Security.Cryptography.KeySizes[] [mscorlib]System.Security.Cryptography.SymmetricAlgorithm::get_LegalKeySizes() + IL_0017: ldc.i4.0 + IL_0018: ldelem.ref + IL_0019: callvirt instance int32 [mscorlib]System.Security.Cryptography.KeySizes::get_MaxSize() + IL_001e: ldc.i4.8 + IL_001f: div + IL_0020: callvirt instance uint8[] [mscorlib]System.Security.Cryptography.DeriveBytes::GetBytes(int32) + IL_0025: stind.ref + .line 107,107 : 13,46 '' + IL_0026: ldloc.0 + IL_0027: ldc.i4.s 10 + IL_0029: callvirt instance void [mscorlib]System.Security.Cryptography.Rfc2898DeriveBytes::set_IterationCount(int32) + IL_002e: nop + .line 108,108 : 13,87 '' + IL_002f: ldarg.3 + IL_0030: ldloc.0 + IL_0031: ldarg.0 + IL_0032: callvirt instance class [mscorlib]System.Security.Cryptography.KeySizes[] [mscorlib]System.Security.Cryptography.SymmetricAlgorithm::get_LegalBlockSizes() + IL_0037: ldc.i4.0 + IL_0038: ldelem.ref + IL_0039: callvirt instance int32 [mscorlib]System.Security.Cryptography.KeySizes::get_MaxSize() + IL_003e: ldc.i4.8 + IL_003f: div + IL_0040: callvirt instance uint8[] [mscorlib]System.Security.Cryptography.DeriveBytes::GetBytes(int32) + IL_0045: stind.ref + .line 109,109 : 9,10 '' + IL_0046: ret + } // end of method PortableEncryption::GetSecretBytes + + .method family hidebysig newslot abstract virtual + instance string PromptForKey(bool decrypting) cil managed + { + } // end of method PortableEncryption::PromptForKey + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 30,30 : 9,114 '' + IL_0000: ldc.i4.s 10 + IL_0002: newarr [mscorlib]System.Byte + IL_0007: dup + IL_0008: ldtoken field valuetype '{3FFF4D13-FF0A-429D-9B95-394048CE8C68}'/'__StaticArrayInitTypeSize=10' '{3FFF4D13-FF0A-429D-9B95-394048CE8C68}'::'$$method0x6000651-1' + IL_000d: call void [mscorlib]System.Runtime.CompilerServices.RuntimeHelpers::InitializeArray(class [mscorlib]System.Array, + valuetype [mscorlib]System.RuntimeFieldHandle) + IL_0012: stsfld uint8[] Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::KeyGeneratorSalt + IL_0017: ret + } // end of method PortableEncryption::.cctor + +} // end of class Virtuoso.Miranda.Plugins.Configuration.PortableEncryption + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.PortableStorage + extends Virtuoso.Miranda.Plugins.Configuration.StorageBase +{ + .method private hidebysig instance string + GetPath(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 53 (0x35) + .maxstack 4 + .locals init ([0] string configDirectory, + [1] string CS$1$0000, + [2] bool CS$4$0001) + .line 31,31 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\PortableStorage.cs' + IL_0000: nop + .line 32,32 : 13,106 '' + IL_0001: call string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaFolderPath() + IL_0006: ldstr "Configuration" + IL_000b: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_0010: stloc.0 + .line 34,34 : 13,52 '' + IL_0011: ldloc.0 + IL_0012: call bool [mscorlib]System.IO.Directory::Exists(string) + IL_0017: stloc.2 + IL_0018: ldloc.2 + IL_0019: brtrue.s IL_0022 + + .line 35,35 : 17,60 '' + IL_001b: ldloc.0 + IL_001c: call class [mscorlib]System.IO.DirectoryInfo [mscorlib]System.IO.Directory::CreateDirectory(string) + IL_0021: pop + .line 37,37 : 13,84 '' + IL_0022: ldloc.0 + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: ldarg.2 + IL_0026: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.StorageBase::GetFileName(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_002b: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_0030: stloc.1 + IL_0031: br.s IL_0033 + + .line 38,38 : 9,10 '' + IL_0033: ldloc.1 + IL_0034: ret + } // end of method PortableStorage::GetPath + + .method public hidebysig virtual instance class [mscorlib]System.IO.Stream + OpenRead(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 19 (0x13) + .maxstack 3 + .locals init ([0] class [mscorlib]System.IO.Stream CS$1$0000) + .line 45,45 : 9,10 '' + IL_0000: nop + .line 46,46 : 13,64 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call instance string Virtuoso.Miranda.Plugins.Configuration.PortableStorage::GetPath(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0009: call class [mscorlib]System.IO.FileStream [mscorlib]System.IO.File::OpenRead(string) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 47,47 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method PortableStorage::OpenRead + + .method public hidebysig virtual instance class [mscorlib]System.IO.Stream + OpenWrite(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 19 (0x13) + .maxstack 3 + .locals init ([0] class [mscorlib]System.IO.Stream CS$1$0000) + .line 50,50 : 9,10 '' + IL_0000: nop + .line 51,51 : 13,65 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call instance string Virtuoso.Miranda.Plugins.Configuration.PortableStorage::GetPath(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0009: call class [mscorlib]System.IO.FileStream [mscorlib]System.IO.File::OpenWrite(string) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 52,52 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method PortableStorage::OpenWrite + + .method public hidebysig virtual instance bool + Exists(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 19 (0x13) + .maxstack 3 + .locals init ([0] bool CS$1$0000) + .line 55,55 : 9,10 '' + IL_0000: nop + .line 56,56 : 13,62 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call instance string Virtuoso.Miranda.Plugins.Configuration.PortableStorage::GetPath(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0009: call bool [mscorlib]System.IO.File::Exists(string) + IL_000e: stloc.0 + IL_000f: br.s IL_0011 + + .line 57,57 : 9,10 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method PortableStorage::Exists + + .method public hidebysig virtual instance void + Dispose() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 59,59 : 40,41 '' + IL_0000: nop + .line 59,59 : 42,43 '' + IL_0001: ret + } // end of method PortableStorage::Dispose + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Configuration.StorageBase::.ctor() + IL_0006: ret + } // end of method PortableStorage::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Configuration.PortableStorage + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.WindowsEncryption + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Configuration.IEncryption +{ + .method public hidebysig newslot virtual final + instance uint8[] Encrypt(uint8[] data) cil managed + { + // Code size 14 (0xe) + .maxstack 3 + .locals init ([0] uint8[] CS$1$0000) + .line 28,28 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\WindowsEncryption.cs' + IL_0000: nop + .line 29,29 : 13,87 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldc.i4.0 + IL_0004: call uint8[] [System.Security]System.Security.Cryptography.ProtectedData::Protect(uint8[], + uint8[], + valuetype [System.Security]System.Security.Cryptography.DataProtectionScope) + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + .line 30,30 : 9,10 '' + IL_000c: ldloc.0 + IL_000d: ret + } // end of method WindowsEncryption::Encrypt + + .method public hidebysig newslot virtual final + instance uint8[] Decrypt(uint8[] data) cil managed + { + // Code size 14 (0xe) + .maxstack 3 + .locals init ([0] uint8[] CS$1$0000) + .line 33,33 : 9,10 '' + IL_0000: nop + .line 34,34 : 13,89 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldc.i4.0 + IL_0004: call uint8[] [System.Security]System.Security.Cryptography.ProtectedData::Unprotect(uint8[], + uint8[], + valuetype [System.Security]System.Security.Cryptography.DataProtectionScope) + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + .line 35,35 : 9,10 '' + IL_000c: ldloc.0 + IL_000d: ret + } // end of method WindowsEncryption::Decrypt + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method WindowsEncryption::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Configuration.WindowsEncryption + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.DefaultExceptionHandler + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.IExceptionHandler, + Virtuoso.Miranda.Plugins.IExceptionReporter +{ + .field private class Virtuoso.Miranda.Plugins.MirandaPlugin plugin + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.MirandaPlugin + get_Plugin() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin CS$1$0000) + .line 37,37 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\DefaultExceptionHandler.cs' + IL_0000: nop + .line 37,37 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 37,37 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method DefaultExceptionHandler::get_Plugin + + .method private hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 44,44 : 9,62 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 45,45 : 9,10 '' + IL_0007: nop + .line 46,46 : 13,34 '' + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: stfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + .line 47,47 : 9,10 '' + IL_000f: nop + IL_0010: ret + } // end of method DefaultExceptionHandler::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.DefaultExceptionHandler + Create() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.DefaultExceptionHandler CS$1$0000) + .line 50,50 : 9,10 '' + IL_0000: nop + .line 51,51 : 13,33 '' + IL_0001: ldnull + IL_0002: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 52,52 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method DefaultExceptionHandler::Create + + .method public hidebysig static class Virtuoso.Miranda.Plugins.DefaultExceptionHandler + Create(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.DefaultExceptionHandler CS$1$0000) + .line 55,55 : 9,10 '' + IL_0000: nop + .line 56,56 : 13,56 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 57,57 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method DefaultExceptionHandler::Create + + .method public hidebysig newslot virtual final + instance void HandleException(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) cil managed + { + // Code size 56 (0x38) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.IExceptionReporter reporter) + .line 64,64 : 9,10 '' + IL_0000: nop + .line 65,65 : 13,146 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0007: isinst Virtuoso.Miranda.Plugins.IExceptionReporter + IL_000c: dup + IL_000d: brtrue.s IL_001d + + IL_000f: pop + IL_0010: ldarg.0 + IL_0011: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0016: brfalse.s IL_001b + + IL_0018: ldarg.0 + IL_0019: br.s IL_001c + + IL_001b: ldnull + IL_001c: nop + IL_001d: stloc.0 + .line 66,66 : 13,132 '' + IL_001e: ldarg.1 + IL_001f: ldloc.0 + IL_0020: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_ModuleError() + IL_0025: ldarg.0 + IL_0026: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_002b: call string [mscorlib]System.String::Format(string, + object) + IL_0030: ldc.i4.0 + IL_0031: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_0036: pop + .line 67,67 : 9,10 '' + IL_0037: ret + } // end of method DefaultExceptionHandler::HandleException + + .method private hidebysig newslot virtual final + instance void Virtuoso.Miranda.Plugins.IExceptionReporter.ReportException(class [mscorlib]System.Exception e) cil managed + { + .override Virtuoso.Miranda.Plugins.IExceptionReporter::ReportException + // Code size 157 (0x9d) + .maxstack 5 + .locals init ([0] class [System]System.Diagnostics.ProcessStartInfo startInfo, + [1] bool CS$4$0000) + .line 70,70 : 9,10 '' + IL_0000: nop + .line 72,72 : 13,14 '' + .try + { + IL_0001: nop + .line 73,73 : 17,69 '' + IL_0002: newobj instance void [System]System.Diagnostics.ProcessStartInfo::.ctor() + IL_0007: stloc.0 + .line 74,74 : 17,50 '' + IL_0008: ldloc.0 + IL_0009: ldc.i4.1 + IL_000a: callvirt instance void [System]System.Diagnostics.ProcessStartInfo::set_UseShellExecute(bool) + IL_000f: nop + .line 76,76 : 17,48 '' + IL_0010: ldarg.0 + IL_0011: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0016: isinst Virtuoso.Hyphen.Mini.StandalonePlugin + IL_001b: ldnull + IL_001c: cgt.un + IL_001e: ldc.i4.0 + IL_001f: ceq + IL_0021: stloc.1 + IL_0022: ldloc.1 + IL_0023: brtrue.s IL_0060 + + .line 77,77 : 17,18 '' + IL_0025: nop + .line 78,78 : 21,217 '' + IL_0026: ldloc.0 + IL_0027: ldstr "mailto:{0}\?subject={1}&body={2}" + IL_002c: ldarg.0 + IL_002d: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0032: castclass Virtuoso.Hyphen.Mini.StandalonePlugin + IL_0037: callvirt instance string Virtuoso.Hyphen.Mini.StandalonePlugin::get_AuthorEmail() + IL_003c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Formatable1_Text_PluginCrashed() + IL_0041: ldarg.0 + IL_0042: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0047: call string [mscorlib]System.String::Format(string, + object) + IL_004c: ldarg.1 + IL_004d: callvirt instance string [mscorlib]System.Object::ToString() + IL_0052: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_0057: callvirt instance void [System]System.Diagnostics.ProcessStartInfo::set_FileName(string) + IL_005c: nop + .line 79,79 : 17,18 '' + IL_005d: nop + IL_005e: br.s IL_0079 + + .line 81,81 : 17,18 '' + IL_0060: nop + .line 82,82 : 21,69 '' + IL_0061: ldloc.0 + IL_0062: ldarg.0 + IL_0063: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0068: callvirt instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + IL_006d: callvirt instance string [mscorlib]System.Object::ToString() + IL_0072: callvirt instance void [System]System.Diagnostics.ProcessStartInfo::set_FileName(string) + IL_0077: nop + .line 83,83 : 17,18 '' + IL_0078: nop + .line 85,85 : 17,42 '' + IL_0079: ldloc.0 + IL_007a: call class [System]System.Diagnostics.Process [System]System.Diagnostics.Process::Start(class [System]System.Diagnostics.ProcessStartInfo) + IL_007f: pop + .line 86,86 : 13,14 '' + IL_0080: nop + IL_0081: leave.s IL_009b + + .line 87,87 : 13,18 '' + } // end .try + catch [mscorlib]System.Object + { + IL_0083: pop + .line 88,88 : 13,14 '' + IL_0084: nop + .line 89,89 : 17,164 '' + IL_0085: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_UnableToReportError() + IL_008a: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_Warning() + IL_008f: ldc.i4.0 + IL_0090: ldc.i4.s 48 + IL_0092: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0097: pop + .line 90,90 : 13,14 '' + IL_0098: nop + IL_0099: leave.s IL_009b + + } // end handler + IL_009b: nop + .line 91,91 : 9,10 '' + IL_009c: ret + } // end of method DefaultExceptionHandler::Virtuoso.Miranda.Plugins.IExceptionReporter.ReportException + + .property instance class Virtuoso.Miranda.Plugins.MirandaPlugin + Plugin() + { + .get instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::get_Plugin() + } // end of property DefaultExceptionHandler::Plugin +} // end of class Virtuoso.Miranda.Plugins.DefaultExceptionHandler + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton + extends [System.Windows.Forms]System.Windows.Forms.Button +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 74 (0x4a) + .maxstack 2 + .line 29,29 : 9,31 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\CommandButton.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0006: nop + .line 30,30 : 9,10 '' + IL_0007: nop + .line 31,31 : 13,44 '' + IL_0008: ldarg.0 + IL_0009: ldc.i4.2 + IL_000a: call instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_FlatStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FlatStyle) + IL_000f: nop + .line 32,32 : 13,69 '' + IL_0010: ldarg.0 + IL_0011: ldc.i4.s 16 + IL_0013: call instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_ImageAlign(valuetype [System.Drawing]System.Drawing.ContentAlignment) + IL_0018: nop + .line 33,33 : 13,53 '' + IL_0019: ldarg.0 + IL_001a: ldc.i4.s 16 + IL_001c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_TextAlign(valuetype [System.Drawing]System.Drawing.ContentAlignment) + IL_0021: nop + .line 34,34 : 13,67 '' + IL_0022: ldarg.0 + IL_0023: ldc.i4.4 + IL_0024: call instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_TextImageRelation(valuetype [System.Windows.Forms]System.Windows.Forms.TextImageRelation) + IL_0029: nop + .line 35,35 : 13,43 '' + IL_002a: ldarg.0 + IL_002b: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_0030: ldc.i4.3 + IL_0031: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_BorderSize(int32) + IL_0036: nop + .line 36,36 : 13,77 '' + IL_0037: ldarg.0 + IL_0038: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_003d: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_GradientActiveCaption() + IL_0042: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_BorderColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0047: nop + .line 37,37 : 9,10 '' + IL_0048: nop + IL_0049: ret + } // end of method CommandButton::.ctor + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 89 (0x59) + .maxstack 2 + .line 40,40 : 9,10 '' + IL_0000: nop + .line 41,41 : 13,34 '' + IL_0001: ldarg.0 + IL_0002: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0007: nop + .line 45,45 : 13,83 '' + IL_0008: ldarg.0 + IL_0009: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_000e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Control() + IL_0013: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_BorderColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0018: nop + .line 46,46 : 13,48 '' + IL_0019: ldarg.0 + IL_001a: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_001f: ldc.i4.2 + IL_0020: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_BorderSize(int32) + IL_0025: nop + .line 47,47 : 13,95 '' + IL_0026: ldarg.0 + IL_0027: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_002c: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_ButtonShadow() + IL_0031: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_MouseDownBackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0036: nop + .line 48,48 : 13,98 '' + IL_0037: ldarg.0 + IL_0038: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_003d: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_ButtonHighlight() + IL_0042: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_MouseOverBackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0047: nop + .line 49,49 : 13,66 '' + IL_0048: ldarg.0 + IL_0049: ldc.i4.0 + IL_004a: call instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_FlatStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FlatStyle) + IL_004f: nop + .line 50,50 : 13,38 '' + IL_0050: ldarg.0 + IL_0051: ldc.i4.0 + IL_0052: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_0057: nop + .line 52,52 : 9,10 '' + IL_0058: ret + } // end of method CommandButton::InitializeComponent + +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView + extends [System.Windows.Forms]System.Windows.Forms.ListView +{ + .field private class [System.Windows.Forms]System.Windows.Forms.ImageList ContactImages + .field private class [System]System.ComponentModel.IContainer components + .field private class [mscorlib]System.EventHandler`1 FilterContact + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 39,39 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\ContactListView.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.ListView::.ctor() + IL_0006: nop + .line 40,40 : 9,10 '' + IL_0007: nop + .line 41,41 : 13,35 '' + IL_0008: ldarg.0 + IL_0009: call instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::InitializeComponent() + IL_000e: nop + .line 42,42 : 9,10 '' + IL_000f: nop + IL_0010: ret + } // end of method ContactListView::.ctor + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 158 (0x9e) + .maxstack 3 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources) + .line 45,45 : 9,10 '' + IL_0000: nop + .line 46,46 : 13,69 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void [System]System.ComponentModel.Container::.ctor() + IL_0007: stfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::components + .line 47,47 : 13,148 '' + IL_000c: ldtoken Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView + IL_0011: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0016: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_001b: stloc.0 + .line 48,48 : 13,86 '' + IL_001c: ldarg.0 + IL_001d: ldarg.0 + IL_001e: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::components + IL_0023: newobj instance void [System.Windows.Forms]System.Windows.Forms.ImageList::.ctor(class [System]System.ComponentModel.IContainer) + IL_0028: stfld class [System.Windows.Forms]System.Windows.Forms.ImageList Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::ContactImages + .line 49,49 : 13,34 '' + IL_002d: ldarg.0 + IL_002e: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0033: nop + .line 53,53 : 13,139 '' + IL_0034: ldarg.0 + IL_0035: ldfld class [System.Windows.Forms]System.Windows.Forms.ImageList Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::ContactImages + IL_003a: ldloc.0 + IL_003b: ldstr "ContactImages.ImageStream" + IL_0040: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0045: castclass [System.Windows.Forms]System.Windows.Forms.ImageListStreamer + IL_004a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ImageList::set_ImageStream(class [System.Windows.Forms]System.Windows.Forms.ImageListStreamer) + IL_004f: nop + .line 54,54 : 13,84 '' + IL_0050: ldarg.0 + IL_0051: ldfld class [System.Windows.Forms]System.Windows.Forms.ImageList Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::ContactImages + IL_0056: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_005b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ImageList::set_TransparentColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0060: nop + .line 55,55 : 13,64 '' + IL_0061: ldarg.0 + IL_0062: ldfld class [System.Windows.Forms]System.Windows.Forms.ImageList Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::ContactImages + IL_0067: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ImageList/ImageCollection [System.Windows.Forms]System.Windows.Forms.ImageList::get_Images() + IL_006c: ldc.i4.0 + IL_006d: ldstr "Contact" + IL_0072: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ImageList/ImageCollection::SetKeyName(int32, + string) + IL_0077: nop + .line 59,59 : 13,54 '' + IL_0078: ldarg.0 + IL_0079: ldarg.0 + IL_007a: ldfld class [System.Windows.Forms]System.Windows.Forms.ImageList Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::ContactImages + IL_007f: call instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_SmallImageList(class [System.Windows.Forms]System.Windows.Forms.ImageList) + IL_0084: nop + .line 60,60 : 13,69 '' + IL_0085: ldarg.0 + IL_0086: ldc.i4.1 + IL_0087: call instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_Sorting(valuetype [System.Windows.Forms]System.Windows.Forms.SortOrder) + IL_008c: nop + .line 61,61 : 13,56 '' + IL_008d: ldarg.0 + IL_008e: ldc.i4.3 + IL_008f: call instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_View(valuetype [System.Windows.Forms]System.Windows.Forms.View) + IL_0094: nop + .line 62,62 : 13,38 '' + IL_0095: ldarg.0 + IL_0096: ldc.i4.0 + IL_0097: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_009c: nop + .line 64,64 : 9,10 '' + IL_009d: ret + } // end of method ContactListView::InitializeComponent + + .method public hidebysig specialname instance void + add_FilterContact(class [mscorlib]System.EventHandler`1 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler`1 V_0, + class [mscorlib]System.EventHandler`1 V_1, + class [mscorlib]System.EventHandler`1 V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass class [mscorlib]System.EventHandler`1 + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange>(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method ContactListView::add_FilterContact + + .method public hidebysig specialname instance void + remove_FilterContact(class [mscorlib]System.EventHandler`1 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler`1 V_0, + class [mscorlib]System.EventHandler`1 V_1, + class [mscorlib]System.EventHandler`1 V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass class [mscorlib]System.EventHandler`1 + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange>(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method ContactListView::remove_FilterContact + + .method family hidebysig newslot virtual + instance object CreateItemTag(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] object CS$1$0000) + .line 77,77 : 9,10 '' + IL_0000: nop + .line 78,78 : 13,28 '' + IL_0001: ldarg.1 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 79,79 : 9,10 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method ContactListView::CreateItemTag + + .method family hidebysig newslot virtual + instance string CreateItemText(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + object tag) cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 82,82 : 9,10 '' + IL_0000: nop + .line 83,83 : 13,39 '' + IL_0001: ldarg.1 + IL_0002: callvirt instance string [mscorlib]System.Object::ToString() + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 84,84 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactListView::CreateItemText + + .method family hidebysig newslot virtual + instance int32 GetImageIndex(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + object tag) cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 87,87 : 9,10 '' + IL_0000: nop + .line 88,88 : 13,22 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 89,89 : 9,10 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method ContactListView::GetImageIndex + + .method public hidebysig newslot virtual + instance void LoadContacts() cil managed + { + // Code size 73 (0x49) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 contacts, + [1] class Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs e, + [2] int32 i, + [3] bool CS$4$0000) + .line 96,96 : 9,10 '' + IL_0000: nop + .line 97,97 : 13,114 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaDatabase() + IL_000b: ldc.i4.0 + IL_000c: callvirt instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContacts(bool) + IL_0011: stloc.0 + .line 98,98 : 13,27 '' + IL_0012: ldarg.0 + IL_0013: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_0018: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::Clear() + IL_001d: nop + .line 100,100 : 13,69 '' + IL_001e: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::.ctor() + IL_0023: stloc.1 + .line 102,102 : 18,28 '' + IL_0024: ldc.i4.0 + IL_0025: stloc.2 + IL_0026: br.s IL_003b + + .line 103,103 : 17,47 '' + IL_0028: ldarg.0 + IL_0029: ldloc.0 + IL_002a: ldloc.2 + IL_002b: callvirt instance !0 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Item(int32) + IL_0030: ldloc.1 + IL_0031: call instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::InsertContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs) + IL_0036: nop + .line 102,102 : 49,52 '' + IL_0037: ldloc.2 + IL_0038: ldc.i4.1 + IL_0039: add + IL_003a: stloc.2 + .line 102,102 : 29,47 '' + IL_003b: ldloc.2 + IL_003c: ldloc.0 + IL_003d: callvirt instance int32 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Count() + IL_0042: clt + IL_0044: stloc.3 + IL_0045: ldloc.3 + IL_0046: brtrue.s IL_0028 + + .line 104,104 : 9,10 '' + IL_0048: ret + } // end of method ContactListView::LoadContacts + + .method public hidebysig newslot virtual + instance void InsertContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 107,107 : 9,10 '' + IL_0000: nop + .line 108,108 : 13,42 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldnull + IL_0004: call instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::InsertContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs) + IL_0009: nop + .line 109,109 : 9,10 '' + IL_000a: ret + } // end of method ContactListView::InsertContact + + .method private hidebysig instance void + InsertContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + class Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs e) cil managed + { + // Code size 155 (0x9b) + .maxstack 4 + .locals init ([0] object tag, + [1] class [System.Windows.Forms]System.Windows.Forms.ListViewItem item, + [2] bool CS$4$0000) + .line 112,112 : 9,10 '' + IL_0000: nop + .line 113,113 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.2 + IL_000c: ldloc.2 + IL_000d: brtrue.s IL_001a + + .line 114,114 : 17,60 '' + IL_000f: ldstr "contact" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 116,116 : 13,52 '' + IL_001a: ldarg.2 + IL_001b: brfalse.s IL_0028 + + IL_001d: ldarg.0 + IL_001e: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_0023: ldnull + IL_0024: ceq + IL_0026: br.s IL_0029 + + IL_0028: ldc.i4.1 + IL_0029: nop + IL_002a: stloc.2 + IL_002b: ldloc.2 + IL_002c: brtrue.s IL_005d + + .line 117,117 : 13,14 '' + IL_002e: nop + .line 118,118 : 17,37 '' + IL_002f: ldarg.2 + IL_0030: ldarg.1 + IL_0031: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::set_Contact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0036: nop + .line 119,119 : 17,32 '' + IL_0037: ldarg.2 + IL_0038: ldc.i4.0 + IL_0039: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::set_Skip(bool) + IL_003e: nop + .line 121,121 : 17,40 '' + IL_003f: ldarg.0 + IL_0040: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_0045: ldarg.0 + IL_0046: ldarg.2 + IL_0047: callvirt instance void class [mscorlib]System.EventHandler`1::Invoke(object, + !0) + IL_004c: nop + .line 123,123 : 17,28 '' + IL_004d: ldarg.2 + IL_004e: callvirt instance bool Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::get_Skip() + IL_0053: ldc.i4.0 + IL_0054: ceq + IL_0056: stloc.2 + IL_0057: ldloc.2 + IL_0058: brtrue.s IL_005c + + .line 124,124 : 21,28 '' + IL_005a: br.s IL_009a + + .line 125,125 : 13,14 '' + IL_005c: nop + .line 127,127 : 13,49 '' + IL_005d: ldarg.0 + IL_005e: ldarg.1 + IL_005f: callvirt instance object Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemTag(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0064: stloc.0 + .line 129,129 : 13,29 '' + IL_0065: ldloc.0 + IL_0066: ldnull + IL_0067: ceq + IL_0069: stloc.2 + IL_006a: ldloc.2 + IL_006b: brtrue.s IL_009a + + .line 130,130 : 13,14 '' + IL_006d: nop + .line 131,131 : 17,113 '' + IL_006e: ldarg.0 + IL_006f: ldarg.1 + IL_0070: ldloc.0 + IL_0071: callvirt instance string Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemText(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + object) + IL_0076: ldarg.0 + IL_0077: ldarg.1 + IL_0078: ldloc.0 + IL_0079: callvirt instance int32 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::GetImageIndex(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + object) + IL_007e: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::.ctor(string, + int32) + IL_0083: stloc.1 + .line 132,132 : 17,32 '' + IL_0084: ldloc.1 + IL_0085: ldloc.0 + IL_0086: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::set_Tag(object) + IL_008b: nop + .line 134,134 : 17,33 '' + IL_008c: ldarg.0 + IL_008d: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_0092: ldloc.1 + IL_0093: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ListViewItem) + IL_0098: pop + .line 135,135 : 13,14 '' + IL_0099: nop + .line 136,136 : 9,10 '' + IL_009a: ret + } // end of method ContactListView::InsertContact + + .method public hidebysig newslot virtual + instance bool RemoveContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 107 (0x6b) + .maxstack 3 + .locals init ([0] int32 index, + [1] int32 i, + [2] bool CS$1$0000, + [3] bool CS$4$0001) + .line 139,139 : 9,10 '' + IL_0000: nop + .line 140,140 : 13,28 '' + IL_0001: ldc.i4.m1 + IL_0002: stloc.0 + .line 142,142 : 18,28 '' + IL_0003: ldc.i4.0 + IL_0004: stloc.1 + IL_0005: br.s IL_0031 + + .line 143,143 : 17,65 '' + IL_0007: ldarg.0 + IL_0008: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_000d: ldloc.1 + IL_000e: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::get_Item(int32) + IL_0013: callvirt instance object [System.Windows.Forms]System.Windows.Forms.ListViewItem::get_Tag() + IL_0018: ldarg.0 + IL_0019: ldarg.1 + IL_001a: callvirt instance object Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemTag(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_001f: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_0024: ldc.i4.0 + IL_0025: ceq + IL_0027: stloc.3 + IL_0028: ldloc.3 + IL_0029: brtrue.s IL_002d + + .line 144,144 : 21,31 '' + IL_002b: ldloc.1 + IL_002c: stloc.0 + .line 142,142 : 61,64 '' + IL_002d: ldloc.1 + IL_002e: ldc.i4.1 + IL_002f: add + IL_0030: stloc.1 + .line 142,142 : 29,59 '' + IL_0031: ldloc.0 + IL_0032: ldc.i4.m1 + IL_0033: bne.un.s IL_0045 + + IL_0035: ldloc.1 + IL_0036: ldarg.0 + IL_0037: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_003c: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::get_Count() + IL_0041: clt + IL_0043: br.s IL_0046 + + IL_0045: ldc.i4.0 + IL_0046: nop + IL_0047: stloc.3 + IL_0048: ldloc.3 + IL_0049: brtrue.s IL_0007 + + .line 146,146 : 13,29 '' + IL_004b: ldloc.0 + IL_004c: ldc.i4.m1 + IL_004d: ceq + IL_004f: stloc.3 + IL_0050: ldloc.3 + IL_0051: brtrue.s IL_0065 + + .line 147,147 : 13,14 '' + IL_0053: nop + .line 148,148 : 17,39 '' + IL_0054: ldarg.0 + IL_0055: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_005a: ldloc.0 + IL_005b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::RemoveAt(int32) + IL_0060: nop + .line 149,149 : 17,29 '' + IL_0061: ldc.i4.1 + IL_0062: stloc.2 + IL_0063: br.s IL_0069 + + .line 152,152 : 17,30 '' + IL_0065: ldc.i4.0 + IL_0066: stloc.2 + IL_0067: br.s IL_0069 + + .line 153,153 : 9,10 '' + IL_0069: ldloc.2 + IL_006a: ret + } // end of method ContactListView::RemoveContact + + .method public hidebysig newslot virtual + instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem + FindContactItem(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 144 (0x90) + .maxstack 5 + .locals init ([0] object tag, + [1] class [System.Windows.Forms]System.Windows.Forms.ListViewItem item, + [2] class [System.Windows.Forms]System.Windows.Forms.ListViewItem CS$1$0000, + [3] bool CS$4$0001) + .line 156,156 : 9,10 '' + IL_0000: nop + .line 157,157 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.3 + IL_000c: ldloc.3 + IL_000d: brtrue.s IL_001a + + .line 158,158 : 17,60 '' + IL_000f: ldstr "contact" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 160,160 : 13,49 '' + IL_001a: ldarg.0 + IL_001b: ldarg.1 + IL_001c: callvirt instance object Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemTag(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0021: stloc.0 + .line 162,162 : 13,38 '' + IL_0022: ldnull + IL_0023: stloc.1 + .line 164,164 : 13,33 '' + IL_0024: ldarg.0 + IL_0025: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_002a: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::get_Count() + IL_002f: ldc.i4.0 + IL_0030: cgt + IL_0032: ldc.i4.0 + IL_0033: ceq + IL_0035: stloc.3 + IL_0036: ldloc.3 + IL_0037: brtrue.s IL_004b + + .line 165,165 : 17,88 '' + IL_0039: ldarg.0 + IL_003a: ldarg.0 + IL_003b: ldarg.1 + IL_003c: ldloc.0 + IL_003d: callvirt instance string Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemText(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + object) + IL_0042: ldc.i4.0 + IL_0043: ldc.i4.0 + IL_0044: ldc.i4.0 + IL_0045: call instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem [System.Windows.Forms]System.Windows.Forms.ListView::FindItemWithText(string, + bool, + int32, + bool) + IL_004a: stloc.1 + .line 167,167 : 13,30 '' + IL_004b: ldloc.1 + IL_004c: ldnull + IL_004d: ceq + IL_004f: ldc.i4.0 + IL_0050: ceq + IL_0052: stloc.3 + IL_0053: ldloc.3 + IL_0054: brtrue.s IL_005a + + .line 168,168 : 17,29 '' + IL_0056: ldnull + IL_0057: stloc.2 + IL_0058: br.s IL_008e + + .line 170,170 : 13,96 '' + IL_005a: ldloc.1 + IL_005b: callvirt instance object [System.Windows.Forms]System.Windows.Forms.ListViewItem::get_Tag() + IL_0060: ldloc.0 + IL_0061: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_0066: brtrue.s IL_0080 + + IL_0068: ldloc.0 + IL_0069: brfalse.s IL_007c + + IL_006b: ldloc.0 + IL_006c: ldloc.1 + IL_006d: callvirt instance object [System.Windows.Forms]System.Windows.Forms.ListViewItem::get_Tag() + IL_0072: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_0077: ldc.i4.0 + IL_0078: ceq + IL_007a: br.s IL_007d + + IL_007c: ldc.i4.1 + IL_007d: nop + IL_007e: br.s IL_0081 + + IL_0080: ldc.i4.0 + IL_0081: nop + IL_0082: stloc.3 + IL_0083: ldloc.3 + IL_0084: brtrue.s IL_008a + + .line 171,171 : 17,29 '' + IL_0086: ldloc.1 + IL_0087: stloc.2 + IL_0088: br.s IL_008e + + .line 173,173 : 17,29 '' + IL_008a: ldnull + IL_008b: stloc.2 + IL_008c: br.s IL_008e + + .line 174,174 : 9,10 '' + IL_008e: ldloc.2 + IL_008f: ret + } // end of method ContactListView::FindContactItem + + .event class [mscorlib]System.EventHandler`1 FilterContact + { + .removeon instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::remove_FilterContact(class [mscorlib]System.EventHandler`1) + .addon instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::add_FilterContact(class [mscorlib]System.EventHandler`1) + } // end of event ContactListView::FilterContact +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs + extends [mscorlib]System.EventArgs +{ + .field private class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact + .field private bool skip + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 181,181 : 9,40 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.EventArgs::.ctor() + IL_0006: nop + .line 181,181 : 41,42 '' + IL_0007: nop + .line 181,181 : 43,44 '' + IL_0008: nop + IL_0009: ret + } // end of method ContactFilterEventArgs::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_Contact() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 186,186 : 17,18 '' + IL_0000: nop + .line 186,186 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::contact + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 186,186 : 35,36 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactFilterEventArgs::get_Contact + + .method assembly hidebysig specialname + instance void set_Contact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 187,187 : 26,27 '' + IL_0000: nop + .line 187,187 : 28,44 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::contact + .line 187,187 : 45,46 '' + IL_0008: ret + } // end of method ContactFilterEventArgs::set_Contact + + .method public hidebysig specialname instance bool + get_Skip() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 193,193 : 17,18 '' + IL_0000: nop + .line 193,193 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::skip + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 193,193 : 32,33 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactFilterEventArgs::get_Skip + + .method public hidebysig specialname instance void + set_Skip(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 194,194 : 17,18 '' + IL_0000: nop + .line 194,194 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::skip + .line 194,194 : 33,34 '' + IL_0008: ret + } // end of method ContactFilterEventArgs::set_Skip + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + Contact() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::get_Contact() + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::set_Contact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + } // end of property ContactFilterEventArgs::Contact + .property instance bool Skip() + { + .get instance bool Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::get_Skip() + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::set_Skip(bool) + } // end of property ContactFilterEventArgs::Skip +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox + extends [System.Windows.Forms]System.Windows.Forms.TextBox +{ + .field private static literal int32 WM_SETFOCUS = int32(0x00000007) + .field private static literal int32 WM_KILLFOCUS = int32(0x00000008) + .field private static literal int32 WM_ERASEBKGND = int32(0x0000000E) + .field private static literal int32 WM_PAINT = int32(0x0000000F) + .field private bool _focusSelect + .field private bool _drawPrompt + .field private string _bannerText + .field private valuetype [System.Drawing]System.Drawing.Color _bannerColor + .field private class [System.Drawing]System.Drawing.Font _bannerFont + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 66 (0x42) + .maxstack 2 + .line 26,26 : 9,42 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\CueBannerTextBox.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_focusSelect + .line 27,27 : 9,41 '' + IL_0007: ldarg.0 + IL_0008: ldc.i4.1 + IL_0009: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_drawPrompt + .line 28,28 : 9,51 '' + IL_000e: ldarg.0 + IL_000f: ldsfld string [mscorlib]System.String::Empty + IL_0014: stfld string Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerText + .line 29,29 : 9,60 '' + IL_0019: ldarg.0 + IL_001a: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_GrayText() + IL_001f: stfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerColor + .line 30,30 : 9,41 '' + IL_0024: ldarg.0 + IL_0025: ldnull + IL_0026: stfld class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerFont + .line 36,36 : 9,34 '' + IL_002b: ldarg.0 + IL_002c: call instance void [System.Windows.Forms]System.Windows.Forms.TextBox::.ctor() + IL_0031: nop + .line 37,37 : 9,10 '' + IL_0032: nop + .line 39,39 : 13,41 '' + IL_0033: ldarg.0 + IL_0034: ldarg.0 + IL_0035: callvirt instance class [System.Drawing]System.Drawing.Font [System.Windows.Forms]System.Windows.Forms.Control::get_Font() + IL_003a: call instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerFont(class [System.Drawing]System.Drawing.Font) + IL_003f: nop + .line 40,40 : 9,10 '' + IL_0040: nop + IL_0041: ret + } // end of method CueBannerTextBox::.ctor + + .method public hidebysig specialname instance string + get_BannerText() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 48,48 : 17,18 '' + IL_0000: nop + .line 48,48 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerText + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 48,48 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CueBannerTextBox::get_BannerText + + .method public hidebysig specialname instance void + set_BannerText(string 'value') cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 49,49 : 17,18 '' + IL_0000: nop + .line 49,49 : 19,37 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0013 + + .line 49,49 : 38,59 '' + IL_000c: ldsfld string [mscorlib]System.String::Empty + IL_0011: starg.s 'value' + .line 49,49 : 60,87 '' + IL_0013: ldarg.0 + IL_0014: ldarg.1 + IL_0015: callvirt instance string [mscorlib]System.String::Trim() + IL_001a: stfld string Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerText + .line 49,49 : 88,106 '' + IL_001f: ldarg.0 + IL_0020: call instance void [System.Windows.Forms]System.Windows.Forms.Control::Invalidate() + IL_0025: nop + .line 49,49 : 107,108 '' + IL_0026: ret + } // end of method CueBannerTextBox::set_BannerText + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Color + get_BannerForeColor() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype [System.Drawing]System.Drawing.Color CS$1$0000) + .line 58,58 : 17,18 '' + IL_0000: nop + .line 58,58 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerColor + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 58,58 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CueBannerTextBox::get_BannerForeColor + + .method public hidebysig specialname instance void + set_BannerForeColor(valuetype [System.Drawing]System.Drawing.Color 'value') cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 59,59 : 17,18 '' + IL_0000: nop + .line 59,59 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerColor + .line 59,59 : 41,59 '' + IL_0008: ldarg.0 + IL_0009: call instance void [System.Windows.Forms]System.Windows.Forms.Control::Invalidate() + IL_000e: nop + .line 59,59 : 60,61 '' + IL_000f: ret + } // end of method CueBannerTextBox::set_BannerForeColor + + .method public hidebysig specialname instance class [System.Drawing]System.Drawing.Font + get_BannerFont() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [System.Drawing]System.Drawing.Font CS$1$0000) + .line 68,68 : 17,18 '' + IL_0000: nop + .line 68,68 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerFont + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 68,68 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CueBannerTextBox::get_BannerFont + + .method public hidebysig specialname instance void + set_BannerFont(class [System.Drawing]System.Drawing.Font 'value') cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 69,69 : 17,18 '' + IL_0000: nop + .line 69,69 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerFont + .line 69,69 : 40,58 '' + IL_0008: ldarg.0 + IL_0009: call instance void [System.Windows.Forms]System.Windows.Forms.Control::Invalidate() + IL_000e: nop + .line 69,69 : 59,60 '' + IL_000f: ret + } // end of method CueBannerTextBox::set_BannerFont + + .method public hidebysig specialname instance bool + get_FocusSelect() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 78,78 : 17,18 '' + IL_0000: nop + .line 78,78 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_focusSelect + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 78,78 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CueBannerTextBox::get_FocusSelect + + .method public hidebysig specialname instance void + set_FocusSelect(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 79,79 : 17,18 '' + IL_0000: nop + .line 79,79 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_focusSelect + .line 79,79 : 41,42 '' + IL_0008: ret + } // end of method CueBannerTextBox::set_FocusSelect + + .method family hidebysig virtual instance void + OnEnter(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 48 (0x30) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 87,87 : 9,10 '' + IL_0000: nop + .line 88,88 : 13,54 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_0007: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_000c: ldc.i4.0 + IL_000d: ble.s IL_001a + + IL_000f: ldarg.0 + IL_0010: ldfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_focusSelect + IL_0015: ldc.i4.0 + IL_0016: ceq + IL_0018: br.s IL_001b + + IL_001a: ldc.i4.1 + IL_001b: nop + IL_001c: stloc.0 + IL_001d: ldloc.0 + IL_001e: brtrue.s IL_0027 + + .line 89,89 : 17,34 '' + IL_0020: ldarg.0 + IL_0021: call instance void [System.Windows.Forms]System.Windows.Forms.TextBoxBase::SelectAll() + IL_0026: nop + .line 91,91 : 13,29 '' + IL_0027: ldarg.0 + IL_0028: ldarg.1 + IL_0029: call instance void [System.Windows.Forms]System.Windows.Forms.Control::OnEnter(class [mscorlib]System.EventArgs) + IL_002e: nop + .line 92,92 : 9,10 '' + IL_002f: ret + } // end of method CueBannerTextBox::OnEnter + + .method family hidebysig virtual instance void + OnTextAlignChanged(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 99,99 : 9,10 '' + IL_0000: nop + .line 100,100 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance void [System.Windows.Forms]System.Windows.Forms.TextBox::OnTextAlignChanged(class [mscorlib]System.EventArgs) + IL_0008: nop + .line 101,101 : 13,31 '' + IL_0009: ldarg.0 + IL_000a: call instance void [System.Windows.Forms]System.Windows.Forms.Control::Invalidate() + IL_000f: nop + .line 102,102 : 9,10 '' + IL_0010: ret + } // end of method CueBannerTextBox::OnTextAlignChanged + + .method family hidebysig virtual instance void + OnPaint(class [System.Windows.Forms]System.Windows.Forms.PaintEventArgs e) cil managed + { + // Code size 56 (0x38) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 110,110 : 9,10 '' + IL_0000: nop + .line 111,111 : 13,29 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance void [System.Windows.Forms]System.Windows.Forms.Control::OnPaint(class [System.Windows.Forms]System.Windows.Forms.PaintEventArgs) + IL_0008: nop + .line 114,114 : 13,54 '' + IL_0009: ldarg.0 + IL_000a: ldfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_drawPrompt + IL_000f: brfalse.s IL_0024 + + IL_0011: ldarg.0 + IL_0012: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_0017: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_001c: ldc.i4.0 + IL_001d: ceq + IL_001f: ldc.i4.0 + IL_0020: ceq + IL_0022: br.s IL_0025 + + IL_0024: ldc.i4.1 + IL_0025: nop + IL_0026: stloc.0 + IL_0027: ldloc.0 + IL_0028: brtrue.s IL_0037 + + .line 115,115 : 17,44 '' + IL_002a: ldarg.0 + IL_002b: ldarg.1 + IL_002c: callvirt instance class [System.Drawing]System.Drawing.Graphics [System.Windows.Forms]System.Windows.Forms.PaintEventArgs::get_Graphics() + IL_0031: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::DrawTextPrompt(class [System.Drawing]System.Drawing.Graphics) + IL_0036: nop + .line 116,116 : 9,10 '' + IL_0037: ret + } // end of method CueBannerTextBox::OnPaint + + .method family hidebysig virtual instance void + WndProc(valuetype [System.Windows.Forms]System.Windows.Forms.Message& m) cil managed + { + // Code size 106 (0x6a) + .maxstack 2 + .locals init ([0] int32 CS$4$0000, + [1] bool CS$4$0001) + .line 127,127 : 9,10 '' + IL_0000: nop + .line 128,128 : 13,27 '' + IL_0001: ldarg.1 + IL_0002: call instance int32 [System.Windows.Forms]System.Windows.Forms.Message::get_Msg() + IL_0007: stloc.0 + IL_0008: ldloc.0 + IL_0009: ldc.i4.7 + IL_000a: sub + IL_000b: switch ( + IL_001a, + IL_0023) + IL_0018: br.s IL_002c + + .line 131,131 : 21,41 '' + IL_001a: ldarg.0 + IL_001b: ldc.i4.0 + IL_001c: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_drawPrompt + .line 132,132 : 21,27 '' + IL_0021: br.s IL_002c + + .line 135,135 : 21,40 '' + IL_0023: ldarg.0 + IL_0024: ldc.i4.1 + IL_0025: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_drawPrompt + .line 136,136 : 21,27 '' + IL_002a: br.s IL_002c + + .line 139,139 : 13,33 '' + IL_002c: ldarg.0 + IL_002d: ldarg.1 + IL_002e: call instance void [System.Windows.Forms]System.Windows.Forms.TextBox::WndProc(valuetype [System.Windows.Forms]System.Windows.Forms.Message&) + IL_0033: nop + .line 142,142 : 13,118 '' + IL_0034: ldarg.1 + IL_0035: call instance int32 [System.Windows.Forms]System.Windows.Forms.Message::get_Msg() + IL_003a: ldc.i4.s 15 + IL_003c: bne.un.s IL_005c + + IL_003e: ldarg.0 + IL_003f: ldfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_drawPrompt + IL_0044: brfalse.s IL_005c + + IL_0046: ldarg.0 + IL_0047: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_004c: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0051: brtrue.s IL_005c + + IL_0053: ldarg.0 + IL_0054: ldc.i4.2 + IL_0055: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::GetStyle(valuetype [System.Windows.Forms]System.Windows.Forms.ControlStyles) + IL_005a: br.s IL_005d + + IL_005c: ldc.i4.1 + IL_005d: nop + IL_005e: stloc.1 + IL_005f: ldloc.1 + IL_0060: brtrue.s IL_0069 + + .line 143,143 : 17,34 '' + IL_0062: ldarg.0 + IL_0063: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::DrawTextPrompt() + IL_0068: nop + .line 144,144 : 9,10 '' + IL_0069: ret + } // end of method CueBannerTextBox::WndProc + + .method family hidebysig newslot virtual + instance void DrawTextPrompt() cil managed + { + // Code size 38 (0x26) + .maxstack 2 + .locals init ([0] class [System.Drawing]System.Drawing.Graphics g, + [1] bool CS$4$0000) + .line 151,151 : 9,10 '' + IL_0000: nop + .line 152,152 : 20,54 '' + IL_0001: ldarg.0 + IL_0002: call instance class [System.Drawing]System.Drawing.Graphics [System.Windows.Forms]System.Windows.Forms.Control::CreateGraphics() + IL_0007: stloc.0 + .line 153,153 : 13,14 '' + .try + { + IL_0008: nop + .line 154,154 : 17,35 '' + IL_0009: ldarg.0 + IL_000a: ldloc.0 + IL_000b: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::DrawTextPrompt(class [System.Drawing]System.Drawing.Graphics) + IL_0010: nop + .line 155,155 : 13,14 '' + IL_0011: nop + IL_0012: leave.s IL_0024 + + } // end .try + finally + { + IL_0014: ldloc.0 + IL_0015: ldnull + IL_0016: ceq + IL_0018: stloc.1 + IL_0019: ldloc.1 + IL_001a: brtrue.s IL_0023 + + IL_001c: ldloc.0 + IL_001d: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0022: nop + IL_0023: endfinally + } // end handler + IL_0024: nop + .line 156,156 : 9,10 '' + IL_0025: ret + } // end of method CueBannerTextBox::DrawTextPrompt + + .method family hidebysig newslot virtual + instance void DrawTextPrompt(class [System.Drawing]System.Drawing.Graphics g) cil managed + { + // Code size 121 (0x79) + .maxstack 7 + .locals init ([0] valuetype [System.Windows.Forms]System.Windows.Forms.TextFormatFlags 'flags', + [1] valuetype [System.Drawing]System.Drawing.Rectangle rect, + [2] valuetype [System.Windows.Forms]System.Windows.Forms.HorizontalAlignment CS$4$0000) + .line 163,163 : 9,10 '' + IL_0000: nop + .line 164,164 : 13,115 '' + IL_0001: ldc.i4 0x10008000 + IL_0006: stloc.0 + .line 165,165 : 13,51 '' + IL_0007: ldarg.0 + IL_0008: call instance valuetype [System.Drawing]System.Drawing.Rectangle [System.Windows.Forms]System.Windows.Forms.Control::get_ClientRectangle() + IL_000d: stloc.1 + .line 169,169 : 13,36 '' + IL_000e: ldarg.0 + IL_000f: call instance valuetype [System.Windows.Forms]System.Windows.Forms.HorizontalAlignment [System.Windows.Forms]System.Windows.Forms.TextBox::get_TextAlign() + IL_0014: stloc.2 + IL_0015: ldloc.2 + IL_0016: switch ( + IL_0039, + IL_0047, + IL_0029) + IL_0027: br.s IL_0057 + + .line 172,172 : 21,70 '' + IL_0029: ldloc.0 + IL_002a: ldc.i4.1 + IL_002b: or + IL_002c: stloc.0 + .line 173,173 : 21,39 '' + IL_002d: ldloca.s rect + IL_002f: ldc.i4.0 + IL_0030: ldc.i4.1 + IL_0031: call instance void [System.Drawing]System.Drawing.Rectangle::Offset(int32, + int32) + IL_0036: nop + .line 174,174 : 21,27 '' + IL_0037: br.s IL_0057 + + .line 176,176 : 21,58 '' + IL_0039: ldloc.0 + IL_003a: stloc.0 + .line 177,177 : 21,39 '' + IL_003b: ldloca.s rect + IL_003d: ldc.i4.1 + IL_003e: ldc.i4.1 + IL_003f: call instance void [System.Drawing]System.Drawing.Rectangle::Offset(int32, + int32) + IL_0044: nop + .line 178,178 : 21,27 '' + IL_0045: br.s IL_0057 + + .line 180,180 : 21,59 '' + IL_0047: ldloc.0 + IL_0048: ldc.i4.2 + IL_0049: or + IL_004a: stloc.0 + .line 181,181 : 21,39 '' + IL_004b: ldloca.s rect + IL_004d: ldc.i4.0 + IL_004e: ldc.i4.1 + IL_004f: call instance void [System.Drawing]System.Drawing.Rectangle::Offset(int32, + int32) + IL_0054: nop + .line 182,182 : 21,27 '' + IL_0055: br.s IL_0057 + + .line 186,186 : 13,107 '' + IL_0057: ldarg.1 + IL_0058: ldarg.0 + IL_0059: ldfld string Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerText + IL_005e: ldarg.0 + IL_005f: ldfld class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerFont + IL_0064: ldloc.1 + IL_0065: ldarg.0 + IL_0066: ldfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerColor + IL_006b: ldarg.0 + IL_006c: callvirt instance valuetype [System.Drawing]System.Drawing.Color [System.Windows.Forms]System.Windows.Forms.Control::get_BackColor() + IL_0071: ldloc.0 + IL_0072: call void [System.Windows.Forms]System.Windows.Forms.TextRenderer::DrawText(class [System.Drawing]System.Drawing.IDeviceContext, + string, + class [System.Drawing]System.Drawing.Font, + valuetype [System.Drawing]System.Drawing.Rectangle, + valuetype [System.Drawing]System.Drawing.Color, + valuetype [System.Drawing]System.Drawing.Color, + valuetype [System.Windows.Forms]System.Windows.Forms.TextFormatFlags) + IL_0077: nop + .line 187,187 : 9,10 '' + IL_0078: ret + } // end of method CueBannerTextBox::DrawTextPrompt + + .property instance string BannerText() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 00 00 00 00 00 00 ) + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.DescriptionAttribute::.ctor(string) = ( 01 00 46 54 68 65 20 70 72 6F 6D 70 74 20 74 65 // ..FThe prompt te + 78 74 20 74 6F 20 64 69 73 70 6C 61 79 20 77 68 // xt to display wh + 65 6E 20 74 68 65 72 65 20 69 73 20 6E 6F 74 68 // en there is noth + 69 6E 67 20 69 6E 20 74 68 65 20 54 65 78 74 20 // ing in the Text + 70 72 6F 70 65 72 74 79 2E 00 00 ) // property... + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerText(string) + .get instance string Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_BannerText() + } // end of property CueBannerTextBox::BannerText + .property instance valuetype [System.Drawing]System.Drawing.Color + BannerForeColor() + { + .custom instance void [System]System.ComponentModel.DescriptionAttribute::.ctor(string) = ( 01 00 34 54 68 65 20 46 6F 72 65 43 6F 6C 6F 72 // ..4The ForeColor + 20 74 6F 20 75 73 65 20 77 68 65 6E 20 64 69 73 // to use when dis + 70 6C 61 79 69 6E 67 20 74 68 65 20 50 72 6F 6D // playing the Prom + 70 74 54 65 78 74 2E 00 00 ) // ptText... + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 00 00 00 00 00 00 ) + .get instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_BannerForeColor() + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerForeColor(valuetype [System.Drawing]System.Drawing.Color) + } // end of property CueBannerTextBox::BannerForeColor + .property instance class [System.Drawing]System.Drawing.Font + BannerFont() + { + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 00 00 00 00 00 00 ) + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.DescriptionAttribute::.ctor(string) = ( 01 00 2F 54 68 65 20 46 6F 6E 74 20 74 6F 20 75 // ../The Font to u + 73 65 20 77 68 65 6E 20 64 69 73 70 6C 61 79 69 // se when displayi + 6E 67 20 74 68 65 20 50 72 6F 6D 70 74 54 65 78 // ng the PromptTex + 74 2E 00 00 ) // t... + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerFont(class [System.Drawing]System.Drawing.Font) + .get instance class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_BannerFont() + } // end of property CueBannerTextBox::BannerFont + .property instance bool FocusSelect() + { + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.DescriptionAttribute::.ctor(string) = ( 01 00 3E 41 75 74 6F 6D 61 74 69 63 61 6C 6C 79 // ..>Automatically + 20 73 65 6C 65 63 74 20 74 68 65 20 74 65 78 74 // select the text + 20 77 68 65 6E 20 63 6F 6E 74 72 6F 6C 20 72 65 // when control re + 63 65 69 76 65 73 20 74 68 65 20 66 6F 63 75 73 // ceives the focus + 2E 00 00 ) // ... + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 00 00 00 00 00 00 ) + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 08 42 65 68 61 76 69 6F 72 00 00 ) // ...Behavior.. + .get instance bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_FocusSelect() + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_FocusSelect(bool) + } // end of property CueBannerTextBox::FocusSelect +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel + extends [System.Windows.Forms]System.Windows.Forms.Panel +{ + .custom instance void [System.Drawing]System.Drawing.ToolboxBitmapAttribute::.ctor(class [mscorlib]System.Type) = ( 01 00 73 53 79 73 74 65 6D 2E 57 69 6E 64 6F 77 // ..sSystem.Window + 73 2E 46 6F 72 6D 73 2E 50 61 6E 65 6C 2C 20 53 // s.Forms.Panel, S + 79 73 74 65 6D 2E 57 69 6E 64 6F 77 73 2E 46 6F // ystem.Windows.Fo + 72 6D 73 2C 20 56 65 72 73 69 6F 6E 3D 32 2E 30 // rms, Version=2.0 + 2E 30 2E 30 2C 20 43 75 6C 74 75 72 65 3D 6E 65 // .0.0, Culture=ne + 75 74 72 61 6C 2C 20 50 75 62 6C 69 63 4B 65 79 // utral, PublicKey + 54 6F 6B 65 6E 3D 62 37 37 61 35 63 35 36 31 39 // Token=b77a5c5619 + 33 34 65 30 38 39 00 00 ) // 34e089.. + .field private valuetype [System.Drawing]System.Drawing.Color gradientColor + .field private float32 rotation + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 30,30 : 9,31 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\GradientPanel.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Panel::.ctor() + IL_0006: nop + .line 30,30 : 32,33 '' + IL_0007: nop + .line 30,30 : 34,35 '' + IL_0008: nop + IL_0009: ret + } // end of method GradientPanel::.ctor + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Color + get_GradientColor() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype [System.Drawing]System.Drawing.Color CS$1$0000) + .line 35,35 : 17,18 '' + IL_0000: nop + .line 35,35 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::gradientColor + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 35,35 : 41,42 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method GradientPanel::get_GradientColor + + .method public hidebysig specialname instance void + set_GradientColor(valuetype [System.Drawing]System.Drawing.Color 'value') cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 36,36 : 17,18 '' + IL_0000: nop + .line 36,36 : 19,41 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::gradientColor + .line 36,36 : 42,52 '' + IL_0008: ldarg.0 + IL_0009: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::Refresh() + IL_000e: nop + .line 36,36 : 53,54 '' + IL_000f: ret + } // end of method GradientPanel::set_GradientColor + + .method public hidebysig specialname instance float32 + get_Rotation() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] float32 CS$1$0000) + .line 42,42 : 17,18 '' + IL_0000: nop + .line 42,42 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldfld float32 Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::rotation + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 42,42 : 36,37 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method GradientPanel::get_Rotation + + .method public hidebysig specialname instance void + set_Rotation(float32 'value') cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 43,43 : 17,18 '' + IL_0000: nop + .line 43,43 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld float32 Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::rotation + .line 43,43 : 37,47 '' + IL_0008: ldarg.0 + IL_0009: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::Refresh() + IL_000e: nop + .line 43,43 : 48,49 '' + IL_000f: ret + } // end of method GradientPanel::set_Rotation + + .method family hidebysig virtual instance void + OnPaint(class [System.Windows.Forms]System.Windows.Forms.PaintEventArgs e) cil managed + { + // Code size 101 (0x65) + .maxstack 4 + .locals init ([0] class [System.Drawing]System.Drawing.Drawing2D.LinearGradientBrush brush, + [1] valuetype [System.Drawing]System.Drawing.Rectangle CS$0$0000, + [2] bool CS$4$0001) + .line 47,47 : 9,10 '' + IL_0000: nop + .line 48,48 : 13,41 '' + IL_0001: ldarg.1 + IL_0002: callvirt instance valuetype [System.Drawing]System.Drawing.Rectangle [System.Windows.Forms]System.Windows.Forms.PaintEventArgs::get_ClipRectangle() + IL_0007: stloc.1 + IL_0008: ldloca.s CS$0$0000 + IL_000a: call instance bool [System.Drawing]System.Drawing.Rectangle::get_IsEmpty() + IL_000f: ldc.i4.0 + IL_0010: ceq + IL_0012: stloc.2 + IL_0013: ldloc.2 + IL_0014: brtrue.s IL_0018 + + .line 48,48 : 42,49 '' + IL_0016: br.s IL_0064 + + .line 50,50 : 20,124 '' + IL_0018: ldarg.0 + IL_0019: call instance valuetype [System.Drawing]System.Drawing.Rectangle [System.Windows.Forms]System.Windows.Forms.Control::get_ClientRectangle() + IL_001e: ldarg.0 + IL_001f: callvirt instance valuetype [System.Drawing]System.Drawing.Color [System.Windows.Forms]System.Windows.Forms.Control::get_BackColor() + IL_0024: ldarg.0 + IL_0025: call instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_GradientColor() + IL_002a: ldarg.0 + IL_002b: call instance float32 Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_Rotation() + IL_0030: newobj instance void [System.Drawing]System.Drawing.Drawing2D.LinearGradientBrush::.ctor(valuetype [System.Drawing]System.Drawing.Rectangle, + valuetype [System.Drawing]System.Drawing.Color, + valuetype [System.Drawing]System.Drawing.Color, + float32) + IL_0035: stloc.0 + .line 51,51 : 17,66 '' + .try + { + IL_0036: ldarg.1 + IL_0037: callvirt instance class [System.Drawing]System.Drawing.Graphics [System.Windows.Forms]System.Windows.Forms.PaintEventArgs::get_Graphics() + IL_003c: ldloc.0 + IL_003d: ldarg.0 + IL_003e: call instance valuetype [System.Drawing]System.Drawing.Rectangle [System.Windows.Forms]System.Windows.Forms.Control::get_ClientRectangle() + IL_0043: callvirt instance void [System.Drawing]System.Drawing.Graphics::FillRectangle(class [System.Drawing]System.Drawing.Brush, + valuetype [System.Drawing]System.Drawing.Rectangle) + IL_0048: nop + IL_0049: leave.s IL_005b + + } // end .try + finally + { + IL_004b: ldloc.0 + IL_004c: ldnull + IL_004d: ceq + IL_004f: stloc.2 + IL_0050: ldloc.2 + IL_0051: brtrue.s IL_005a + + IL_0053: ldloc.0 + IL_0054: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0059: nop + IL_005a: endfinally + } // end handler + IL_005b: nop + .line 53,53 : 13,29 '' + IL_005c: ldarg.0 + IL_005d: ldarg.1 + IL_005e: call instance void [System.Windows.Forms]System.Windows.Forms.Control::OnPaint(class [System.Windows.Forms]System.Windows.Forms.PaintEventArgs) + IL_0063: nop + .line 54,54 : 9,10 '' + IL_0064: ret + } // end of method GradientPanel::OnPaint + + .property instance valuetype [System.Drawing]System.Drawing.Color + GradientColor() + { + .get instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_GradientColor() + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor(valuetype [System.Drawing]System.Drawing.Color) + } // end of property GradientPanel::GradientColor + .property instance float32 Rotation() + { + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_Rotation(float32) + .get instance float32 Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_Rotation() + } // end of property GradientPanel::Rotation +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem + extends [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem +{ + .field private static initonly class [mscorlib]System.Random HandleGenerator + .field private int32 handle + .field private string service + .field private string popUpMenu + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + string popUpMenu, + string service, + class [System.Drawing]System.Drawing.Image image) cil managed + { + // Code size 142 (0x8e) + .maxstack 4 + .locals init ([0] bool CS$4$0000, + [1] int32 CS$0$0001) + .line 40,40 : 9,95 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\ManagedMainMenuItem.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::.ctor() + IL_0006: nop + .line 41,41 : 9,10 '' + IL_0007: nop + .line 42,42 : 13,44 '' + IL_0008: ldarg.1 + IL_0009: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000e: ldc.i4.0 + IL_000f: ceq + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0020 + + .line 42,42 : 45,85 '' + IL_0015: ldstr "text" + IL_001a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001f: throw + + .line 43,43 : 13,47 '' + IL_0020: ldarg.3 + IL_0021: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0026: ldc.i4.0 + IL_0027: ceq + IL_0029: stloc.0 + IL_002a: ldloc.0 + IL_002b: brtrue.s IL_0038 + + .line 43,43 : 48,91 '' + IL_002d: ldstr "service" + IL_0032: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0037: throw + + .line 45,45 : 13,70 '' + IL_0038: ldarg.0 + IL_0039: ldarg.0 + IL_003a: ldsfld class [mscorlib]System.Random Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::HandleGenerator + IL_003f: callvirt instance int32 [mscorlib]System.Random::Next() + IL_0044: dup + IL_0045: stloc.1 + IL_0046: stfld int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::handle + IL_004b: ldloc.1 + IL_004c: stloc.1 + IL_004d: ldloca.s CS$0$0001 + IL_004f: call instance string [mscorlib]System.Int32::ToString() + IL_0054: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Name(string) + IL_0059: nop + .line 47,47 : 13,30 '' + IL_005a: ldarg.0 + IL_005b: ldarg.1 + IL_005c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Text(string) + IL_0061: nop + .line 48,48 : 13,40 '' + IL_0062: ldarg.0 + IL_0063: ldarg.2 + IL_0064: stfld string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::popUpMenu + .line 49,49 : 13,36 '' + IL_0069: ldarg.0 + IL_006a: ldarg.3 + IL_006b: stfld string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::service + .line 50,50 : 13,32 '' + IL_0070: ldarg.0 + IL_0071: ldarg.s image + IL_0073: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0078: nop + .line 52,52 : 13,71 '' + IL_0079: ldarg.0 + IL_007a: ldarg.0 + IL_007b: ldftn instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::ManagedMainMenuItem_Click(object, + class [mscorlib]System.EventArgs) + IL_0081: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0086: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::add_Click(class [mscorlib]System.EventHandler) + IL_008b: nop + .line 53,53 : 9,10 '' + IL_008c: nop + IL_008d: ret + } // end of method ManagedMainMenuItem::.ctor + + .method public hidebysig specialname instance string + get_PopUpMenu() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 61,61 : 17,18 '' + IL_0000: nop + .line 61,61 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::popUpMenu + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 61,61 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ManagedMainMenuItem::get_PopUpMenu + + .method public hidebysig specialname instance string + get_Service() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 66,66 : 17,18 '' + IL_0000: nop + .line 66,66 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::service + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 66,66 : 35,36 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ManagedMainMenuItem::get_Service + + .method public hidebysig specialname instance int32 + get_Handle() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 71,71 : 17,18 '' + IL_0000: nop + .line 71,71 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::handle + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 71,71 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ManagedMainMenuItem::get_Handle + + .method private hidebysig instance void + ManagedMainMenuItem_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 79,79 : 9,10 '' + IL_0000: nop + .line 80,80 : 13,57 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldarg.0 + IL_0007: ldfld string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::service + IL_000c: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_0011: pop + .line 81,81 : 9,10 '' + IL_0012: ret + } // end of method ManagedMainMenuItem::ManagedMainMenuItem_Click + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 31,31 : 9,71 '' + IL_0000: newobj instance void [mscorlib]System.Random::.ctor() + IL_0005: stsfld class [mscorlib]System.Random Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::HandleGenerator + IL_000a: ret + } // end of method ManagedMainMenuItem::.cctor + + .property instance string PopUpMenu() + { + .get instance string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_PopUpMenu() + } // end of property ManagedMainMenuItem::PopUpMenu + .property instance string Service() + { + .get instance string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_Service() + } // end of property ManagedMainMenuItem::Service + .property instance int32 Handle() + { + .get instance int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_Handle() + } // end of property ManagedMainMenuItem::Handle +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu + extends [System.Windows.Forms]System.Windows.Forms.ContextMenuStrip +{ + .field private class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem ManagePluginsITEM + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 40,40 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\TrayContextMenu.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.ContextMenuStrip::.ctor() + IL_0006: nop + .line 41,41 : 9,10 '' + IL_0007: nop + .line 42,42 : 13,35 '' + IL_0008: ldarg.0 + IL_0009: call instance void Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::InitializeComponent() + IL_000e: nop + .line 43,43 : 9,10 '' + IL_000f: nop + IL_0010: ret + } // end of method TrayContextMenu::.ctor + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 204 (0xcc) + .maxstack 4 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources, + [1] class [System.Windows.Forms]System.Windows.Forms.ToolStripItem[] CS$0$0000) + .line 50,50 : 9,10 '' + IL_0000: nop + .line 51,51 : 13,148 '' + IL_0001: ldtoken Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_0010: stloc.0 + .line 52,52 : 13,83 '' + IL_0011: ldarg.0 + IL_0012: newobj instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::.ctor() + IL_0017: stfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + .line 53,53 : 13,34 '' + IL_001c: ldarg.0 + IL_001d: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0022: nop + .line 57,57 : 13,117 '' + IL_0023: ldarg.0 + IL_0024: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_0029: ldloc.0 + IL_002a: ldstr "ManagePluginsITEM.Image" + IL_002f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0034: castclass [System.Drawing]System.Drawing.Image + IL_0039: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Image(class [System.Drawing]System.Drawing.Image) + IL_003e: nop + .line 58,58 : 13,63 '' + IL_003f: ldarg.0 + IL_0040: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_0045: ldstr "ManagePluginsITEM" + IL_004a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Name(string) + IL_004f: nop + .line 59,59 : 13,76 '' + IL_0050: ldarg.0 + IL_0051: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_0056: ldc.i4.s 111 + IL_0058: ldc.i4.s 22 + IL_005a: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_005f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0064: nop + .line 60,60 : 13,53 '' + IL_0065: ldarg.0 + IL_0066: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_006b: ldstr "Options" + IL_0070: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Text(string) + IL_0075: nop + .line 61,61 : 13,99 '' + IL_0076: ldarg.0 + IL_0077: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_007c: ldarg.0 + IL_007d: ldftn instance void Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM_Click(object, + class [mscorlib]System.EventArgs) + IL_0083: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0088: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::add_Click(class [mscorlib]System.EventHandler) + IL_008d: nop + .line 65,66 : 13,38 '' + IL_008e: ldarg.0 + IL_008f: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0094: ldc.i4.1 + IL_0095: newarr [System.Windows.Forms]System.Windows.Forms.ToolStripItem + IL_009a: stloc.1 + IL_009b: ldloc.1 + IL_009c: ldc.i4.0 + IL_009d: ldarg.0 + IL_009e: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_00a3: stelem.ref + IL_00a4: ldloc.1 + IL_00a5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::AddRange(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem[]) + IL_00aa: nop + .line 67,67 : 13,79 '' + IL_00ab: ldarg.0 + IL_00ac: ldc.i4.1 + IL_00ad: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStrip::set_RenderMode(valuetype [System.Windows.Forms]System.Windows.Forms.ToolStripRenderMode) + IL_00b2: nop + .line 68,68 : 13,58 '' + IL_00b3: ldarg.0 + IL_00b4: ldc.i4.s 112 + IL_00b6: ldc.i4.s 26 + IL_00b8: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00bd: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_00c2: nop + .line 69,69 : 13,38 '' + IL_00c3: ldarg.0 + IL_00c4: ldc.i4.0 + IL_00c5: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_00ca: nop + .line 71,71 : 9,10 '' + IL_00cb: ret + } // end of method TrayContextMenu::InitializeComponent + + .method private hidebysig instance void + ManagePluginsITEM_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 78,78 : 9,10 '' + IL_0000: nop + .line 79,79 : 13,50 '' + IL_0001: call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance() + IL_0006: callvirt instance void Virtuoso.Hyphen.Loader::ManagePlugins() + IL_000b: nop + .line 80,80 : 9,10 '' + IL_000c: ret + } // end of method TrayContextMenu::ManagePluginsITEM_Click + +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager + extends [mscorlib]System.Object + implements [mscorlib]System.IDisposable +{ + .field private initonly class [System.Windows.Forms]System.Windows.Forms.NotifyIcon TrayIcon + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 85 (0x55) + .maxstack 2 + .line 39,39 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\TrayMenuManager.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 40,40 : 9,10 '' + IL_0007: nop + .line 41,41 : 13,41 '' + IL_0008: ldarg.0 + IL_0009: newobj instance void [System.Windows.Forms]System.Windows.Forms.NotifyIcon::.ctor() + IL_000e: stfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + .line 43,43 : 13,69 '' + IL_0013: ldarg.0 + IL_0014: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_0019: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_ToolTip_HyphenTrayIcon() + IL_001e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.NotifyIcon::set_Text(string) + IL_0023: nop + .line 44,44 : 13,37 '' + IL_0024: ldarg.0 + IL_0025: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_002a: ldc.i4.1 + IL_002b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.NotifyIcon::set_Visible(bool) + IL_0030: nop + .line 45,45 : 13,63 '' + IL_0031: ldarg.0 + IL_0032: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_0037: call class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_16x16_Hyphen() + IL_003c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.NotifyIcon::set_Icon(class [System.Drawing]System.Drawing.Icon) + IL_0041: nop + .line 46,46 : 13,63 '' + IL_0042: ldarg.0 + IL_0043: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_0048: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::.ctor() + IL_004d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.NotifyIcon::set_ContextMenuStrip(class [System.Windows.Forms]System.Windows.Forms.ContextMenuStrip) + IL_0052: nop + .line 47,47 : 9,10 '' + IL_0053: nop + IL_0054: ret + } // end of method TrayMenuManager::.ctor + + .method public hidebysig newslot virtual final + instance void Dispose() cil managed + { + // Code size 27 (0x1b) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 54,54 : 9,10 '' + IL_0000: nop + .line 55,55 : 13,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_001a + + .line 56,56 : 17,36 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_0014: callvirt instance void [System]System.ComponentModel.Component::Dispose() + IL_0019: nop + .line 57,57 : 9,10 '' + IL_001a: ret + } // end of method TrayMenuManager::Dispose + +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog + extends [System.Windows.Forms]System.Windows.Forms.Form +{ + .class auto ansi sealed nested public WorkerDelegate + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method WorkerDelegate::.ctor + + .method public hidebysig newslot virtual + instance void Invoke() runtime managed + { + } // end of method WorkerDelegate::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method WorkerDelegate::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method WorkerDelegate::EndInvoke + + } // end of class WorkerDelegate + + .field private class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate Worker + .field private class [System]System.ComponentModel.IContainer components + .field private class [System]System.ComponentModel.BackgroundWorker FusionWorker + .field private class [System.Windows.Forms]System.Windows.Forms.PictureBox BackgroundPBOX + .field private static class [mscorlib]System.Threading.ParameterizedThreadStart 'CS$<>9__CachedAnonymousMethodDelegate1' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate del) cil managed + { + // Code size 50 (0x32) + .maxstack 8 + .line 8,8 : 9,68 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\FusionProgressDialog.Designer.cs' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: stfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::components + .line 47,47 : 9,56 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\FusionProgressDialog.cs' + IL_0007: ldarg.0 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Form::.ctor() + IL_000d: nop + .line 48,48 : 9,10 '' + IL_000e: nop + .line 49,49 : 13,35 '' + IL_000f: ldarg.0 + IL_0010: call instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::InitializeComponent() + IL_0015: nop + .line 51,51 : 13,26 '' + IL_0016: ldarg.0 + IL_0017: ldarg.1 + IL_0018: stfld class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::Worker + .line 52,52 : 13,49 '' + IL_001d: ldarg.0 + IL_001e: ldarg.0 + IL_001f: ldftn instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionProgressDialog_Shown(object, + class [mscorlib]System.EventArgs) + IL_0025: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_002a: call instance void [System.Windows.Forms]System.Windows.Forms.Form::add_Shown(class [mscorlib]System.EventHandler) + IL_002f: nop + .line 53,53 : 9,10 '' + IL_0030: nop + IL_0031: ret + } // end of method FusionProgressDialog::.ctor + + .method public hidebysig static void ShowDialog(class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate del) cil managed + { + // Code size 62 (0x3e) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 56,56 : 9,10 '' + IL_0000: nop + .line 57,57 : 13,29 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 58,58 : 17,56 '' + IL_000c: ldstr "del" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 60,64 : 13,21 '' + IL_0017: ldsfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_001c: brtrue.s IL_0031 + + IL_001e: ldnull + IL_001f: ldftn void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::'b__0'(object) + IL_0025: newobj instance void [mscorlib]System.Threading.ParameterizedThreadStart::.ctor(object, + native int) + IL_002a: stsfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_002f: br.s IL_0031 + + IL_0031: ldsfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0036: ldarg.0 + IL_0037: call void Virtuoso.Miranda.Plugins.Forms.PluginDialog::ExecuteOnSTAThread(class [mscorlib]System.Threading.ParameterizedThreadStart, + object) + IL_003c: nop + .line 65,65 : 9,10 '' + IL_003d: ret + } // end of method FusionProgressDialog::ShowDialog + + .method private hidebysig instance void + FusionProgressDialog_Shown(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 72,72 : 9,10 '' + IL_0000: nop + .line 73,73 : 13,43 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System]System.ComponentModel.BackgroundWorker Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker + IL_0007: callvirt instance void [System]System.ComponentModel.BackgroundWorker::RunWorkerAsync() + IL_000c: nop + .line 74,74 : 9,10 '' + IL_000d: ret + } // end of method FusionProgressDialog::FusionProgressDialog_Shown + + .method private hidebysig instance void + FusionWorker_DoWork(object sender, + class [System]System.ComponentModel.DoWorkEventArgs e) cil managed + { + // Code size 27 (0x1b) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 77,77 : 9,10 '' + IL_0000: nop + .line 78,78 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::Worker + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_001a + + .line 79,79 : 17,26 '' + IL_000e: ldarg.0 + IL_000f: ldfld class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::Worker + IL_0014: callvirt instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate::Invoke() + IL_0019: nop + .line 80,80 : 9,10 '' + IL_001a: ret + } // end of method FusionProgressDialog::FusionWorker_DoWork + + .method private hidebysig instance void + FusionWorker_RunWorkerCompleted(object sender, + class [System]System.ComponentModel.RunWorkerCompletedEventArgs e) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 83,83 : 9,10 '' + IL_0000: nop + .line 84,84 : 13,21 '' + IL_0001: ldarg.0 + IL_0002: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Close() + IL_0007: nop + .line 85,85 : 9,10 '' + IL_0008: ret + } // end of method FusionProgressDialog::FusionWorker_RunWorkerCompleted + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 44 (0x2c) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 15,15 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\FusionProgressDialog.Designer.cs' + IL_0000: nop + .line 16,16 : 13,51 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_000f + + IL_0004: ldarg.0 + IL_0005: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::components + IL_000a: ldnull + IL_000b: ceq + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.1 + IL_0010: nop + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0023 + + .line 17,17 : 13,14 '' + IL_0015: nop + .line 18,18 : 17,38 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::components + IL_001c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0021: nop + .line 19,19 : 13,14 '' + IL_0022: nop + .line 20,20 : 13,37 '' + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Dispose(bool) + IL_002a: nop + .line 21,21 : 9,10 '' + IL_002b: ret + } // end of method FusionProgressDialog::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 481 (0x1e1) + .maxstack 6 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources) + .line 30,30 : 9,10 '' + IL_0000: nop + .line 31,31 : 13,153 '' + IL_0001: ldtoken Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_0010: stloc.0 + .line 32,32 : 13,78 '' + IL_0011: ldarg.0 + IL_0012: newobj instance void [System]System.ComponentModel.BackgroundWorker::.ctor() + IL_0017: stfld class [System]System.ComponentModel.BackgroundWorker Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker + .line 33,33 : 13,73 '' + IL_001c: ldarg.0 + IL_001d: newobj instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::.ctor() + IL_0022: stfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + .line 34,34 : 13,91 '' + IL_0027: ldarg.0 + IL_0028: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_002d: callvirt instance void [System]System.ComponentModel.ISupportInitialize::BeginInit() + IL_0032: nop + .line 35,35 : 13,34 '' + IL_0033: ldarg.0 + IL_0034: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0039: nop + .line 39,39 : 13,112 '' + IL_003a: ldarg.0 + IL_003b: ldfld class [System]System.ComponentModel.BackgroundWorker Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker + IL_0040: ldarg.0 + IL_0041: ldftn instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker_DoWork(object, + class [System]System.ComponentModel.DoWorkEventArgs) + IL_0047: newobj instance void [System]System.ComponentModel.DoWorkEventHandler::.ctor(object, + native int) + IL_004c: callvirt instance void [System]System.ComponentModel.BackgroundWorker::add_DoWork(class [System]System.ComponentModel.DoWorkEventHandler) + IL_0051: nop + .line 40,40 : 13,148 '' + IL_0052: ldarg.0 + IL_0053: ldfld class [System]System.ComponentModel.BackgroundWorker Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker + IL_0058: ldarg.0 + IL_0059: ldftn instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker_RunWorkerCompleted(object, + class [System]System.ComponentModel.RunWorkerCompletedEventArgs) + IL_005f: newobj instance void [System]System.ComponentModel.RunWorkerCompletedEventHandler::.ctor(object, + native int) + IL_0064: callvirt instance void [System]System.ComponentModel.BackgroundWorker::add_RunWorkerCompleted(class [System]System.ComponentModel.RunWorkerCompletedEventHandler) + IL_0069: nop + .line 44,44 : 13,111 '' + IL_006a: ldarg.0 + IL_006b: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_0070: ldloc.0 + IL_0071: ldstr "BackgroundPBOX.Image" + IL_0076: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_007b: castclass [System.Drawing]System.Drawing.Image + IL_0080: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0085: nop + .line 45,45 : 13,75 '' + IL_0086: ldarg.0 + IL_0087: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_008c: ldc.i4.0 + IL_008d: ldc.i4.0 + IL_008e: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0093: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0098: nop + .line 46,46 : 13,57 '' + IL_0099: ldarg.0 + IL_009a: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_009f: ldstr "BackgroundPBOX" + IL_00a4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_00a9: nop + .line 47,47 : 13,74 '' + IL_00aa: ldarg.0 + IL_00ab: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_00b0: ldc.i4 0xc8 + IL_00b5: ldc.i4.s 100 + IL_00b7: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00bc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_00c1: nop + .line 48,48 : 13,93 '' + IL_00c2: ldarg.0 + IL_00c3: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_00c8: ldc.i4.2 + IL_00c9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_SizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.PictureBoxSizeMode) + IL_00ce: nop + .line 49,49 : 13,46 '' + IL_00cf: ldarg.0 + IL_00d0: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_00d5: ldc.i4.2 + IL_00d6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabIndex(int32) + IL_00db: nop + .line 50,50 : 13,49 '' + IL_00dc: ldarg.0 + IL_00dd: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_00e2: ldc.i4.0 + IL_00e3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabStop(bool) + IL_00e8: nop + .line 54,54 : 13,74 '' + IL_00e9: ldarg.0 + IL_00ea: ldc.r4 6. + IL_00ef: ldc.r4 13. + IL_00f4: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_00f9: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + IL_00fe: nop + .line 55,55 : 13,74 '' + IL_00ff: ldarg.0 + IL_0100: ldc.i4.1 + IL_0101: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + IL_0106: nop + .line 56,56 : 13,66 '' + IL_0107: ldarg.0 + IL_0108: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_LightSteelBlue() + IL_010d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0112: nop + .line 57,57 : 13,65 '' + IL_0113: ldarg.0 + IL_0114: ldc.i4 0xc8 + IL_0119: ldc.i4.s 100 + IL_011b: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0120: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_ClientSize(valuetype [System.Drawing]System.Drawing.Size) + IL_0125: nop + .line 58,58 : 13,37 '' + IL_0126: ldarg.0 + IL_0127: ldc.i4.0 + IL_0128: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_ControlBox(bool) + IL_012d: nop + .line 59,59 : 13,52 '' + IL_012e: ldarg.0 + IL_012f: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0134: ldarg.0 + IL_0135: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_013a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_013f: nop + .line 60,60 : 13,67 '' + IL_0140: ldarg.0 + IL_0141: call class [System.Windows.Forms]System.Windows.Forms.Cursor [System.Windows.Forms]System.Windows.Forms.Cursors::get_WaitCursor() + IL_0146: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Cursor(class [System.Windows.Forms]System.Windows.Forms.Cursor) + IL_014b: nop + .line 61,61 : 13,147 '' + IL_014c: ldarg.0 + IL_014d: ldstr "Tahoma" + IL_0152: ldc.r4 8. + IL_0157: ldc.i4.0 + IL_0158: ldc.i4.3 + IL_0159: ldc.i4 0xee + IL_015e: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0163: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_0168: nop + .line 62,62 : 13,78 '' + IL_0169: ldarg.0 + IL_016a: ldc.i4.0 + IL_016b: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_FormBorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FormBorderStyle) + IL_0170: nop + .line 63,63 : 13,38 '' + IL_0171: ldarg.0 + IL_0172: ldc.i4.0 + IL_0173: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MaximizeBox(bool) + IL_0178: nop + .line 64,64 : 13,38 '' + IL_0179: ldarg.0 + IL_017a: ldc.i4.0 + IL_017b: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MinimizeBox(bool) + IL_0180: nop + .line 65,65 : 13,48 '' + IL_0181: ldarg.0 + IL_0182: ldstr "FusionProgressDialog" + IL_0187: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_018c: nop + .line 66,66 : 13,33 '' + IL_018d: ldarg.0 + IL_018e: ldc.r8 0.75 + IL_0197: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_Opacity(float64) + IL_019c: nop + .line 67,67 : 13,40 '' + IL_019d: ldarg.0 + IL_019e: ldc.i4.0 + IL_019f: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_ShowInTaskbar(bool) + IL_01a4: nop + .line 68,68 : 13,86 '' + IL_01a5: ldarg.0 + IL_01a6: ldc.i4.1 + IL_01a7: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_StartPosition(valuetype [System.Windows.Forms]System.Windows.Forms.FormStartPosition) + IL_01ac: nop + .line 69,69 : 13,43 '' + IL_01ad: ldarg.0 + IL_01ae: ldstr "Loading plugins" + IL_01b3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_01b8: nop + .line 70,70 : 13,72 '' + IL_01b9: ldarg.0 + IL_01ba: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_LightSteelBlue() + IL_01bf: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_TransparencyKey(valuetype [System.Drawing]System.Drawing.Color) + IL_01c4: nop + .line 71,71 : 13,89 '' + IL_01c5: ldarg.0 + IL_01c6: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_01cb: callvirt instance void [System]System.ComponentModel.ISupportInitialize::EndInit() + IL_01d0: nop + .line 72,72 : 13,38 '' + IL_01d1: ldarg.0 + IL_01d2: ldc.i4.0 + IL_01d3: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_01d8: nop + .line 73,73 : 13,34 '' + IL_01d9: ldarg.0 + IL_01da: call instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + IL_01df: nop + .line 75,75 : 9,10 '' + IL_01e0: ret + } // end of method FusionProgressDialog::InitializeComponent + + .method private hidebysig static void 'b__0'(object delegateObj) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 40 (0x28) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog dlg, + [1] bool CS$4$0000) + .line 61,61 : 13,14 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\FusionProgressDialog.cs' + IL_0000: nop + .line 62,62 : 24,104 '' + IL_0001: ldarg.0 + IL_0002: castclass Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate + IL_0007: newobj instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::.ctor(class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate) + IL_000c: stloc.0 + .line 63,63 : 21,38 '' + .try + { + IL_000d: ldloc.0 + IL_000e: callvirt instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.Form::ShowDialog() + IL_0013: pop + IL_0014: leave.s IL_0026 + + } // end .try + finally + { + IL_0016: ldloc.0 + IL_0017: ldnull + IL_0018: ceq + IL_001a: stloc.1 + IL_001b: ldloc.1 + IL_001c: brtrue.s IL_0025 + + IL_001e: ldloc.0 + IL_001f: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0024: nop + IL_0025: endfinally + } // end handler + IL_0026: nop + IL_0027: ret + } // end of method FusionProgressDialog::'b__0' + +} // end of class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.InformationDialog + extends [System.Windows.Forms]System.Windows.Forms.Form +{ + .field public static literal string NewLineToken = "[n]" + .field private class [System]System.ComponentModel.IContainer components + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader DialogHeader + .field private class [System.Windows.Forms]System.Windows.Forms.Label InformationLABEL + .field private class [System.Windows.Forms]System.Windows.Forms.Label CaptionLABEL + .field private class [System.Windows.Forms]System.Windows.Forms.Button OkBTN + .field private class [System.Windows.Forms]System.Windows.Forms.PictureBox BackgroundPBOX + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 8,8 : 9,68 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\InformationDialog.Designer.cs' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: stfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.InformationDialog::components + .line 33,33 : 9,36 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\InformationDialog.cs' + IL_0007: ldarg.0 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Form::.ctor() + IL_000d: nop + .line 34,34 : 9,10 '' + IL_000e: nop + .line 35,35 : 13,35 '' + IL_000f: ldarg.0 + IL_0010: call instance void Virtuoso.Miranda.Plugins.Forms.InformationDialog::InitializeComponent() + IL_0015: nop + .line 36,36 : 9,10 '' + IL_0016: nop + IL_0017: ret + } // end of method InformationDialog::.ctor + + .method public hidebysig static void PresentModal(string caption, + string information, + class [System.Drawing]System.Drawing.Image icon) cil managed + { + // Code size 156 (0x9c) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Forms.InformationDialog dlg, + [1] bool CS$4$0000, + [2] string CS$0$0001) + .line 39,39 : 9,10 '' + IL_0000: nop + .line 40,40 : 13,47 '' + IL_0001: ldarg.0 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.1 + IL_000b: ldloc.1 + IL_000c: brtrue.s IL_0019 + + .line 41,41 : 17,60 '' + IL_000e: ldstr "caption" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 43,43 : 13,51 '' + IL_0019: ldarg.1 + IL_001a: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_001f: ldc.i4.0 + IL_0020: ceq + IL_0022: stloc.1 + IL_0023: ldloc.1 + IL_0024: brtrue.s IL_0031 + + .line 44,44 : 17,64 '' + IL_0026: ldstr "information" + IL_002b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0030: throw + + .line 46,46 : 20,67 '' + IL_0031: newobj instance void Virtuoso.Miranda.Plugins.Forms.InformationDialog::.ctor() + IL_0036: stloc.0 + .line 47,47 : 13,14 '' + .try + { + IL_0037: nop + .line 48,48 : 17,66 '' + IL_0038: ldloc.0 + IL_0039: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_003e: ldloc.0 + IL_003f: ldarg.0 + IL_0040: dup + IL_0041: stloc.2 + IL_0042: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0047: nop + IL_0048: ldloc.2 + IL_0049: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + IL_004e: nop + .line 49,49 : 17,100 '' + IL_004f: ldloc.0 + IL_0050: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_0055: ldarg.1 + IL_0056: ldstr "[n]" + IL_005b: call string [mscorlib]System.Environment::get_NewLine() + IL_0060: callvirt instance string [mscorlib]System.String::Replace(string, + string) + IL_0065: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_006a: nop + .line 51,51 : 17,34 '' + IL_006b: ldarg.2 + IL_006c: ldnull + IL_006d: ceq + IL_006f: stloc.1 + IL_0070: ldloc.1 + IL_0071: brtrue.s IL_0080 + + .line 52,52 : 21,51 '' + IL_0073: ldloc.0 + IL_0074: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0079: ldarg.2 + IL_007a: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + IL_007f: nop + .line 54,54 : 17,34 '' + IL_0080: ldloc.0 + IL_0081: callvirt instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.Form::ShowDialog() + IL_0086: pop + .line 55,55 : 13,14 '' + IL_0087: nop + IL_0088: leave.s IL_009a + + } // end .try + finally + { + IL_008a: ldloc.0 + IL_008b: ldnull + IL_008c: ceq + IL_008e: stloc.1 + IL_008f: ldloc.1 + IL_0090: brtrue.s IL_0099 + + IL_0092: ldloc.0 + IL_0093: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0098: nop + IL_0099: endfinally + } // end handler + IL_009a: nop + .line 56,56 : 9,10 '' + IL_009b: ret + } // end of method InformationDialog::PresentModal + + .method private hidebysig instance void + InformationDialog_Shown(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 59,59 : 9,10 '' + IL_0000: nop + .line 60,60 : 13,42 '' + IL_0001: call class [System]System.Media.SystemSound [System]System.Media.SystemSounds::get_Asterisk() + IL_0006: callvirt instance void [System]System.Media.SystemSound::Play() + IL_000b: nop + .line 61,61 : 9,10 '' + IL_000c: ret + } // end of method InformationDialog::InformationDialog_Shown + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 44 (0x2c) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 15,15 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\InformationDialog.Designer.cs' + IL_0000: nop + .line 16,16 : 13,51 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_000f + + IL_0004: ldarg.0 + IL_0005: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.InformationDialog::components + IL_000a: ldnull + IL_000b: ceq + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.1 + IL_0010: nop + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0023 + + .line 17,17 : 13,14 '' + IL_0015: nop + .line 18,18 : 17,38 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.InformationDialog::components + IL_001c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0021: nop + .line 19,19 : 13,14 '' + IL_0022: nop + .line 20,20 : 13,37 '' + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Dispose(bool) + IL_002a: nop + .line 21,21 : 9,10 '' + IL_002b: ret + } // end of method InformationDialog::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 1255 (0x4e7) + .maxstack 6 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources) + .line 30,30 : 9,10 '' + IL_0000: nop + .line 31,31 : 13,150 '' + IL_0001: ldtoken Virtuoso.Miranda.Plugins.Forms.InformationDialog + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_0010: stloc.0 + .line 32,32 : 13,70 '' + IL_0011: ldarg.0 + IL_0012: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0017: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + .line 33,33 : 13,60 '' + IL_001c: ldarg.0 + IL_001d: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0022: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + .line 34,34 : 13,112 '' + IL_0027: ldarg.0 + IL_0028: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor() + IL_002d: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + .line 35,35 : 13,66 '' + IL_0032: ldarg.0 + IL_0033: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0038: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + .line 36,36 : 13,73 '' + IL_003d: ldarg.0 + IL_003e: newobj instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::.ctor() + IL_0043: stfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + .line 37,37 : 13,47 '' + IL_0048: ldarg.0 + IL_0049: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_004e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0053: nop + .line 38,38 : 13,91 '' + IL_0054: ldarg.0 + IL_0055: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_005a: callvirt instance void [System]System.ComponentModel.ISupportInitialize::BeginInit() + IL_005f: nop + .line 39,39 : 13,34 '' + IL_0060: ldarg.0 + IL_0061: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_0066: nop + .line 43,43 : 13,80 '' + IL_0067: ldarg.0 + IL_0068: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_006d: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0072: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0077: nop + .line 44,44 : 13,86 '' + IL_0078: ldarg.0 + IL_0079: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_007e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_WindowText() + IL_0083: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0088: nop + .line 45,45 : 13,78 '' + IL_0089: ldarg.0 + IL_008a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_008f: ldc.i4.s 9 + IL_0091: ldc.i4.s 56 + IL_0093: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0098: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_009d: nop + .line 46,46 : 13,61 '' + IL_009e: ldarg.0 + IL_009f: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_00a4: ldstr "InformationLABEL" + IL_00a9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_00ae: nop + .line 47,47 : 13,76 '' + IL_00af: ldarg.0 + IL_00b0: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_00b5: ldc.i4 0x1ae + IL_00ba: ldc.i4 0x9b + IL_00bf: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00c4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_00c9: nop + .line 48,48 : 13,48 '' + IL_00ca: ldarg.0 + IL_00cb: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_00d0: ldc.i4.2 + IL_00d1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_00d6: nop + .line 49,49 : 13,56 '' + IL_00d7: ldarg.0 + IL_00d8: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_00dd: ldstr "Information" + IL_00e2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_00e7: nop + .line 53,53 : 13,80 '' + IL_00e8: ldarg.0 + IL_00e9: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_00ee: ldc.i4.2 + IL_00ef: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Button::set_DialogResult(valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult) + IL_00f4: nop + .line 54,54 : 13,69 '' + IL_00f5: ldarg.0 + IL_00f6: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_00fb: ldc.i4.s 12 + IL_00fd: ldc.i4 0xdc + IL_0102: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0107: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_010c: nop + .line 55,55 : 13,39 '' + IL_010d: ldarg.0 + IL_010e: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_0113: ldstr "OkBTN" + IL_0118: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_011d: nop + .line 56,56 : 13,63 '' + IL_011e: ldarg.0 + IL_011f: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_0124: ldc.i4.s 75 + IL_0126: ldc.i4.s 23 + IL_0128: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_012d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0132: nop + .line 57,57 : 13,37 '' + IL_0133: ldarg.0 + IL_0134: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_0139: ldc.i4.0 + IL_013a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_013f: nop + .line 58,58 : 13,36 '' + IL_0140: ldarg.0 + IL_0141: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_0146: ldstr "OK" + IL_014b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0150: nop + .line 59,59 : 13,55 '' + IL_0151: ldarg.0 + IL_0152: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_0157: ldc.i4.1 + IL_0158: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + IL_015d: nop + .line 63,63 : 13,76 '' + IL_015e: ldarg.0 + IL_015f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0164: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0169: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_016e: nop + .line 64,64 : 13,81 '' + IL_016f: ldarg.0 + IL_0170: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0175: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_ActiveCaption() + IL_017a: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + IL_017f: nop + .line 65,65 : 13,63 '' + IL_0180: ldarg.0 + IL_0181: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0186: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_018b: ldarg.0 + IL_018c: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_0191: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0196: nop + .line 66,66 : 13,73 '' + IL_0197: ldarg.0 + IL_0198: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_019d: ldc.i4.1 + IL_019e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_01a3: nop + .line 67,67 : 13,163 '' + IL_01a4: ldarg.0 + IL_01a5: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_01aa: ldstr "Tahoma" + IL_01af: ldc.r4 8.25 + IL_01b4: ldc.i4.0 + IL_01b5: ldc.i4.3 + IL_01b6: ldc.i4 0xee + IL_01bb: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_01c0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_01c5: nop + .line 68,68 : 13,163 '' + IL_01c6: ldarg.0 + IL_01c7: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_01cc: ldstr "Tahoma" + IL_01d1: ldc.r4 8. + IL_01d6: ldc.i4.1 + IL_01d7: ldc.i4.3 + IL_01d8: ldc.i4 0xee + IL_01dd: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_01e2: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + IL_01e7: nop + .line 69,69 : 13,54 '' + IL_01e8: ldarg.0 + IL_01e9: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_01ee: ldstr "Caption" + IL_01f3: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + IL_01f8: nop + .line 70,70 : 13,108 '' + IL_01f9: ldarg.0 + IL_01fa: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_01ff: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_232_32x32() + IL_0204: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0209: nop + .line 71,71 : 13,73 '' + IL_020a: ldarg.0 + IL_020b: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0210: ldc.i4.0 + IL_0211: ldc.i4.0 + IL_0212: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0217: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_021c: nop + .line 72,72 : 13,78 '' + IL_021d: ldarg.0 + IL_021e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0223: ldc.i4 0x12c + IL_0228: ldc.i4.s 40 + IL_022a: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_022f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_0234: nop + .line 73,73 : 13,53 '' + IL_0235: ldarg.0 + IL_0236: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_023b: ldstr "DialogHeader" + IL_0240: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0245: nop + .line 74,74 : 13,71 '' + IL_0246: ldarg.0 + IL_0247: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_024c: ldc.i4 0x1c3 + IL_0251: ldc.i4.s 53 + IL_0253: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0258: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_025d: nop + .line 75,75 : 13,44 '' + IL_025e: ldarg.0 + IL_025f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0264: ldc.i4.1 + IL_0265: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_026a: nop + .line 79,79 : 13,47 '' + IL_026b: ldarg.0 + IL_026c: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_0271: ldc.i4.1 + IL_0272: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_0277: nop + .line 80,80 : 13,76 '' + IL_0278: ldarg.0 + IL_0279: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_027e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0283: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_0288: nop + .line 81,81 : 13,160 '' + IL_0289: ldarg.0 + IL_028a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_028f: ldstr "Tahoma" + IL_0294: ldc.r4 8.25 + IL_0299: ldc.i4.1 + IL_029a: ldc.i4.3 + IL_029b: ldc.i4 0xee + IL_02a0: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_02a5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_02aa: nop + .line 82,82 : 13,75 '' + IL_02ab: ldarg.0 + IL_02ac: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_02b1: ldc.i4.s 12 + IL_02b3: ldc.i4.s 23 + IL_02b5: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_02ba: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_02bf: nop + .line 83,83 : 13,53 '' + IL_02c0: ldarg.0 + IL_02c1: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_02c6: ldstr "CaptionLABEL" + IL_02cb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_02d0: nop + .line 84,84 : 13,70 '' + IL_02d1: ldarg.0 + IL_02d2: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_02d7: ldc.i4.s 59 + IL_02d9: ldc.i4.s 13 + IL_02db: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_02e0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_02e5: nop + .line 85,85 : 13,44 '' + IL_02e6: ldarg.0 + IL_02e7: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_02ec: ldc.i4.0 + IL_02ed: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_02f2: nop + .line 86,86 : 13,50 '' + IL_02f3: ldarg.0 + IL_02f4: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_02f9: ldstr "(caption)" + IL_02fe: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0303: nop + .line 90,90 : 13,166 '' + IL_0304: ldarg.0 + IL_0305: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_030a: ldc.i4.s 10 + IL_030c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Anchor(valuetype [System.Windows.Forms]System.Windows.Forms.AnchorStyles) + IL_0311: nop + .line 91,91 : 13,111 '' + IL_0312: ldarg.0 + IL_0313: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_0318: ldloc.0 + IL_0319: ldstr "BackgroundPBOX.Image" + IL_031e: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0323: castclass [System.Drawing]System.Drawing.Image + IL_0328: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + IL_032d: nop + .line 92,92 : 13,79 '' + IL_032e: ldarg.0 + IL_032f: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_0334: ldc.i4 0x14a + IL_0339: ldc.i4.s 127 + IL_033b: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0340: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0345: nop + .line 93,93 : 13,57 '' + IL_0346: ldarg.0 + IL_0347: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_034c: ldstr "BackgroundPBOX" + IL_0351: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0356: nop + .line 94,94 : 13,74 '' + IL_0357: ldarg.0 + IL_0358: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_035d: ldc.i4.s 120 + IL_035f: ldc.i4 0x81 + IL_0364: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0369: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_036e: nop + .line 95,95 : 13,93 '' + IL_036f: ldarg.0 + IL_0370: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_0375: ldc.i4.2 + IL_0376: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_SizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.PictureBoxSizeMode) + IL_037b: nop + .line 96,96 : 13,46 '' + IL_037c: ldarg.0 + IL_037d: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_0382: ldc.i4.3 + IL_0383: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabIndex(int32) + IL_0388: nop + .line 97,97 : 13,49 '' + IL_0389: ldarg.0 + IL_038a: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_038f: ldc.i4.0 + IL_0390: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabStop(bool) + IL_0395: nop + .line 98,98 : 13,49 '' + IL_0396: ldarg.0 + IL_0397: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_039c: ldc.i4.0 + IL_039d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Visible(bool) + IL_03a2: nop + .line 102,102 : 13,74 '' + IL_03a3: ldarg.0 + IL_03a4: ldc.r4 6. + IL_03a9: ldc.r4 13. + IL_03ae: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_03b3: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + IL_03b8: nop + .line 103,103 : 13,74 '' + IL_03b9: ldarg.0 + IL_03ba: ldc.i4.1 + IL_03bb: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + IL_03c0: nop + .line 104,104 : 13,65 '' + IL_03c1: ldarg.0 + IL_03c2: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Window() + IL_03c7: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_03cc: nop + .line 105,105 : 13,65 '' + IL_03cd: ldarg.0 + IL_03ce: ldc.i4 0x1c3 + IL_03d3: ldc.i4 0xff + IL_03d8: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_03dd: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_ClientSize(valuetype [System.Drawing]System.Drawing.Size) + IL_03e2: nop + .line 106,106 : 13,52 '' + IL_03e3: ldarg.0 + IL_03e4: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03e9: ldarg.0 + IL_03ea: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_03ef: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_03f4: nop + .line 107,107 : 13,43 '' + IL_03f5: ldarg.0 + IL_03f6: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03fb: ldarg.0 + IL_03fc: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_0401: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0406: nop + .line 108,108 : 13,54 '' + IL_0407: ldarg.0 + IL_0408: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_040d: ldarg.0 + IL_040e: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_0413: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0418: nop + .line 109,109 : 13,50 '' + IL_0419: ldarg.0 + IL_041a: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_041f: ldarg.0 + IL_0420: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0425: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_042a: nop + .line 110,110 : 13,147 '' + IL_042b: ldarg.0 + IL_042c: ldstr "Tahoma" + IL_0431: ldc.r4 8. + IL_0436: ldc.i4.0 + IL_0437: ldc.i4.3 + IL_0438: ldc.i4 0xee + IL_043d: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0442: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_0447: nop + .line 111,111 : 13,85 '' + IL_0448: ldarg.0 + IL_0449: ldc.i4.3 + IL_044a: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_FormBorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FormBorderStyle) + IL_044f: nop + .line 112,112 : 13,84 '' + IL_0450: ldarg.0 + IL_0451: ldloc.0 + IL_0452: ldstr "$this.Icon" + IL_0457: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_045c: castclass [System.Drawing]System.Drawing.Icon + IL_0461: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_Icon(class [System.Drawing]System.Drawing.Icon) + IL_0466: nop + .line 113,113 : 13,38 '' + IL_0467: ldarg.0 + IL_0468: ldc.i4.0 + IL_0469: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MaximizeBox(bool) + IL_046e: nop + .line 114,114 : 13,38 '' + IL_046f: ldarg.0 + IL_0470: ldc.i4.0 + IL_0471: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MinimizeBox(bool) + IL_0476: nop + .line 115,115 : 13,45 '' + IL_0477: ldarg.0 + IL_0478: ldstr "InformationDialog" + IL_047d: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0482: nop + .line 116,116 : 13,86 '' + IL_0483: ldarg.0 + IL_0484: ldc.i4.1 + IL_0485: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_StartPosition(valuetype [System.Windows.Forms]System.Windows.Forms.FormStartPosition) + IL_048a: nop + .line 117,117 : 13,39 '' + IL_048b: ldarg.0 + IL_048c: ldstr "Information" + IL_0491: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0496: nop + .line 118,118 : 13,33 '' + IL_0497: ldarg.0 + IL_0498: ldc.i4.1 + IL_0499: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_TopMost(bool) + IL_049e: nop + .line 119,119 : 13,81 '' + IL_049f: ldarg.0 + IL_04a0: ldarg.0 + IL_04a1: ldftn instance void Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationDialog_Shown(object, + class [mscorlib]System.EventArgs) + IL_04a7: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_04ac: call instance void [System.Windows.Forms]System.Windows.Forms.Form::add_Shown(class [mscorlib]System.EventHandler) + IL_04b1: nop + .line 120,120 : 13,51 '' + IL_04b2: ldarg.0 + IL_04b3: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_04b8: ldc.i4.0 + IL_04b9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_04be: nop + .line 121,121 : 13,47 '' + IL_04bf: ldarg.0 + IL_04c0: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_04c5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + IL_04ca: nop + .line 122,122 : 13,89 '' + IL_04cb: ldarg.0 + IL_04cc: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_04d1: callvirt instance void [System]System.ComponentModel.ISupportInitialize::EndInit() + IL_04d6: nop + .line 123,123 : 13,38 '' + IL_04d7: ldarg.0 + IL_04d8: ldc.i4.0 + IL_04d9: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_04de: nop + .line 124,124 : 13,34 '' + IL_04df: ldarg.0 + IL_04e0: call instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + IL_04e5: nop + .line 126,126 : 9,10 '' + IL_04e6: ret + } // end of method InformationDialog::InitializeComponent + +} // end of class Virtuoso.Miranda.Plugins.Forms.InformationDialog + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Forms.ISynchronizedSubscriber +{ + .method public hidebysig newslot specialname abstract virtual + instance class [mscorlib]System.Threading.SynchronizationContext + get_SyncContext() cil managed + { + } // end of method ISynchronizedSubscriber::get_SyncContext + + .property instance class [mscorlib]System.Threading.SynchronizationContext + SyncContext() + { + .get instance class [mscorlib]System.Threading.SynchronizationContext Virtuoso.Miranda.Plugins.Forms.ISynchronizedSubscriber::get_SyncContext() + } // end of property ISynchronizedSubscriber::SyncContext +} // end of class Virtuoso.Miranda.Plugins.Forms.ISynchronizedSubscriber + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags None = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags TranslateNonReadOnlyEditControls = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags NoTitleTranslation = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.LocalizableDialog + extends Virtuoso.Miranda.Plugins.Forms.SingletonDialog +{ + .field private static literal string MS_LANGPACK_TRANSLATEDIALOG = "LangPack/TranslateDialog" + .field private valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags translateFlags + .field private initonly class Virtuoso.Miranda.Plugins.Collections.ControlCollection nonLocalizableControls + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.ControlCollection + get_NonLocalizableControls() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.ControlCollection CS$1$0000) + .line 50,50 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\LocalizableDialog.cs' + IL_0000: nop + .line 50,50 : 19,49 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.ControlCollection Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::nonLocalizableControls + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 50,50 : 50,51 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method LocalizableDialog::get_NonLocalizableControls + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags + get_TranslateFlags() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags CS$1$0000) + .line 55,55 : 17,18 '' + IL_0000: nop + .line 55,55 : 19,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::translateFlags + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 55,55 : 42,43 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method LocalizableDialog::get_TranslateFlags + + .method public hidebysig specialname instance void + set_TranslateFlags(valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 56,56 : 17,18 '' + IL_0000: nop + .line 56,56 : 19,42 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::translateFlags + .line 56,56 : 43,44 '' + IL_0008: ret + } // end of method LocalizableDialog::set_TranslateFlags + + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 63,63 : 9,78 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldc.i4.0 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags) + IL_0008: nop + .line 63,63 : 79,80 '' + IL_0009: nop + .line 63,63 : 81,82 '' + IL_000a: nop + IL_000b: ret + } // end of method LocalizableDialog::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags 'flags') cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 65,65 : 9,84 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldarg.1 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags) + IL_0008: nop + .line 65,65 : 85,86 '' + IL_0009: nop + .line 65,65 : 87,88 '' + IL_000a: nop + IL_000b: ret + } // end of method LocalizableDialog::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(string dialogName, + valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags 'flags') cil managed + { + // Code size 29 (0x1d) + .maxstack 8 + .line 67,67 : 9,102 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::.ctor(string) + IL_0007: nop + .line 68,68 : 9,10 '' + IL_0008: nop + .line 69,69 : 13,36 '' + IL_0009: ldarg.0 + IL_000a: ldarg.2 + IL_000b: stfld valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::translateFlags + .line 70,70 : 13,74 '' + IL_0010: ldarg.0 + IL_0011: newobj instance void Virtuoso.Miranda.Plugins.Collections.ControlCollection::.ctor() + IL_0016: stfld class Virtuoso.Miranda.Plugins.Collections.ControlCollection Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::nonLocalizableControls + .line 71,71 : 9,10 '' + IL_001b: nop + IL_001c: ret + } // end of method LocalizableDialog::.ctor + + .method family hidebysig virtual instance void + OnLoad(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 201 (0xc9) + .maxstack 2 + .locals init ([0] class [System.Windows.Forms]System.Windows.Forms.Control control, + [1] class [System.Windows.Forms]System.Windows.Forms.TextBoxBase editCtrl, + [2] bool CS$4$0000, + [3] class [mscorlib]System.Collections.IEnumerator CS$5$0001, + [4] class [mscorlib]System.IDisposable CS$0$0002) + .line 78,78 : 9,10 '' + IL_0000: nop + .line 79,79 : 13,29 '' + IL_0001: ldarg.0 + IL_0002: call instance bool [System]System.ComponentModel.Component::get_DesignMode() + IL_0007: stloc.2 + IL_0008: ldloc.2 + IL_0009: brtrue IL_00c0 + + .line 80,80 : 13,14 '' + IL_000e: nop + .line 81,81 : 17,123 '' + IL_000f: ldarg.0 + IL_0010: ldfld valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::translateFlags + IL_0015: ldc.i4.2 + IL_0016: and + IL_0017: ldc.i4.2 + IL_0018: ceq + IL_001a: stloc.2 + IL_001b: ldloc.2 + IL_001c: brtrue.s IL_0030 + + .line 82,82 : 21,63 '' + IL_001e: ldarg.0 + IL_001f: ldarg.0 + IL_0020: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_0025: call string Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack::TranslateString(string) + IL_002a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_002f: nop + .line 84,84 : 17,24 '' + IL_0030: nop + .line 84,84 : 45,53 '' + IL_0031: ldarg.0 + IL_0032: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0037: callvirt instance class [mscorlib]System.Collections.IEnumerator [System.Windows.Forms]System.Windows.Forms.Layout.ArrangedElementCollection::GetEnumerator() + IL_003c: stloc.3 + .try + { + IL_003d: br.s IL_0098 + + .line 84,84 : 26,41 '' + IL_003f: ldloc.3 + IL_0040: callvirt instance object [mscorlib]System.Collections.IEnumerator::get_Current() + IL_0045: castclass [System.Windows.Forms]System.Windows.Forms.Control + IL_004a: stloc.0 + .line 85,85 : 17,18 '' + IL_004b: nop + .line 86,86 : 21,67 '' + IL_004c: ldloc.0 + IL_004d: isinst [System.Windows.Forms]System.Windows.Forms.TextBoxBase + IL_0052: stloc.1 + .line 88,88 : 21,67 '' + IL_0053: ldarg.0 + IL_0054: ldfld class Virtuoso.Miranda.Plugins.Collections.ControlCollection Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::nonLocalizableControls + IL_0059: ldloc.0 + IL_005a: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Contains(!0) + IL_005f: stloc.2 + IL_0060: ldloc.2 + IL_0061: brtrue.s IL_0097 + + .line 89,89 : 21,22 '' + IL_0063: nop + .line 90,90 : 25,201 '' + IL_0064: ldloc.1 + IL_0065: brfalse.s IL_007c + + IL_0067: ldloc.1 + IL_0068: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.TextBoxBase::get_ReadOnly() + IL_006d: brtrue.s IL_007c + + IL_006f: ldarg.0 + IL_0070: ldfld valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::translateFlags + IL_0075: ldc.i4.1 + IL_0076: and + IL_0077: ldc.i4.1 + IL_0078: ceq + IL_007a: br.s IL_007d + + IL_007c: ldc.i4.1 + IL_007d: nop + IL_007e: stloc.2 + IL_007f: ldloc.2 + IL_0080: brtrue.s IL_0084 + + .line 91,91 : 29,38 '' + IL_0082: br.s IL_0098 + + .line 93,93 : 25,83 '' + IL_0084: ldloc.0 + IL_0085: ldloc.0 + IL_0086: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_008b: call string Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack::TranslateString(string) + IL_0090: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0095: nop + .line 94,94 : 21,22 '' + IL_0096: nop + .line 95,95 : 17,18 '' + IL_0097: nop + .line 84,84 : 42,44 '' + IL_0098: ldloc.3 + IL_0099: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_009e: stloc.2 + IL_009f: ldloc.2 + IL_00a0: brtrue.s IL_003f + + IL_00a2: leave.s IL_00be + + } // end .try + finally + { + IL_00a4: ldloc.3 + IL_00a5: isinst [mscorlib]System.IDisposable + IL_00aa: stloc.s CS$0$0002 + IL_00ac: ldloc.s CS$0$0002 + IL_00ae: ldnull + IL_00af: ceq + IL_00b1: stloc.2 + IL_00b2: ldloc.2 + IL_00b3: brtrue.s IL_00bd + + IL_00b5: ldloc.s CS$0$0002 + IL_00b7: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_00bc: nop + IL_00bd: endfinally + } // end handler + IL_00be: nop + .line 96,96 : 13,14 '' + IL_00bf: nop + .line 98,98 : 13,28 '' + IL_00c0: ldarg.0 + IL_00c1: ldarg.1 + IL_00c2: call instance void [System.Windows.Forms]System.Windows.Forms.Form::OnLoad(class [mscorlib]System.EventArgs) + IL_00c7: nop + .line 99,99 : 9,10 '' + IL_00c8: ret + } // end of method LocalizableDialog::OnLoad + + .property instance class Virtuoso.Miranda.Plugins.Collections.ControlCollection + NonLocalizableControls() + { + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .get instance class Virtuoso.Miranda.Plugins.Collections.ControlCollection Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::get_NonLocalizableControls() + } // end of property LocalizableDialog::NonLocalizableControls + .property instance valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags + TranslateFlags() + { + .set instance void Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::set_TranslateFlags(valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags) + .get instance valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::get_TranslateFlags() + } // end of property LocalizableDialog::TranslateFlags +} // end of class Virtuoso.Miranda.Plugins.Forms.LocalizableDialog + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute + extends [mscorlib]System.Attribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 00 01 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ........T..Allow + 4D 75 6C 74 69 70 6C 65 00 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 00 ) // rited. + .field private string friendlyName + .method public hidebysig specialname rtspecialname + instance void .ctor(string name) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 37,37 : 9,59 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\EnumValueFriendlyNameAttribute.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + IL_0006: nop + .line 38,38 : 9,10 '' + IL_0007: nop + .line 39,39 : 13,38 '' + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: stfld string Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::friendlyName + .line 40,40 : 9,10 '' + IL_000f: nop + IL_0010: ret + } // end of method EnumValueFriendlyNameAttribute::.ctor + + .method public hidebysig specialname instance string + get_FriendlyName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 48,48 : 17,18 '' + IL_0000: nop + .line 48,48 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::friendlyName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 48,48 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method EnumValueFriendlyNameAttribute::get_FriendlyName + + .method public hidebysig specialname instance void + set_FriendlyName(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 49,49 : 17,18 '' + IL_0000: nop + .line 49,49 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::friendlyName + .line 49,49 : 41,42 '' + IL_0008: ret + } // end of method EnumValueFriendlyNameAttribute::set_FriendlyName + + .method public hidebysig static class [mscorlib]System.Collections.Generic.Dictionary`2 + GetFriendlyNames() cil managed + { + // Code size 224 (0xe0) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Type enumType, + [1] class [mscorlib]System.Type thisType, + [2] class [mscorlib]System.Collections.Generic.Dictionary`2 results, + [3] class [mscorlib]System.Reflection.FieldInfo 'field', + [4] class Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute[] names, + [5] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$1$0000, + [6] bool CS$4$0001, + [7] class [mscorlib]System.Reflection.FieldInfo[] CS$6$0002, + [8] int32 CS$7$0003) + .line 57,57 : 9,10 '' + IL_0000: nop + .line 58,58 : 13,43 '' + IL_0001: ldtoken !!TEnum + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: stloc.0 + .line 60,60 : 13,34 '' + IL_000c: ldloc.0 + IL_000d: callvirt instance bool [mscorlib]System.Type::get_IsEnum() + IL_0012: stloc.s CS$4$0001 + IL_0014: ldloc.s CS$4$0001 + IL_0016: brtrue.s IL_0028 + + .line 61,61 : 17,86 '' + IL_0018: ldstr "TEnum is not an enumeration." + IL_001d: ldstr "TEnum" + IL_0022: newobj instance void [mscorlib]System.ArgumentException::.ctor(string, + string) + IL_0027: throw + + .line 63,63 : 13,68 '' + IL_0028: ldtoken Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute + IL_002d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0032: stloc.1 + .line 64,64 : 13,82 '' + IL_0033: ldc.i4.1 + IL_0034: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0039: stloc.2 + .line 66,66 : 13,20 '' + IL_003a: nop + .line 66,66 : 41,61 '' + IL_003b: ldloc.0 + IL_003c: callvirt instance class [mscorlib]System.Reflection.FieldInfo[] [mscorlib]System.Type::GetFields() + IL_0041: stloc.s CS$6$0002 + IL_0043: ldc.i4.0 + IL_0044: stloc.s CS$7$0003 + IL_0046: br.s IL_00c7 + + .line 66,66 : 22,37 '' + IL_0048: ldloc.s CS$6$0002 + IL_004a: ldloc.s CS$7$0003 + IL_004c: ldelem.ref + IL_004d: stloc.3 + .line 67,67 : 13,14 '' + IL_004e: nop + .line 68,68 : 17,93 '' + IL_004f: ldloc.3 + IL_0050: callvirt instance valuetype [mscorlib]System.Reflection.FieldAttributes [mscorlib]System.Reflection.FieldInfo::get_Attributes() + IL_0055: ldc.i4.s 64 + IL_0057: and + IL_0058: ldc.i4.s 64 + IL_005a: ceq + IL_005c: stloc.s CS$4$0001 + IL_005e: ldloc.s CS$4$0001 + IL_0060: brtrue.s IL_0064 + + .line 69,69 : 21,30 '' + IL_0062: br.s IL_00c1 + + .line 71,71 : 17,135 '' + IL_0064: ldloc.3 + IL_0065: ldloc.1 + IL_0066: ldc.i4.0 + IL_0067: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_006c: castclass class Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute[] + IL_0071: stloc.s names + .line 73,73 : 17,55 '' + IL_0073: ldloc.s names + IL_0075: brfalse.s IL_0083 + + IL_0077: ldloc.s names + IL_0079: ldlen + IL_007a: conv.i4 + IL_007b: ldc.i4.0 + IL_007c: cgt + IL_007e: ldc.i4.0 + IL_007f: ceq + IL_0081: br.s IL_0084 + + IL_0083: ldc.i4.1 + IL_0084: nop + IL_0085: stloc.s CS$4$0001 + IL_0087: ldloc.s CS$4$0001 + IL_0089: brtrue.s IL_00a8 + + .line 74,74 : 21,92 '' + IL_008b: ldloc.2 + IL_008c: ldloc.3 + IL_008d: callvirt instance object [mscorlib]System.Reflection.FieldInfo::GetRawConstantValue() + IL_0092: unbox.any !!TEnum + IL_0097: ldloc.s names + IL_0099: ldc.i4.0 + IL_009a: ldelem.ref + IL_009b: callvirt instance string Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::get_FriendlyName() + IL_00a0: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, + !1) + IL_00a5: nop + IL_00a6: br.s IL_00c0 + + .line 76,76 : 21,81 '' + IL_00a8: ldloc.2 + IL_00a9: ldloc.3 + IL_00aa: callvirt instance object [mscorlib]System.Reflection.FieldInfo::GetRawConstantValue() + IL_00af: unbox.any !!TEnum + IL_00b4: ldloc.3 + IL_00b5: callvirt instance string [mscorlib]System.Reflection.MemberInfo::get_Name() + IL_00ba: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, + !1) + IL_00bf: nop + .line 77,77 : 13,14 '' + IL_00c0: nop + IL_00c1: ldloc.s CS$7$0003 + IL_00c3: ldc.i4.1 + IL_00c4: add + IL_00c5: stloc.s CS$7$0003 + .line 66,66 : 38,40 '' + IL_00c7: ldloc.s CS$7$0003 + IL_00c9: ldloc.s CS$6$0002 + IL_00cb: ldlen + IL_00cc: conv.i4 + IL_00cd: clt + IL_00cf: stloc.s CS$4$0001 + IL_00d1: ldloc.s CS$4$0001 + IL_00d3: brtrue IL_0048 + + .line 79,79 : 13,28 '' + IL_00d8: ldloc.2 + IL_00d9: stloc.s CS$1$0000 + IL_00db: br.s IL_00dd + + .line 80,80 : 9,10 '' + IL_00dd: ldloc.s CS$1$0000 + IL_00df: ret + } // end of method EnumValueFriendlyNameAttribute::GetFriendlyNames + + .property instance string FriendlyName() + { + .get instance string Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::get_FriendlyName() + .set instance void Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::set_FriendlyName(string) + } // end of property EnumValueFriendlyNameAttribute::FriendlyName +} // end of class Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Helpers.MessageQueue + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested family CommonWaitTime + extends [mscorlib]System.Enum + { + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.MessageQueue/CommonWaitTime QueueSuspension = int32(0x00000032) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.MessageQueue/CommonWaitTime QueueItemProcessed = int32(0x000003E8) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.MessageQueue/CommonWaitTime QueueProcessed = int32(0x000003E8) + } // end of class CommonWaitTime + + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) enabled + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) suspended + .field private initonly class [System]System.Collections.Generic.Queue`1> queue + .field private class [mscorlib]System.Threading.Thread QueueThread + .field private initonly class [mscorlib]System.Threading.ManualResetEvent waitHandle + .field private class [mscorlib]System.EventHandler MessageSending + .field private class [mscorlib]System.EventHandler MessageSent + .method public hidebysig specialname instance void + add_MessageSending(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method MessageQueue::add_MessageSending + + .method public hidebysig specialname instance void + remove_MessageSending(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method MessageQueue::remove_MessageSending + + .method public hidebysig specialname instance void + add_MessageSent(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method MessageQueue::add_MessageSent + + .method public hidebysig specialname instance void + remove_MessageSent(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method MessageQueue::remove_MessageSent + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 46 (0x2e) + .maxstack 8 + .line 34,34 : 9,123 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\MessageQueue.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.5 + IL_0002: newobj instance void class [System]System.Collections.Generic.Queue`1>::.ctor(int32) + IL_0007: stfld class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::queue + .line 37,37 : 9,83 '' + IL_000c: ldarg.0 + IL_000d: ldc.i4.1 + IL_000e: newobj instance void [mscorlib]System.Threading.ManualResetEvent::.ctor(bool) + IL_0013: stfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + .line 61,61 : 9,30 '' + IL_0018: ldarg.0 + IL_0019: call instance void [mscorlib]System.Object::.ctor() + IL_001e: nop + .line 62,62 : 9,10 '' + IL_001f: nop + .line 63,63 : 13,51 '' + IL_0020: ldarg.0 + IL_0021: ldarg.0 + IL_0022: callvirt instance class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::InitializeQueueThread() + IL_0027: stfld class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::QueueThread + .line 64,64 : 9,10 '' + IL_002c: nop + IL_002d: ret + } // end of method MessageQueue::.ctor + + .method family hidebysig newslot virtual + instance class [mscorlib]System.Threading.Thread + InitializeQueueThread() cil managed + { + // Code size 34 (0x22) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Threading.Thread thread, + [1] class [mscorlib]System.Threading.Thread CS$1$0000) + .line 67,67 : 9,10 '' + IL_0000: nop + .line 68,68 : 13,54 '' + IL_0001: ldarg.0 + IL_0002: dup + IL_0003: ldvirtftn instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::ProcessQueue() + IL_0009: newobj instance void [mscorlib]System.Threading.ThreadStart::.ctor(object, + native int) + IL_000e: newobj instance void [mscorlib]System.Threading.Thread::.ctor(class [mscorlib]System.Threading.ThreadStart) + IL_0013: stloc.0 + .line 69,69 : 13,40 '' + IL_0014: ldloc.0 + IL_0015: ldc.i4.1 + IL_0016: callvirt instance void [mscorlib]System.Threading.Thread::set_IsBackground(bool) + IL_001b: nop + .line 71,71 : 13,27 '' + IL_001c: ldloc.0 + IL_001d: stloc.1 + IL_001e: br.s IL_0020 + + .line 72,72 : 9,10 '' + IL_0020: ldloc.1 + IL_0021: ret + } // end of method MessageQueue::InitializeQueueThread + + .method family hidebysig virtual instance void + Finalize() cil managed + { + // Code size 34 (0x22) + .maxstack 2 + .line 75,75 : 9,10 '' + .try + { + IL_0000: nop + .line 76,76 : 13,29 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::SetState(bool) + IL_0008: nop + .line 77,77 : 13,32 '' + IL_0009: ldarg.0 + IL_000a: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + IL_000f: callvirt instance void [mscorlib]System.Threading.WaitHandle::Close() + IL_0014: nop + .line 78,78 : 9,10 '' + IL_0015: nop + IL_0016: leave.s IL_0020 + + .line 78,78 : 9,10 '' + } // end .try + finally + { + IL_0018: ldarg.0 + IL_0019: call instance void [mscorlib]System.Object::Finalize() + IL_001e: nop + IL_001f: endfinally + } // end handler + IL_0020: nop + .line 78,78 : 9,10 '' + IL_0021: ret + } // end of method MessageQueue::Finalize + + .method public hidebysig specialname instance bool + get_Suspended() cil managed + { + // Code size 14 (0xe) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 87,87 : 13,14 '' + IL_0000: nop + .line 88,88 : 17,34 '' + IL_0001: ldarg.0 + IL_0002: volatile. + IL_0004: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::suspended + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + .line 89,89 : 13,14 '' + IL_000c: ldloc.0 + IL_000d: ret + } // end of method MessageQueue::get_Suspended + + .method public hidebysig specialname instance class [mscorlib]System.Threading.ManualResetEvent + get_WaitHandle() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Threading.ManualResetEvent CS$1$0000) + .line 95,95 : 13,14 '' + IL_0000: nop + .line 96,96 : 17,35 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 97,97 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MessageQueue::get_WaitHandle + + .method family hidebysig specialname instance class [System]System.Collections.Generic.Queue`1> + get_Queue() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [System]System.Collections.Generic.Queue`1> CS$1$0000) + .line 102,102 : 17,18 '' + IL_0000: nop + .line 102,102 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::queue + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 102,102 : 33,34 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MessageQueue::get_Queue + + .method public hidebysig specialname instance bool + get_Enabled() cil managed + { + // Code size 14 (0xe) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 108,108 : 13,14 '' + IL_0000: nop + .line 109,109 : 17,32 '' + IL_0001: ldarg.0 + IL_0002: volatile. + IL_0004: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::enabled + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + .line 110,110 : 13,14 '' + IL_000c: ldloc.0 + IL_000d: ret + } // end of method MessageQueue::get_Enabled + + .method public hidebysig specialname instance bool + get_QueueHasItems() cil managed + { + // Code size 43 (0x2b) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] class [System]System.Collections.Generic.Queue`1> CS$2$0001) + .line 116,116 : 13,14 '' + IL_0000: nop + .line 117,117 : 17,29 '' + IL_0001: ldarg.0 + IL_0002: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0007: dup + IL_0008: stloc.1 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 118,118 : 21,44 '' + .try + { + IL_000f: ldarg.0 + IL_0010: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0015: callvirt instance int32 class [System]System.Collections.Generic.Queue`1>::get_Count() + IL_001a: ldc.i4.0 + IL_001b: cgt + IL_001d: stloc.0 + IL_001e: leave.s IL_0028 + + } // end .try + finally + { + IL_0020: ldloc.1 + IL_0021: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0026: nop + IL_0027: endfinally + } // end handler + IL_0028: nop + .line 119,119 : 13,14 '' + IL_0029: ldloc.0 + IL_002a: ret + } // end of method MessageQueue::get_QueueHasItems + + .method family hidebysig newslot specialname virtual + instance bool get_ClearQueueWhenDisabled() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 125,125 : 13,14 '' + IL_0000: nop + .line 126,126 : 17,29 '' + IL_0001: ldc.i4.1 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 127,127 : 13,14 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method MessageQueue::get_ClearQueueWhenDisabled + + .method family hidebysig newslot virtual + instance void ProcessQueue() cil managed + { + // Code size 169 (0xa9) + .maxstack 2 + .locals init ([0] bool CS$4$0000, + [1] class [System]System.Collections.Generic.Queue`1> CS$2$0001) + .line 135,135 : 9,10 '' + IL_0000: nop + IL_0001: br IL_008f + + .line 137,137 : 13,14 '' + IL_0006: nop + IL_0007: br.s IL_0012 + + .line 139,139 : 21,58 '' + IL_0009: ldarg.0 + IL_000a: ldc.i4.s 50 + IL_000c: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Wait(valuetype Virtuoso.Miranda.Plugins.Helpers.MessageQueue/CommonWaitTime) + IL_0011: nop + .line 138,138 : 17,34 '' + IL_0012: ldarg.0 + IL_0013: volatile. + IL_0015: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::suspended + IL_001a: stloc.0 + IL_001b: ldloc.0 + IL_001c: brtrue.s IL_0009 + + .line 141,141 : 17,29 '' + IL_001e: ldarg.0 + IL_001f: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0024: dup + IL_0025: stloc.1 + IL_0026: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_002b: nop + .line 142,142 : 17,18 '' + .try + { + IL_002c: nop + IL_002d: br.s IL_005f + + .line 144,144 : 21,22 '' + IL_002f: nop + .line 145,145 : 25,44 '' + IL_0030: ldarg.0 + IL_0031: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + IL_0036: callvirt instance bool [mscorlib]System.Threading.EventWaitHandle::Reset() + IL_003b: pop + .line 146,146 : 25,55 '' + IL_003c: ldarg.0 + IL_003d: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::RaiseMessageForwardingEvent() + IL_0042: nop + .line 148,148 : 25,49 '' + IL_0043: ldarg.0 + IL_0044: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::DequeueAndSendMessage() + IL_0049: nop + .line 149,149 : 25,58 '' + IL_004a: ldarg.0 + IL_004b: ldarg.0 + IL_004c: callvirt instance int32 Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueItemProcessedWaitTime() + IL_0051: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Wait(int32) + IL_0056: nop + .line 151,151 : 25,54 '' + IL_0057: ldarg.0 + IL_0058: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::RaiseMessageForwardedEvent() + IL_005d: nop + .line 152,152 : 21,22 '' + IL_005e: nop + .line 143,143 : 21,42 '' + IL_005f: ldarg.0 + IL_0060: call instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueHasItems() + IL_0065: stloc.0 + IL_0066: ldloc.0 + IL_0067: brtrue.s IL_002f + + .line 154,154 : 21,38 '' + IL_0069: ldarg.0 + IL_006a: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + IL_006f: callvirt instance bool [mscorlib]System.Threading.EventWaitHandle::Set() + IL_0074: pop + .line 155,155 : 17,18 '' + IL_0075: nop + IL_0076: leave.s IL_0080 + + } // end .try + finally + { + IL_0078: ldloc.1 + IL_0079: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_007e: nop + IL_007f: endfinally + } // end handler + IL_0080: nop + .line 157,157 : 17,46 '' + IL_0081: ldarg.0 + IL_0082: ldarg.0 + IL_0083: callvirt instance int32 Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueProcessedWaitTime() + IL_0088: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Wait(int32) + IL_008d: nop + .line 158,158 : 13,14 '' + IL_008e: nop + .line 136,136 : 13,28 '' + IL_008f: ldarg.0 + IL_0090: call instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Enabled() + IL_0095: stloc.0 + IL_0096: ldloc.0 + IL_0097: brtrue IL_0006 + + .line 160,160 : 13,30 '' + IL_009c: ldarg.0 + IL_009d: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + IL_00a2: callvirt instance bool [mscorlib]System.Threading.EventWaitHandle::Set() + IL_00a7: pop + .line 161,161 : 9,10 '' + IL_00a8: ret + } // end of method MessageQueue::ProcessQueue + + .method family hidebysig instance void + DequeueAndSendMessage() cil managed + { + // Code size 62 (0x3e) + .maxstack 3 + .locals init ([0] valuetype [mscorlib]System.Collections.Generic.KeyValuePair`2 data, + [1] class [System]System.Collections.Generic.Queue`1> CS$2$0000) + .line 164,164 : 9,10 '' + IL_0000: nop + .line 165,165 : 13,25 '' + IL_0001: ldarg.0 + IL_0002: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0007: dup + IL_0008: stloc.1 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 166,166 : 13,14 '' + .try + { + IL_000f: nop + .line 167,167 : 17,74 '' + IL_0010: ldarg.0 + IL_0011: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0016: callvirt instance !0 class [System]System.Collections.Generic.Queue`1>::Dequeue() + IL_001b: stloc.0 + .line 168,168 : 17,51 '' + IL_001c: ldarg.0 + IL_001d: ldloca.s data + IL_001f: call instance !0 valuetype [mscorlib]System.Collections.Generic.KeyValuePair`2::get_Key() + IL_0024: ldloca.s data + IL_0026: call instance !1 valuetype [mscorlib]System.Collections.Generic.KeyValuePair`2::get_Value() + IL_002b: callvirt instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::SendMessage(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + string) + IL_0030: nop + .line 169,169 : 13,14 '' + IL_0031: nop + IL_0032: leave.s IL_003c + + } // end .try + finally + { + IL_0034: ldloc.1 + IL_0035: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_003a: nop + IL_003b: endfinally + } // end handler + IL_003c: nop + .line 170,170 : 9,10 '' + IL_003d: ret + } // end of method MessageQueue::DequeueAndSendMessage + + .method family hidebysig newslot virtual + instance void SendMessage(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo recipient, + string message) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 173,173 : 9,10 '' + IL_0000: nop + .line 174,174 : 13,44 '' + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::SendMessage(string) + IL_0008: nop + .line 175,175 : 9,10 '' + IL_0009: ret + } // end of method MessageQueue::SendMessage + + .method family hidebysig newslot specialname virtual + instance int32 get_QueueItemProcessedWaitTime() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 180,180 : 13,14 '' + IL_0000: nop + .line 181,181 : 17,63 '' + IL_0001: ldc.i4 0x3e8 + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 182,182 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method MessageQueue::get_QueueItemProcessedWaitTime + + .method family hidebysig newslot specialname virtual + instance int32 get_QueueProcessedWaitTime() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 188,188 : 13,14 '' + IL_0000: nop + .line 189,189 : 17,59 '' + IL_0001: ldc.i4 0x3e8 + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 190,190 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method MessageQueue::get_QueueProcessedWaitTime + + .method public hidebysig instance void + SuspendQueue() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 198,198 : 9,10 '' + IL_0000: nop + .line 199,199 : 13,30 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: volatile. + IL_0005: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::suspended + .line 200,200 : 9,10 '' + IL_000a: ret + } // end of method MessageQueue::SuspendQueue + + .method public hidebysig instance void + ResumeQueue() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 203,203 : 9,10 '' + IL_0000: nop + .line 204,204 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: volatile. + IL_0005: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::suspended + .line 205,205 : 9,10 '' + IL_000a: ret + } // end of method MessageQueue::ResumeQueue + + .method public hidebysig instance void + EnqueueMessage(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo 'to', + string message) cil managed + { + // Code size 54 (0x36) + .maxstack 3 + .locals init ([0] class [System]System.Collections.Generic.Queue`1> CS$2$0000) + .line 208,208 : 9,10 '' + IL_0000: nop + .line 209,209 : 13,25 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::queue + IL_0007: dup + IL_0008: stloc.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 210,210 : 17,83 '' + .try + { + IL_000f: ldarg.0 + IL_0010: ldfld class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::queue + IL_0015: ldarg.1 + IL_0016: ldarg.2 + IL_0017: newobj instance void valuetype [mscorlib]System.Collections.Generic.KeyValuePair`2::.ctor(!0, + !1) + IL_001c: callvirt instance void class [System]System.Collections.Generic.Queue`1>::Enqueue(!0) + IL_0021: nop + IL_0022: leave.s IL_002c + + } // end .try + finally + { + IL_0024: ldloc.0 + IL_0025: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_002a: nop + IL_002b: endfinally + } // end handler + IL_002c: nop + .line 212,212 : 13,28 '' + IL_002d: ldarg.0 + IL_002e: ldc.i4.1 + IL_002f: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::SetState(bool) + IL_0034: nop + .line 213,213 : 9,10 '' + IL_0035: ret + } // end of method MessageQueue::EnqueueMessage + + .method public hidebysig instance void + SetState(bool enabled) cil managed + { + // Code size 136 (0x88) + .maxstack 2 + .locals init ([0] class [System]System.Collections.Generic.Queue`1> CS$2$0000, + [1] bool CS$4$0001) + .line 216,216 : 9,10 '' + IL_0000: nop + .line 218,218 : 13,25 '' + IL_0001: ldarg.0 + IL_0002: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0007: dup + IL_0008: stloc.0 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 219,219 : 13,14 '' + .try + { + IL_000f: nop + .line 220,220 : 17,29 '' + IL_0010: ldarg.1 + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: stloc.1 + IL_0015: ldloc.1 + IL_0016: brtrue.s IL_0064 + + .line 221,221 : 17,18 '' + IL_0018: nop + .line 222,222 : 21,96 '' + IL_0019: ldarg.0 + IL_001a: ldfld class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::QueueThread + IL_001f: callvirt instance valuetype [mscorlib]System.Threading.ThreadState [mscorlib]System.Threading.Thread::get_ThreadState() + IL_0024: ldc.i4.s 16 + IL_0026: and + IL_0027: ldc.i4.s 16 + IL_0029: ceq + IL_002b: ldc.i4.0 + IL_002c: ceq + IL_002e: stloc.1 + IL_002f: ldloc.1 + IL_0030: brtrue.s IL_003e + + .line 223,223 : 25,63 '' + IL_0032: ldarg.0 + IL_0033: ldarg.0 + IL_0034: callvirt instance class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::InitializeQueueThread() + IL_0039: stfld class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::QueueThread + .line 225,225 : 21,100 '' + IL_003e: ldarg.0 + IL_003f: ldfld class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::QueueThread + IL_0044: callvirt instance valuetype [mscorlib]System.Threading.ThreadState [mscorlib]System.Threading.Thread::get_ThreadState() + IL_0049: ldc.i4.8 + IL_004a: and + IL_004b: ldc.i4.8 + IL_004c: ceq + IL_004e: ldc.i4.0 + IL_004f: ceq + IL_0051: stloc.1 + IL_0052: ldloc.1 + IL_0053: brtrue.s IL_0061 + + .line 226,226 : 25,45 '' + IL_0055: ldarg.0 + IL_0056: ldfld class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::QueueThread + IL_005b: callvirt instance void [mscorlib]System.Threading.Thread::Start() + IL_0060: nop + .line 227,227 : 17,18 '' + IL_0061: nop + IL_0062: br.s IL_0072 + + .line 229,229 : 17,18 '' + IL_0064: nop + .line 230,230 : 21,35 '' + IL_0065: ldarg.0 + IL_0066: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_006b: callvirt instance void class [System]System.Collections.Generic.Queue`1>::Clear() + IL_0070: nop + .line 231,231 : 17,18 '' + IL_0071: nop + .line 233,233 : 17,40 '' + IL_0072: ldarg.0 + IL_0073: ldarg.1 + IL_0074: volatile. + IL_0076: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::enabled + .line 234,234 : 13,14 '' + IL_007b: nop + IL_007c: leave.s IL_0086 + + } // end .try + finally + { + IL_007e: ldloc.0 + IL_007f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0084: nop + IL_0085: endfinally + } // end handler + IL_0086: nop + .line 235,235 : 9,10 '' + IL_0087: ret + } // end of method MessageQueue::SetState + + .method family hidebysig instance void + RaiseMessageForwardingEvent() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 238,238 : 9,10 '' + IL_0000: nop + .line 239,239 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0020 + + .line 240,240 : 17,55 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_0014: ldarg.0 + IL_0015: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_001a: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + IL_001f: nop + .line 241,241 : 9,10 '' + IL_0020: ret + } // end of method MessageQueue::RaiseMessageForwardingEvent + + .method family hidebysig instance void + RaiseMessageForwardedEvent() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 244,244 : 9,10 '' + IL_0000: nop + .line 245,245 : 13,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0020 + + .line 246,246 : 17,52 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_0014: ldarg.0 + IL_0015: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_001a: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + IL_001f: nop + .line 247,247 : 9,10 '' + IL_0020: ret + } // end of method MessageQueue::RaiseMessageForwardedEvent + + .method family hidebysig instance void + Wait(valuetype Virtuoso.Miranda.Plugins.Helpers.MessageQueue/CommonWaitTime miliseconds) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 250,250 : 9,10 '' + IL_0000: nop + .line 251,251 : 13,36 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Wait(int32) + IL_0008: nop + .line 252,252 : 9,10 '' + IL_0009: ret + } // end of method MessageQueue::Wait + + .method family hidebysig instance void + Wait(int32 miliseconds) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 255,255 : 9,10 '' + IL_0000: nop + .line 256,256 : 13,39 '' + IL_0001: ldarg.1 + IL_0002: call void [mscorlib]System.Threading.Thread::Sleep(int32) + IL_0007: nop + .line 257,257 : 9,10 '' + IL_0008: ret + } // end of method MessageQueue::Wait + + .event [mscorlib]System.EventHandler MessageSending + { + .addon instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::add_MessageSending(class [mscorlib]System.EventHandler) + .removeon instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::remove_MessageSending(class [mscorlib]System.EventHandler) + } // end of event MessageQueue::MessageSending + .event [mscorlib]System.EventHandler MessageSent + { + .addon instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::add_MessageSent(class [mscorlib]System.EventHandler) + .removeon instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::remove_MessageSent(class [mscorlib]System.EventHandler) + } // end of event MessageQueue::MessageSent + .property instance bool Suspended() + { + .get instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Suspended() + } // end of property MessageQueue::Suspended + .property instance class [mscorlib]System.Threading.ManualResetEvent + WaitHandle() + { + .get instance class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_WaitHandle() + } // end of property MessageQueue::WaitHandle + .property instance class [System]System.Collections.Generic.Queue`1> + Queue() + { + .get instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + } // end of property MessageQueue::Queue + .property instance bool Enabled() + { + .get instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Enabled() + } // end of property MessageQueue::Enabled + .property instance bool QueueHasItems() + { + .get instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueHasItems() + } // end of property MessageQueue::QueueHasItems + .property instance bool ClearQueueWhenDisabled() + { + .get instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_ClearQueueWhenDisabled() + } // end of property MessageQueue::ClearQueueWhenDisabled + .property instance int32 QueueItemProcessedWaitTime() + { + .get instance int32 Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueItemProcessedWaitTime() + } // end of property MessageQueue::QueueItemProcessedWaitTime + .property instance int32 QueueProcessedWaitTime() + { + .get instance int32 Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueProcessedWaitTime() + } // end of property MessageQueue::QueueProcessedWaitTime +} // end of class Virtuoso.Miranda.Plugins.Helpers.MessageQueue + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Helpers.Utilities + extends [mscorlib]System.Object +{ + .method public hidebysig static uint32 + GetTimestamp() cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 16 (0x10) + .maxstack 1 + .locals init ([0] uint32 CS$1$0000) + .line 28,28 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\Utilities.cs' + IL_0000: nop + .line 29,29 : 13,47 '' + IL_0001: call valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::get_Now() + IL_0006: call uint32 Virtuoso.Miranda.Plugins.Helpers.Utilities::GetTimestamp(valuetype [mscorlib]System.DateTime) + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + .line 30,30 : 9,10 '' + IL_000e: ldloc.0 + IL_000f: ret + } // end of method Utilities::GetTimestamp + + .method public hidebysig static uint32 + GetTimestamp(valuetype [mscorlib]System.DateTime dateTime) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 39 (0x27) + .maxstack 4 + .locals init ([0] uint32 CS$1$0000, + [1] valuetype [mscorlib]System.TimeSpan CS$0$0001) + .line 34,34 : 9,10 '' + IL_0000: nop + .line 35,35 : 13,95 '' + IL_0001: ldarga.s dateTime + IL_0003: call instance valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::ToUniversalTime() + IL_0008: ldc.i4 0x7b2 + IL_000d: ldc.i4.1 + IL_000e: ldc.i4.1 + IL_000f: newobj instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_0014: call valuetype [mscorlib]System.TimeSpan [mscorlib]System.DateTime::op_Subtraction(valuetype [mscorlib]System.DateTime, + valuetype [mscorlib]System.DateTime) + IL_0019: stloc.1 + IL_001a: ldloca.s CS$0$0001 + IL_001c: call instance float64 [mscorlib]System.TimeSpan::get_TotalSeconds() + IL_0021: conv.u4 + IL_0022: stloc.0 + IL_0023: br.s IL_0025 + + .line 36,36 : 9,10 '' + IL_0025: ldloc.0 + IL_0026: ret + } // end of method Utilities::GetTimestamp + +} // end of class Virtuoso.Miranda.Plugins.Helpers.Utilities + +.class private auto ansi sealed beforefieldinit Virtuoso.Hyphen.Configuration.Controls.AboutContent + extends Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl +{ + .field private class [System]System.ComponentModel.IContainer components + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader panel1 + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection panel2 + .field private class [System.Windows.Forms]System.Windows.Forms.Label VersionLABEL + .field private class [System.Windows.Forms]System.Windows.Forms.LinkLabel HomepageLINK + .field private class [System.Windows.Forms]System.Windows.Forms.PictureBox pictureBox1 + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection categoryItemSection1 + .field private class [System.Windows.Forms]System.Windows.Forms.Label label1 + .field private class [System.Windows.Forms]System.Windows.Forms.ListBox listBox1 + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 9,9 : 9,68 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Configuration\\Controls\\AboutContent.Designer.cs' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: stfld class [System]System.ComponentModel.IContainer Virtuoso.Hyphen.Configuration.Controls.AboutContent::components + .line 28,28 : 9,31 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Configuration\\Controls\\AboutContent.cs' + IL_0007: ldarg.0 + IL_0008: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::.ctor() + IL_000d: nop + .line 29,29 : 9,10 '' + IL_000e: nop + .line 30,30 : 13,35 '' + IL_000f: ldarg.0 + IL_0010: call instance void Virtuoso.Hyphen.Configuration.Controls.AboutContent::InitializeComponent() + IL_0015: nop + .line 31,31 : 9,10 '' + IL_0016: nop + IL_0017: ret + } // end of method AboutContent::.ctor + + .method famorassem hidebysig virtual instance bool + OnShow(bool firstTime) cil managed + { + // Code size 103 (0x67) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Reflection.Assembly 'assembly', + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 34,34 : 9,10 '' + IL_0000: nop + .line 35,35 : 13,27 '' + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: ceq + IL_0005: stloc.2 + IL_0006: ldloc.2 + IL_0007: brtrue.s IL_0061 + + .line 36,36 : 13,14 '' + IL_0009: nop + .line 37,37 : 17,56 '' + IL_000a: ldarg.0 + IL_000b: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0010: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0015: stloc.0 + .line 39,39 : 17,87 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_001c: ldstr "v{0}" + IL_0021: ldloc.0 + IL_0022: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_0027: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_002c: call string [mscorlib]System.String::Format(string, + object) + IL_0031: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0036: nop + .line 40,42 : 17,109 '' + IL_0037: ldarg.0 + IL_0038: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_003d: ldloc.0 + IL_003e: ldtoken [mscorlib]System.Reflection.AssemblyCopyrightAttribute + IL_0043: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0048: ldc.i4.0 + IL_0049: callvirt instance object[] [mscorlib]System.Reflection.Assembly::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_004e: ldc.i4.0 + IL_004f: ldelem.ref + IL_0050: castclass [mscorlib]System.Reflection.AssemblyCopyrightAttribute + IL_0055: callvirt instance string [mscorlib]System.Reflection.AssemblyCopyrightAttribute::get_Copyright() + IL_005a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_005f: nop + .line 43,43 : 13,14 '' + IL_0060: nop + .line 45,45 : 13,26 '' + IL_0061: ldc.i4.0 + IL_0062: stloc.1 + IL_0063: br.s IL_0065 + + .line 46,46 : 9,10 '' + IL_0065: ldloc.1 + IL_0066: ret + } // end of method AboutContent::OnShow + + .method private hidebysig instance void + HomepageLINK_LinkClicked(object sender, + class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventArgs e) cil managed + { + // Code size 38 (0x26) + .maxstack 2 + .locals init ([0] class [System]System.Diagnostics.ProcessStartInfo info) + .line 49,49 : 9,10 '' + IL_0000: nop + .line 50,50 : 13,100 '' + IL_0001: call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance() + IL_0006: callvirt instance class Virtuoso.Hyphen.Native.PLUGININFO Virtuoso.Hyphen.Loader::get_PluginInfo() + IL_000b: ldfld string Virtuoso.Hyphen.Native.PLUGININFO::HomePage + IL_0010: newobj instance void [System]System.Diagnostics.ProcessStartInfo::.ctor(string) + IL_0015: stloc.0 + .line 51,51 : 13,41 '' + IL_0016: ldloc.0 + IL_0017: ldc.i4.1 + IL_0018: callvirt instance void [System]System.Diagnostics.ProcessStartInfo::set_UseShellExecute(bool) + IL_001d: nop + .line 53,53 : 13,33 '' + IL_001e: ldloc.0 + IL_001f: call class [System]System.Diagnostics.Process [System]System.Diagnostics.Process::Start(class [System]System.Diagnostics.ProcessStartInfo) + IL_0024: pop + .line 54,54 : 9,10 '' + IL_0025: ret + } // end of method AboutContent::HomepageLINK_LinkClicked + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 44 (0x2c) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 16,16 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Configuration\\Controls\\AboutContent.Designer.cs' + IL_0000: nop + .line 17,17 : 13,51 '' + IL_0001: ldarg.1 + IL_0002: brfalse.s IL_000f + + IL_0004: ldarg.0 + IL_0005: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Hyphen.Configuration.Controls.AboutContent::components + IL_000a: ldnull + IL_000b: ceq + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.1 + IL_0010: nop + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0023 + + .line 18,18 : 13,14 '' + IL_0015: nop + .line 19,19 : 17,38 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Hyphen.Configuration.Controls.AboutContent::components + IL_001c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0021: nop + .line 20,20 : 13,14 '' + IL_0022: nop + .line 21,21 : 13,37 '' + IL_0023: ldarg.0 + IL_0024: ldarg.1 + IL_0025: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::Dispose(bool) + IL_002a: nop + .line 22,22 : 9,10 '' + IL_002b: ret + } // end of method AboutContent::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 1739 (0x6cb) + .maxstack 6 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources, + [1] object[] CS$0$0000) + .line 31,31 : 9,10 '' + IL_0000: nop + .line 32,32 : 13,145 '' + IL_0001: ldtoken Virtuoso.Hyphen.Configuration.Controls.AboutContent + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_0010: stloc.0 + .line 33,33 : 13,106 '' + IL_0011: ldarg.0 + IL_0012: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor() + IL_0017: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + .line 34,34 : 13,107 '' + IL_001c: ldarg.0 + IL_001d: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::.ctor() + IL_0022: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + .line 35,35 : 13,66 '' + IL_0027: ldarg.0 + IL_0028: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_002d: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + .line 36,36 : 13,70 '' + IL_0032: ldarg.0 + IL_0033: newobj instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::.ctor() + IL_0038: stfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + .line 37,37 : 13,70 '' + IL_003d: ldarg.0 + IL_003e: newobj instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::.ctor() + IL_0043: stfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + .line 38,38 : 13,121 '' + IL_0048: ldarg.0 + IL_0049: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::.ctor() + IL_004e: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + .line 39,39 : 13,60 '' + IL_0053: ldarg.0 + IL_0054: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0059: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + .line 40,40 : 13,64 '' + IL_005e: ldarg.0 + IL_005f: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListBox::.ctor() + IL_0064: stfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + .line 41,41 : 13,88 '' + IL_0069: ldarg.0 + IL_006a: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_006f: callvirt instance void [System]System.ComponentModel.ISupportInitialize::BeginInit() + IL_0074: nop + .line 42,42 : 13,34 '' + IL_0075: ldarg.0 + IL_0076: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + IL_007b: nop + .line 46,46 : 13,70 '' + IL_007c: ldarg.0 + IL_007d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0082: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0087: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_008c: nop + .line 47,47 : 13,133 '' + IL_008d: ldarg.0 + IL_008e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0093: ldc.i4 0xff + IL_0098: ldc.i4 0x80 + IL_009d: ldc.i4.0 + IL_009e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_00a3: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + IL_00a8: nop + .line 48,48 : 13,67 '' + IL_00a9: ldarg.0 + IL_00aa: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_00af: ldc.i4.1 + IL_00b0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + IL_00b5: nop + .line 49,49 : 13,157 '' + IL_00b6: ldarg.0 + IL_00b7: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_00bc: ldstr "Tahoma" + IL_00c1: ldc.r4 8.25 + IL_00c6: ldc.i4.0 + IL_00c7: ldc.i4.3 + IL_00c8: ldc.i4 0xee + IL_00cd: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_00d2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_00d7: nop + .line 50,50 : 13,157 '' + IL_00d8: ldarg.0 + IL_00d9: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_00de: ldstr "Tahoma" + IL_00e3: ldc.r4 8. + IL_00e8: ldc.i4.1 + IL_00e9: ldc.i4.3 + IL_00ea: ldc.i4 0xee + IL_00ef: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_00f4: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + IL_00f9: nop + .line 51,51 : 13,53 '' + IL_00fa: ldarg.0 + IL_00fb: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0100: ldstr "About Hyphen" + IL_0105: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + IL_010a: nop + .line 52,52 : 13,102 '' + IL_010b: ldarg.0 + IL_010c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0111: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_232_32x32() + IL_0116: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + IL_011b: nop + .line 53,53 : 13,67 '' + IL_011c: ldarg.0 + IL_011d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0122: ldc.i4.0 + IL_0123: ldc.i4.0 + IL_0124: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0129: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_012e: nop + .line 54,54 : 13,72 '' + IL_012f: ldarg.0 + IL_0130: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0135: ldc.i4 0x12c + IL_013a: ldc.i4.s 40 + IL_013c: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0141: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_0146: nop + .line 55,55 : 13,41 '' + IL_0147: ldarg.0 + IL_0148: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_014d: ldstr "panel1" + IL_0152: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0157: nop + .line 56,56 : 13,65 '' + IL_0158: ldarg.0 + IL_0159: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_015e: ldc.i4 0x318 + IL_0163: ldc.i4.s 40 + IL_0165: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_016a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_016f: nop + .line 57,57 : 13,38 '' + IL_0170: ldarg.0 + IL_0171: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0176: ldc.i4.0 + IL_0177: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_017c: nop + .line 61,61 : 13,70 '' + IL_017d: ldarg.0 + IL_017e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_0183: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0188: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_018d: nop + .line 62,62 : 13,135 '' + IL_018e: ldarg.0 + IL_018f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_0194: ldc.i4 0xff + IL_0199: ldc.i4 0xe0 + IL_019e: ldc.i4 0xc0 + IL_01a3: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_01a8: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_Color(valuetype [System.Drawing]System.Drawing.Color) + IL_01ad: nop + .line 63,63 : 13,154 '' + IL_01ae: ldarg.0 + IL_01af: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_01b4: ldstr "Tahoma" + IL_01b9: ldc.r4 8.25 + IL_01be: ldc.i4.1 + IL_01bf: ldc.i4.3 + IL_01c0: ldc.i4 0xee + IL_01c5: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_01ca: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_01cf: nop + .line 64,64 : 13,64 '' + IL_01d0: ldarg.0 + IL_01d1: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_01d6: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Black() + IL_01db: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + IL_01e0: nop + .line 65,65 : 13,69 '' + IL_01e1: ldarg.0 + IL_01e2: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_01e7: ldc.i4.s 10 + IL_01e9: ldc.i4.s 46 + IL_01eb: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_01f0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_01f5: nop + .line 66,66 : 13,72 '' + IL_01f6: ldarg.0 + IL_01f7: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_01fc: ldc.i4 0x12c + IL_0201: ldc.i4.s 20 + IL_0203: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0208: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_020d: nop + .line 67,67 : 13,41 '' + IL_020e: ldarg.0 + IL_020f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_0214: ldstr "panel2" + IL_0219: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_021e: nop + .line 68,68 : 13,48 '' + IL_021f: ldarg.0 + IL_0220: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_0225: ldstr "Hyphen" + IL_022a: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_SectionName(string) + IL_022f: nop + .line 69,69 : 13,65 '' + IL_0230: ldarg.0 + IL_0231: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_0236: ldc.i4 0x2fd + IL_023b: ldc.i4.s 20 + IL_023d: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0242: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0247: nop + .line 70,70 : 13,38 '' + IL_0248: ldarg.0 + IL_0249: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_024e: ldc.i4.1 + IL_024f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_0254: nop + .line 74,74 : 13,47 '' + IL_0255: ldarg.0 + IL_0256: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_025b: ldc.i4.1 + IL_025c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_0261: nop + .line 75,75 : 13,157 '' + IL_0262: ldarg.0 + IL_0263: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_0268: ldstr "Tahoma" + IL_026d: ldc.r4 8. + IL_0272: ldc.i4.1 + IL_0273: ldc.i4.3 + IL_0274: ldc.i4 0xee + IL_0279: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_027e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_0283: nop + .line 76,76 : 13,76 '' + IL_0284: ldarg.0 + IL_0285: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_028a: ldc.i4.s 127 + IL_028c: ldc.i4.s 72 + IL_028e: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0293: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0298: nop + .line 77,77 : 13,53 '' + IL_0299: ldarg.0 + IL_029a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_029f: ldstr "VersionLABEL" + IL_02a4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_02a9: nop + .line 78,78 : 13,70 '' + IL_02aa: ldarg.0 + IL_02ab: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_02b0: ldc.i4.s 51 + IL_02b2: ldc.i4.s 13 + IL_02b4: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_02b9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_02be: nop + .line 79,79 : 13,44 '' + IL_02bf: ldarg.0 + IL_02c0: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_02c5: ldc.i4.2 + IL_02c6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_02cb: nop + .line 80,80 : 13,49 '' + IL_02cc: ldarg.0 + IL_02cd: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_02d2: ldstr "v0.0.0.0" + IL_02d7: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_02dc: nop + .line 84,84 : 13,47 '' + IL_02dd: ldarg.0 + IL_02de: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_02e3: ldc.i4.1 + IL_02e4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_02e9: nop + .line 85,85 : 13,76 '' + IL_02ea: ldarg.0 + IL_02eb: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_02f0: ldc.i4 0x82 + IL_02f5: ldc.i4.s 85 + IL_02f7: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_02fc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0301: nop + .line 86,86 : 13,53 '' + IL_0302: ldarg.0 + IL_0303: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_0308: ldstr "HomepageLINK" + IL_030d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_0312: nop + .line 87,87 : 13,71 '' + IL_0313: ldarg.0 + IL_0314: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_0319: ldc.i4.s 121 + IL_031b: ldc.i4.s 13 + IL_031d: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0322: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0327: nop + .line 88,88 : 13,44 '' + IL_0328: ldarg.0 + IL_0329: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_032e: ldc.i4.3 + IL_032f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_0334: nop + .line 89,89 : 13,46 '' + IL_0335: ldarg.0 + IL_0336: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_033b: ldc.i4.1 + IL_033c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_TabStop(bool) + IL_0341: nop + .line 90,90 : 13,63 '' + IL_0342: ldarg.0 + IL_0343: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_0348: ldstr bytearray (A9 00 20 00 28 00 41 00 73 00 73 00 65 00 6D 00 // .. .(.A.s.s.e.m. + 62 00 6C 00 79 00 20 00 63 00 6F 00 70 00 79 00 // b.l.y. .c.o.p.y. + 72 00 69 00 67 00 68 00 74 00 29 00 ) // r.i.g.h.t.). + IL_034d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0352: nop + .line 91,91 : 13,135 '' + IL_0353: ldarg.0 + IL_0354: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_0359: ldarg.0 + IL_035a: ldftn instance void Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK_LinkClicked(object, + class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventArgs) + IL_0360: newobj instance void [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventHandler::.ctor(object, + native int) + IL_0365: callvirt instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::add_LinkClicked(class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventHandler) + IL_036a: nop + .line 95,95 : 13,105 '' + IL_036b: ldarg.0 + IL_036c: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_0371: ldloc.0 + IL_0372: ldstr "pictureBox1.Image" + IL_0377: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_037c: castclass [System.Drawing]System.Drawing.Image + IL_0381: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0386: nop + .line 96,96 : 13,74 '' + IL_0387: ldarg.0 + IL_0388: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_038d: ldc.i4.s 21 + IL_038f: ldc.i4.s 72 + IL_0391: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0396: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_039b: nop + .line 97,97 : 13,51 '' + IL_039c: ldarg.0 + IL_039d: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_03a2: ldstr "pictureBox1" + IL_03a7: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_03ac: nop + .line 98,98 : 13,70 '' + IL_03ad: ldarg.0 + IL_03ae: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_03b3: ldc.i4.s 100 + IL_03b5: ldc.i4.s 50 + IL_03b7: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_03bc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_03c1: nop + .line 99,99 : 13,90 '' + IL_03c2: ldarg.0 + IL_03c3: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_03c8: ldc.i4.2 + IL_03c9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_SizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.PictureBoxSizeMode) + IL_03ce: nop + .line 100,100 : 13,43 '' + IL_03cf: ldarg.0 + IL_03d0: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_03d5: ldc.i4.5 + IL_03d6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabIndex(int32) + IL_03db: nop + .line 101,101 : 13,46 '' + IL_03dc: ldarg.0 + IL_03dd: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_03e2: ldc.i4.0 + IL_03e3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabStop(bool) + IL_03e8: nop + .line 105,105 : 13,84 '' + IL_03e9: ldarg.0 + IL_03ea: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_03ef: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_03f4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + IL_03f9: nop + .line 106,106 : 13,149 '' + IL_03fa: ldarg.0 + IL_03fb: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0400: ldc.i4 0xff + IL_0405: ldc.i4 0xe0 + IL_040a: ldc.i4 0xc0 + IL_040f: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0414: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_Color(valuetype [System.Drawing]System.Drawing.Color) + IL_0419: nop + .line 107,107 : 13,168 '' + IL_041a: ldarg.0 + IL_041b: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0420: ldstr "Tahoma" + IL_0425: ldc.r4 8.25 + IL_042a: ldc.i4.1 + IL_042b: ldc.i4.3 + IL_042c: ldc.i4 0xee + IL_0431: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0436: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_043b: nop + .line 108,108 : 13,78 '' + IL_043c: ldarg.0 + IL_043d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0442: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Black() + IL_0447: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + IL_044c: nop + .line 109,109 : 13,84 '' + IL_044d: ldarg.0 + IL_044e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0453: ldc.i4.s 10 + IL_0455: ldc.i4 0x95 + IL_045a: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_045f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_0464: nop + .line 110,110 : 13,86 '' + IL_0465: ldarg.0 + IL_0466: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_046b: ldc.i4 0x12c + IL_0470: ldc.i4.s 20 + IL_0472: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0477: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + IL_047c: nop + .line 111,111 : 13,69 '' + IL_047d: ldarg.0 + IL_047e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0483: ldstr "categoryItemSection1" + IL_0488: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_048d: nop + .line 112,112 : 13,66 '' + IL_048e: ldarg.0 + IL_048f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0494: ldstr "Components" + IL_0499: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_SectionName(string) + IL_049e: nop + .line 113,113 : 13,79 '' + IL_049f: ldarg.0 + IL_04a0: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_04a5: ldc.i4 0x2fd + IL_04aa: ldc.i4.s 20 + IL_04ac: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_04b1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_04b6: nop + .line 114,114 : 13,52 '' + IL_04b7: ldarg.0 + IL_04b8: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_04bd: ldc.i4.4 + IL_04be: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_04c3: nop + .line 118,118 : 13,41 '' + IL_04c4: ldarg.0 + IL_04c5: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_04ca: ldc.i4.1 + IL_04cb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + IL_04d0: nop + .line 119,119 : 13,151 '' + IL_04d1: ldarg.0 + IL_04d2: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_04d7: ldstr "Tahoma" + IL_04dc: ldc.r4 8. + IL_04e1: ldc.i4.1 + IL_04e2: ldc.i4.3 + IL_04e3: ldc.i4 0xee + IL_04e8: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_04ed: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + IL_04f2: nop + .line 120,120 : 13,70 '' + IL_04f3: ldarg.0 + IL_04f4: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_04f9: ldc.i4.s 18 + IL_04fb: ldc.i4 0xac + IL_0500: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0505: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_050a: nop + .line 121,121 : 13,41 '' + IL_050b: ldarg.0 + IL_050c: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_0511: ldstr "label1" + IL_0516: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_051b: nop + .line 122,122 : 13,65 '' + IL_051c: ldarg.0 + IL_051d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_0522: ldc.i4 0xef + IL_0527: ldc.i4.s 13 + IL_0529: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_052e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_0533: nop + .line 123,123 : 13,38 '' + IL_0534: ldarg.0 + IL_0535: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_053a: ldc.i4.5 + IL_053b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_0540: nop + .line 124,124 : 13,74 '' + IL_0541: ldarg.0 + IL_0542: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_0547: ldstr "Hyphen uses these 3rd party assemblies:" + IL_054c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_0551: nop + .line 128,128 : 13,79 '' + IL_0552: ldarg.0 + IL_0553: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0558: ldc.i4.0 + IL_0559: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListBox::set_BorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.BorderStyle) + IL_055e: nop + .line 129,129 : 13,52 '' + IL_055f: ldarg.0 + IL_0560: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0565: ldc.i4.1 + IL_0566: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListControl::set_FormattingEnabled(bool) + IL_056b: nop + .line 130,131 : 13,48 '' + IL_056c: ldarg.0 + IL_056d: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0572: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListBox/ObjectCollection [System.Windows.Forms]System.Windows.Forms.ListBox::get_Items() + IL_0577: ldc.i4.1 + IL_0578: newarr [mscorlib]System.Object + IL_057d: stloc.1 + IL_057e: ldloc.1 + IL_057f: ldc.i4.0 + IL_0580: ldstr bytearray (52 00 69 00 62 00 62 00 6F 00 6E 00 50 00 61 00 // R.i.b.b.o.n.P.a. + 6E 00 65 00 6C 00 2C 00 20 00 A9 00 20 00 4A 00 // n.e.l.,. ... .J. + 75 00 61 00 6E 00 20 00 50 00 61 00 62 00 6C 00 // u.a.n. .P.a.b.l. + 6F 00 20 00 47 00 2E 00 43 00 2E 00 ) // o. .G...C... + IL_0585: stelem.ref + IL_0586: ldloc.1 + IL_0587: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListBox/ObjectCollection::AddRange(object[]) + IL_058c: nop + .line 132,132 : 13,72 '' + IL_058d: ldarg.0 + IL_058e: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0593: ldc.i4.s 33 + IL_0595: ldc.i4 0xbc + IL_059a: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_059f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + IL_05a4: nop + .line 133,133 : 13,45 '' + IL_05a5: ldarg.0 + IL_05a6: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_05ab: ldstr "listBox1" + IL_05b0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_05b5: nop + .line 134,134 : 13,83 '' + IL_05b6: ldarg.0 + IL_05b7: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_05bc: ldc.i4.0 + IL_05bd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListBox::set_SelectionMode(valuetype [System.Windows.Forms]System.Windows.Forms.SelectionMode) + IL_05c2: nop + .line 135,135 : 13,68 '' + IL_05c3: ldarg.0 + IL_05c4: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_05c9: ldc.i4 0xe0 + IL_05ce: ldc.i4.s 104 + IL_05d0: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_05d5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + IL_05da: nop + .line 136,136 : 13,41 '' + IL_05db: ldarg.0 + IL_05dc: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_05e1: ldc.i4.1 + IL_05e2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListBox::set_Sorted(bool) + IL_05e7: nop + .line 137,137 : 13,40 '' + IL_05e8: ldarg.0 + IL_05e9: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_05ee: ldc.i4.6 + IL_05ef: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + IL_05f4: nop + .line 141,141 : 13,74 '' + IL_05f5: ldarg.0 + IL_05f6: ldc.r4 6. + IL_05fb: ldc.r4 13. + IL_0600: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_0605: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + IL_060a: nop + .line 142,142 : 13,74 '' + IL_060b: ldarg.0 + IL_060c: ldc.i4.1 + IL_060d: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + IL_0612: nop + .line 143,143 : 13,46 '' + IL_0613: ldarg.0 + IL_0614: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0619: ldarg.0 + IL_061a: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_061f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0624: nop + .line 144,144 : 13,44 '' + IL_0625: ldarg.0 + IL_0626: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_062b: ldarg.0 + IL_062c: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_0631: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0636: nop + .line 145,145 : 13,49 '' + IL_0637: ldarg.0 + IL_0638: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_063d: ldarg.0 + IL_063e: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_0643: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0648: nop + .line 146,146 : 13,50 '' + IL_0649: ldarg.0 + IL_064a: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_064f: ldarg.0 + IL_0650: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_0655: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_065a: nop + .line 147,147 : 13,50 '' + IL_065b: ldarg.0 + IL_065c: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0661: ldarg.0 + IL_0662: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_0667: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_066c: nop + .line 148,148 : 13,58 '' + IL_066d: ldarg.0 + IL_066e: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0673: ldarg.0 + IL_0674: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0679: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_067e: nop + .line 149,149 : 13,44 '' + IL_067f: ldarg.0 + IL_0680: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0685: ldarg.0 + IL_0686: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_068b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_0690: nop + .line 150,150 : 13,44 '' + IL_0691: ldarg.0 + IL_0692: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0697: ldarg.0 + IL_0698: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_069d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + IL_06a2: nop + .line 151,151 : 13,40 '' + IL_06a3: ldarg.0 + IL_06a4: ldstr "AboutContent" + IL_06a9: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + IL_06ae: nop + .line 152,152 : 13,86 '' + IL_06af: ldarg.0 + IL_06b0: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_06b5: callvirt instance void [System]System.ComponentModel.ISupportInitialize::EndInit() + IL_06ba: nop + .line 153,153 : 13,38 '' + IL_06bb: ldarg.0 + IL_06bc: ldc.i4.0 + IL_06bd: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + IL_06c2: nop + .line 154,154 : 13,34 '' + IL_06c3: ldarg.0 + IL_06c4: call instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + IL_06c9: nop + .line 156,156 : 9,10 '' + IL_06ca: ret + } // end of method AboutContent::InitializeComponent + +} // end of class Virtuoso.Hyphen.Configuration.Controls.AboutContent + +.class public abstract auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + extends [mscorlib]System.Object +{ + .field private static initonly object SyncObject + .field private static initonly class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Stores + .field private static initonly class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Encryptions + .field assembly initonly class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues values + .field private bool isDirty + .field private notserialized class [mscorlib]System.EventHandler ConfigurationChanged + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 47,47 : 9,40 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\PluginConfiguration.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 48,48 : 9,10 '' + IL_0007: nop + .line 49,49 : 13,48 '' + IL_0008: ldarg.0 + IL_0009: newobj instance void Virtuoso.Miranda.Plugins.Collections.ConfigurationValues::.ctor() + IL_000e: stfld class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::values + .line 50,50 : 9,10 '' + IL_0013: nop + IL_0014: ret + } // end of method PluginConfiguration::.ctor + + .method family hidebysig newslot virtual + instance void InitializeDefaultConfiguration() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 52,52 : 65,66 '' + IL_0000: nop + .line 52,52 : 67,68 '' + IL_0001: ret + } // end of method PluginConfiguration::InitializeDefaultConfiguration + + .method public hidebysig specialname instance void + add_ConfigurationChanged(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method PluginConfiguration::add_ConfigurationChanged + + .method public hidebysig specialname instance void + remove_ConfigurationChanged(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2, + bool V_3) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: ceq + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.3 + IL_002c: ldloc.3 + IL_002d: brtrue.s IL_0007 + + IL_002f: ret + } // end of method PluginConfiguration::remove_ConfigurationChanged + + .method family hidebysig instance void + RaiseChangedEvent() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] bool CS$4$0000) + .line 62,62 : 9,10 '' + IL_0000: nop + .line 63,63 : 13,46 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_0007: ldnull + IL_0008: ceq + IL_000a: stloc.0 + IL_000b: ldloc.0 + IL_000c: brtrue.s IL_0020 + + .line 64,64 : 17,61 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_0014: ldarg.0 + IL_0015: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_001a: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + IL_001f: nop + .line 65,65 : 9,10 '' + IL_0020: ret + } // end of method PluginConfiguration::RaiseChangedEvent + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues + get_Values() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues CS$1$0000) + .line 74,74 : 13,14 '' + IL_0000: nop + .line 75,75 : 17,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::values + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 76,76 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginConfiguration::get_Values + + .method public hidebysig specialname instance bool + get_IsDirty() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 82,82 : 13,14 '' + IL_0000: nop + .line 83,83 : 17,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::isDirty + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 84,84 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginConfiguration::get_IsDirty + + .method famorassem hidebysig specialname + instance void set_IsDirty(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 86,86 : 13,14 '' + IL_0000: nop + .line 87,87 : 17,33 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::isDirty + .line 88,88 : 13,14 '' + IL_0008: ret + } // end of method PluginConfiguration::set_IsDirty + + .method family hidebysig newslot virtual + instance void OnBeforeSerialization() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 95,95 : 56,57 '' + IL_0000: nop + .line 95,95 : 58,59 '' + IL_0001: ret + } // end of method PluginConfiguration::OnBeforeSerialization + + .method family hidebysig newslot virtual + instance void OnAfterDeserialization() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 97,97 : 57,58 '' + IL_0000: nop + .line 97,97 : 59,60 '' + IL_0001: ret + } // end of method PluginConfiguration::OnAfterDeserialization + + .method family hidebysig instance void + MarkDirty() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 100,100 : 9,10 '' + IL_0000: nop + .line 101,101 : 13,28 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::set_IsDirty(bool) + IL_0008: nop + .line 102,102 : 13,33 '' + IL_0009: ldarg.0 + IL_000a: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::RaiseChangedEvent() + IL_000f: nop + .line 103,103 : 9,10 '' + IL_0010: ret + } // end of method PluginConfiguration::MarkDirty + + .method private hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + GetOptions(class [mscorlib]System.Type configType) cil managed + { + // Code size 86 (0x56) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options, + [1] class [mscorlib]System.Type configAttribType, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute CS$1$0000, + [3] bool CS$4$0001) + .line 108,108 : 9,10 '' + IL_0000: nop + .line 109,109 : 13,36 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.3 + IL_0009: ldloc.3 + IL_000a: brtrue.s IL_0017 + + .line 110,110 : 17,63 '' + IL_000c: ldstr "configType" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 112,112 : 13,58 '' + IL_0017: ldnull + IL_0018: stloc.0 + .line 113,113 : 13,75 '' + IL_0019: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + IL_001e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0023: stloc.1 + .line 115,115 : 13,63 '' + IL_0024: ldarg.0 + IL_0025: ldloc.1 + IL_0026: ldc.i4.0 + IL_0027: callvirt instance bool [mscorlib]System.Reflection.MemberInfo::IsDefined(class [mscorlib]System.Type, + bool) + IL_002c: ldc.i4.0 + IL_002d: ceq + IL_002f: stloc.3 + IL_0030: ldloc.3 + IL_0031: brtrue.s IL_0045 + + .line 116,116 : 17,117 '' + IL_0033: ldarg.0 + IL_0034: ldloc.1 + IL_0035: ldc.i4.0 + IL_0036: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_003b: ldc.i4.0 + IL_003c: ldelem.ref + IL_003d: castclass Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + IL_0042: stloc.0 + IL_0043: br.s IL_004b + + .line 118,118 : 17,63 '' + IL_0045: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor() + IL_004a: stloc.0 + .line 120,120 : 13,39 '' + IL_004b: ldloc.0 + IL_004c: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::Finalize() + IL_0051: stloc.2 + IL_0052: br.s IL_0054 + + .line 121,121 : 9,10 '' + IL_0054: ldloc.2 + IL_0055: ret + } // end of method PluginConfiguration::GetOptions + + .method private hidebysig static uint8[] + FetchStream(class [mscorlib]System.IO.Stream 'stream') cil managed + { + // Code size 88 (0x58) + .maxstack 4 + .locals init ([0] uint8[] buffer, + [1] uint8[] CS$1$0000, + [2] bool CS$4$0001) + .line 124,124 : 9,10 '' + IL_0000: nop + .line 125,125 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 126,126 : 17,59 '' + IL_000c: ldstr "stream" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 128,128 : 13,33 '' + IL_0017: ldarg.0 + IL_0018: callvirt instance bool [mscorlib]System.IO.Stream::get_CanRead() + IL_001d: stloc.2 + IL_001e: ldloc.2 + IL_001f: brtrue.s IL_0027 + + .line 129,129 : 17,47 '' + IL_0021: newobj instance void [mscorlib]System.ArgumentException::.ctor() + IL_0026: throw + + .line 131,131 : 13,53 '' + IL_0027: ldarg.0 + IL_0028: callvirt instance int64 [mscorlib]System.IO.Stream::get_Length() + IL_002d: conv.ovf.i + IL_002e: newarr [mscorlib]System.Byte + IL_0033: stloc.0 + .line 133,133 : 13,72 '' + IL_0034: ldarg.0 + IL_0035: ldloc.0 + IL_0036: ldc.i4.0 + IL_0037: ldloc.0 + IL_0038: ldlen + IL_0039: conv.i4 + IL_003a: callvirt instance int32 [mscorlib]System.IO.Stream::Read(uint8[], + int32, + int32) + IL_003f: conv.i8 + IL_0040: ldarg.0 + IL_0041: callvirt instance int64 [mscorlib]System.IO.Stream::get_Length() + IL_0046: ceq + IL_0048: stloc.2 + IL_0049: ldloc.2 + IL_004a: brtrue.s IL_0052 + + .line 134,134 : 17,41 '' + IL_004c: newobj instance void [mscorlib]System.IO.IOException::.ctor() + IL_0051: throw + + .line 136,136 : 13,27 '' + IL_0052: ldloc.0 + IL_0053: stloc.1 + IL_0054: br.s IL_0056 + + .line 137,137 : 9,10 '' + IL_0056: ldloc.1 + IL_0057: ret + } // end of method PluginConfiguration::FetchStream + + .method assembly hidebysig static void + FlushCaches() cil managed + { + // Code size 113 (0x71) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.IStorage 'storage', + [1] object CS$2$0000, + [2] valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator CS$5$0001, + [3] bool CS$4$0002) + .line 140,140 : 9,10 '' + IL_0000: nop + .line 141,141 : 13,30 '' + IL_0001: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SyncObject + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000d: nop + .line 142,142 : 13,14 '' + .try + { + IL_000e: nop + .line 143,143 : 17,24 '' + IL_000f: nop + .line 143,143 : 46,59 '' + IL_0010: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Stores + IL_0015: callvirt instance class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection class [mscorlib]System.Collections.Generic.Dictionary`2::get_Values() + IL_001a: callvirt instance valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection::GetEnumerator() + IL_001f: stloc.2 + .try + { + IL_0020: br.s IL_0031 + + .line 143,143 : 26,42 '' + IL_0022: ldloca.s CS$5$0001 + IL_0024: call instance !1 valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::get_Current() + IL_0029: stloc.0 + .line 144,144 : 21,39 '' + IL_002a: ldloc.0 + IL_002b: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0030: nop + .line 143,143 : 43,45 '' + IL_0031: ldloca.s CS$5$0001 + IL_0033: call instance bool valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::MoveNext() + IL_0038: stloc.3 + IL_0039: ldloc.3 + IL_003a: brtrue.s IL_0022 + + IL_003c: leave.s IL_004d + + } // end .try + finally + { + IL_003e: ldloca.s CS$5$0001 + IL_0040: constrained. valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator + IL_0046: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_004b: nop + IL_004c: endfinally + } // end handler + IL_004d: nop + .line 146,146 : 17,32 '' + IL_004e: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Stores + IL_0053: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + IL_0058: nop + .line 147,147 : 17,37 '' + IL_0059: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Encryptions + IL_005e: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + IL_0063: nop + .line 148,148 : 13,14 '' + IL_0064: nop + IL_0065: leave.s IL_006f + + } // end .try + finally + { + IL_0067: ldloc.1 + IL_0068: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_006d: nop + IL_006e: endfinally + } // end handler + IL_006f: nop + .line 149,149 : 9,10 '' + IL_0070: ret + } // end of method PluginConfiguration::FlushCaches + + .method public hidebysig instance void + Save() cil managed + { + // Code size 118 (0x76) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options, + [1] class Virtuoso.Miranda.Plugins.Configuration.IStorage 'storage', + [2] class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageException isE, + [3] object CS$2$0000, + [4] bool CS$4$0001) + .line 156,156 : 9,10 '' + IL_0000: nop + .line 158,158 : 13,14 '' + .try + { + IL_0001: nop + .line 159,159 : 17,34 '' + IL_0002: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SyncObject + IL_0007: dup + IL_0008: stloc.3 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000e: nop + .line 160,160 : 17,18 '' + .try + { + IL_000f: nop + .line 161,161 : 21,45 '' + IL_0010: ldarg.0 + IL_0011: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::OnBeforeSerialization() + IL_0016: nop + .line 163,163 : 21,83 '' + IL_0017: ldarg.0 + IL_0018: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_001d: call class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetOptions(class [mscorlib]System.Type) + IL_0022: stloc.0 + .line 164,164 : 21,76 '' + IL_0023: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Stores + IL_0028: ldloc.0 + IL_0029: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Storage() + IL_002e: callvirt instance !0 class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::Instantiate(class [mscorlib]System.Type) + IL_0033: stloc.1 + .line 166,166 : 21,41 '' + IL_0034: ldloc.0 + IL_0035: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encrypt() + IL_003a: ldc.i4.0 + IL_003b: ceq + IL_003d: stloc.s CS$4$0001 + IL_003f: ldloc.s CS$4$0001 + IL_0041: brtrue.s IL_004e + + .line 167,167 : 25,62 '' + IL_0043: ldarg.0 + IL_0044: ldloc.1 + IL_0045: ldloc.0 + IL_0046: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SerializeEncrypted(class Virtuoso.Miranda.Plugins.Configuration.IStorage, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_004b: nop + IL_004c: br.s IL_0057 + + .line 169,169 : 25,53 '' + IL_004e: ldarg.0 + IL_004f: ldloc.1 + IL_0050: ldloc.0 + IL_0051: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Serialize(class Virtuoso.Miranda.Plugins.Configuration.IStorage, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0056: nop + .line 170,170 : 17,18 '' + IL_0057: nop + IL_0058: leave.s IL_0062 + + } // end .try + finally + { + IL_005a: ldloc.3 + IL_005b: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0060: nop + IL_0061: endfinally + } // end handler + IL_0062: nop + .line 171,171 : 13,14 '' + IL_0063: nop + IL_0064: leave.s IL_0074 + + .line 172,172 : 13,49 '' + } // end .try + catch [mscorlib]System.IO.IsolatedStorage.IsolatedStorageException + { + IL_0066: stloc.2 + .line 173,173 : 13,14 '' + IL_0067: nop + .line 174,174 : 17,122 '' + IL_0068: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToSaveConfiguration_StorageError() + IL_006d: ldloc.2 + IL_006e: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor(string, + class [mscorlib]System.Exception) + IL_0073: throw + + } // end handler + IL_0074: nop + .line 176,176 : 9,10 '' + IL_0075: ret + } // end of method PluginConfiguration::Save + + .method private hidebysig instance void + Serialize(class Virtuoso.Miranda.Plugins.Configuration.IStorage 'storage', + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 50 (0x32) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter serializer, + [1] class [mscorlib]System.IO.Stream 'stream', + [2] bool CS$4$0000) + .line 179,179 : 9,10 '' + IL_0000: nop + .line 180,180 : 13,64 '' + IL_0001: newobj instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::.ctor() + IL_0006: stloc.0 + .line 182,182 : 20,73 '' + IL_0007: ldarg.1 + IL_0008: ldarg.0 + IL_0009: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_000e: ldarg.2 + IL_000f: callvirt instance class [mscorlib]System.IO.Stream Virtuoso.Miranda.Plugins.Configuration.IStorage::OpenWrite(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0014: stloc.1 + .line 183,183 : 17,52 '' + .try + { + IL_0015: ldloc.0 + IL_0016: ldloc.1 + IL_0017: ldarg.0 + IL_0018: callvirt instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::Serialize(class [mscorlib]System.IO.Stream, + object) + IL_001d: nop + IL_001e: leave.s IL_0030 + + } // end .try + finally + { + IL_0020: ldloc.1 + IL_0021: ldnull + IL_0022: ceq + IL_0024: stloc.2 + IL_0025: ldloc.2 + IL_0026: brtrue.s IL_002f + + IL_0028: ldloc.1 + IL_0029: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_002e: nop + IL_002f: endfinally + } // end handler + IL_0030: nop + .line 184,184 : 9,10 '' + IL_0031: ret + } // end of method PluginConfiguration::Serialize + + .method private hidebysig instance void + SerializeEncrypted(class Virtuoso.Miranda.Plugins.Configuration.IStorage 'storage', + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 142 (0x8e) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.IEncryption encryption, + [1] class [mscorlib]System.IO.Stream serializationStream, + [2] uint8[] data, + [3] uint8[] protectedData, + [4] class [mscorlib]System.IO.Stream 'stream', + [5] bool CS$4$0000) + .line 187,187 : 9,10 '' + IL_0000: nop + .line 188,188 : 13,82 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Encryptions + IL_0006: ldarg.2 + IL_0007: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encryption() + IL_000c: callvirt instance !0 class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::Instantiate(class [mscorlib]System.Type) + IL_0011: stloc.0 + .line 190,190 : 20,71 '' + IL_0012: ldc.i4 0x800 + IL_0017: newobj instance void [mscorlib]System.IO.MemoryStream::.ctor(int32) + IL_001c: stloc.1 + .line 191,191 : 13,14 '' + .try + { + IL_001d: nop + .line 192,192 : 17,76 '' + IL_001e: newobj instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::.ctor() + IL_0023: ldloc.1 + IL_0024: ldarg.0 + IL_0025: call instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::Serialize(class [mscorlib]System.IO.Stream, + object) + IL_002a: nop + .line 193,193 : 17,63 '' + IL_002b: ldloc.1 + IL_002c: ldc.i4.0 + IL_002d: conv.i8 + IL_002e: ldc.i4.0 + IL_002f: callvirt instance int64 [mscorlib]System.IO.Stream::Seek(int64, + valuetype [mscorlib]System.IO.SeekOrigin) + IL_0034: pop + .line 195,195 : 17,64 '' + IL_0035: ldloc.1 + IL_0036: call uint8[] Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::FetchStream(class [mscorlib]System.IO.Stream) + IL_003b: stloc.2 + .line 196,196 : 17,65 '' + IL_003c: ldloc.0 + IL_003d: ldloc.2 + IL_003e: callvirt instance uint8[] Virtuoso.Miranda.Plugins.Configuration.IEncryption::Encrypt(uint8[]) + IL_0043: stloc.3 + .line 198,198 : 24,77 '' + IL_0044: ldarg.1 + IL_0045: ldarg.0 + IL_0046: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_004b: ldarg.2 + IL_004c: callvirt instance class [mscorlib]System.IO.Stream Virtuoso.Miranda.Plugins.Configuration.IStorage::OpenWrite(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0051: stloc.s 'stream' + .line 199,199 : 21,74 '' + .try + { + IL_0053: ldloc.s 'stream' + IL_0055: ldloc.3 + IL_0056: ldc.i4.0 + IL_0057: ldloc.3 + IL_0058: ldlen + IL_0059: conv.i4 + IL_005a: callvirt instance void [mscorlib]System.IO.Stream::Write(uint8[], + int32, + int32) + IL_005f: nop + IL_0060: leave.s IL_0076 + + } // end .try + finally + { + IL_0062: ldloc.s 'stream' + IL_0064: ldnull + IL_0065: ceq + IL_0067: stloc.s CS$4$0000 + IL_0069: ldloc.s CS$4$0000 + IL_006b: brtrue.s IL_0075 + + IL_006d: ldloc.s 'stream' + IL_006f: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0074: nop + IL_0075: endfinally + } // end handler + IL_0076: nop + .line 200,200 : 13,14 '' + IL_0077: nop + IL_0078: leave.s IL_008c + + } // end .try + finally + { + IL_007a: ldloc.1 + IL_007b: ldnull + IL_007c: ceq + IL_007e: stloc.s CS$4$0000 + IL_0080: ldloc.s CS$4$0000 + IL_0082: brtrue.s IL_008b + + IL_0084: ldloc.1 + IL_0085: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_008a: nop + IL_008b: endfinally + } // end handler + IL_008c: nop + .line 201,201 : 9,10 '' + IL_008d: ret + } // end of method PluginConfiguration::SerializeEncrypted + + .method public hidebysig static !!T Load<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) T>() cil managed + { + // Code size 234 (0xea) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Type configType, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options, + [2] class Virtuoso.Miranda.Plugins.Configuration.IStorage 'storage', + [3] class [mscorlib]System.IO.Stream 'stream', + [4] !!T result, + [5] class [mscorlib]System.OperationCanceledException e, + [6] class [mscorlib]System.Exception V_6, + [7] !!T defaults, + [8] !!T CS$1$0000, + [9] object CS$2$0001, + [10] bool CS$4$0002) + .line 208,208 : 9,10 '' + IL_0000: nop + .line 210,210 : 13,14 '' + .try + { + IL_0001: nop + .line 211,211 : 17,34 '' + IL_0002: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SyncObject + IL_0007: dup + IL_0008: stloc.s CS$2$0001 + IL_000a: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_000f: nop + .line 212,212 : 17,18 '' + .try + { + IL_0010: nop + .line 213,213 : 21,49 '' + IL_0011: ldtoken !!T + IL_0016: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_001b: stloc.0 + .line 214,214 : 21,84 '' + IL_001c: ldloc.0 + IL_001d: call class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetOptions(class [mscorlib]System.Type) + IL_0022: stloc.1 + .line 216,216 : 21,76 '' + IL_0023: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Stores + IL_0028: ldloc.1 + IL_0029: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Storage() + IL_002e: callvirt instance !0 class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::Instantiate(class [mscorlib]System.Type) + IL_0033: stloc.2 + .line 218,218 : 21,62 '' + IL_0034: ldloc.2 + IL_0035: ldloc.0 + IL_0036: ldloc.1 + IL_0037: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.IStorage::Exists(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_003c: stloc.s CS$4$0002 + IL_003e: ldloc.s CS$4$0002 + IL_0040: brtrue.s IL_004e + + .line 219,219 : 25,61 '' + IL_0042: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration() + IL_0047: stloc.s CS$1$0000 + IL_0049: leave IL_00e6 + + .line 221,221 : 28,81 '' + IL_004e: ldloc.2 + IL_004f: ldloc.0 + IL_0050: ldloc.1 + IL_0051: callvirt instance class [mscorlib]System.IO.Stream Virtuoso.Miranda.Plugins.Configuration.IStorage::OpenRead(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0056: stloc.3 + .line 222,222 : 21,22 '' + .try + { + IL_0057: nop + .line 223,223 : 25,41 '' + IL_0058: ldloca.s result + IL_005a: initobj !!T + .line 225,225 : 25,45 '' + IL_0060: ldloc.1 + IL_0061: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encrypt() + IL_0066: ldc.i4.0 + IL_0067: ceq + IL_0069: stloc.s CS$4$0002 + IL_006b: ldloc.s CS$4$0002 + IL_006d: brtrue.s IL_007a + + .line 226,226 : 29,79 '' + IL_006f: ldloc.3 + IL_0070: ldloc.1 + IL_0071: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::DeserializeEncrypted(class [mscorlib]System.IO.Stream, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0076: stloc.s result + IL_0078: br.s IL_0082 + + .line 228,228 : 29,61 '' + IL_007a: ldloc.3 + IL_007b: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Deserialize(class [mscorlib]System.IO.Stream) + IL_0080: stloc.s result + .line 230,230 : 25,57 '' + IL_0082: ldloca.s result + IL_0084: constrained. !!T + IL_008a: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::OnAfterDeserialization() + IL_008f: nop + .line 231,231 : 25,39 '' + IL_0090: ldloc.s result + IL_0092: stloc.s CS$1$0000 + IL_0094: leave.s IL_00e6 + + } // end .try + finally + { + IL_0096: ldloc.3 + IL_0097: ldnull + IL_0098: ceq + IL_009a: stloc.s CS$4$0002 + IL_009c: ldloc.s CS$4$0002 + IL_009e: brtrue.s IL_00a7 + + IL_00a0: ldloc.3 + IL_00a1: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_00a6: nop + IL_00a7: endfinally + } // end handler + } // end .try + finally + { + IL_00a8: ldloc.s CS$2$0001 + IL_00aa: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00af: nop + IL_00b0: endfinally + .line 235,235 : 13,49 '' + } // end handler + } // end .try + catch [mscorlib]System.OperationCanceledException + { + IL_00b1: stloc.s e + .line 236,236 : 13,14 '' + IL_00b3: nop + .line 237,237 : 17,120 '' + IL_00b4: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToLoadConfiguration_StorageError() + IL_00b9: ldloc.s e + IL_00bb: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor(string, + class [mscorlib]System.Exception) + IL_00c0: throw + + .line 239,239 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_00c1: stloc.s V_6 + .line 240,240 : 13,14 '' + IL_00c3: nop + .line 241,241 : 17,59 '' + IL_00c4: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration() + IL_00c9: stloc.s defaults + .line 242,242 : 17,33 '' + IL_00cb: ldloca.s defaults + IL_00cd: constrained. !!T + IL_00d3: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save() + IL_00d8: nop + .line 244,244 : 17,120 '' + IL_00d9: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToLoadConfiguration_StorageError() + IL_00de: ldloc.s V_6 + IL_00e0: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor(string, + class [mscorlib]System.Exception) + IL_00e5: throw + + } // end handler + IL_00e6: nop + .line 246,246 : 9,10 '' + IL_00e7: ldloc.s CS$1$0000 + IL_00e9: ret + } // end of method PluginConfiguration::Load + + .method private hidebysig static !!T Deserialize<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) T>(class [mscorlib]System.IO.Stream 'stream') cil managed + { + // Code size 27 (0x1b) + .maxstack 2 + .locals init ([0] !!T CS$1$0000) + .line 249,249 : 9,10 '' + IL_0000: nop + .line 250,250 : 13,67 '' + IL_0001: newobj instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::.ctor() + IL_0006: ldarg.0 + IL_0007: call instance object [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::Deserialize(class [mscorlib]System.IO.Stream) + IL_000c: isinst !!T + IL_0011: unbox.any !!T + IL_0016: stloc.0 + IL_0017: br.s IL_0019 + + .line 251,251 : 9,10 '' + IL_0019: ldloc.0 + IL_001a: ret + } // end of method PluginConfiguration::Deserialize + + .method private hidebysig static !!T DeserializeEncrypted<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) T>(class [mscorlib]System.IO.Stream 'stream', + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 83 (0x53) + .maxstack 2 + .locals init ([0] uint8[] protectedData, + [1] uint8[] data, + [2] class [mscorlib]System.IO.Stream serializedStream, + [3] !!T CS$1$0000, + [4] bool CS$4$0001) + .line 254,254 : 9,10 '' + IL_0000: nop + .line 255,255 : 13,56 '' + IL_0001: ldarg.0 + IL_0002: call uint8[] Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::FetchStream(class [mscorlib]System.IO.Stream) + IL_0007: stloc.0 + .line 256,256 : 13,94 '' + IL_0008: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Encryptions + IL_000d: ldarg.1 + IL_000e: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encryption() + IL_0013: callvirt instance !0 class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::Instantiate(class [mscorlib]System.Type) + IL_0018: ldloc.0 + IL_0019: callvirt instance uint8[] Virtuoso.Miranda.Plugins.Configuration.IEncryption::Decrypt(uint8[]) + IL_001e: stloc.1 + .line 258,258 : 20,68 '' + IL_001f: ldloc.1 + IL_0020: newobj instance void [mscorlib]System.IO.MemoryStream::.ctor(uint8[]) + IL_0025: stloc.2 + .line 259,259 : 17,81 '' + .try + { + IL_0026: newobj instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::.ctor() + IL_002b: ldloc.2 + IL_002c: call instance object [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::Deserialize(class [mscorlib]System.IO.Stream) + IL_0031: isinst !!T + IL_0036: unbox.any !!T + IL_003b: stloc.3 + IL_003c: leave.s IL_0050 + + } // end .try + finally + { + IL_003e: ldloc.2 + IL_003f: ldnull + IL_0040: ceq + IL_0042: stloc.s CS$4$0001 + IL_0044: ldloc.s CS$4$0001 + IL_0046: brtrue.s IL_004f + + IL_0048: ldloc.2 + IL_0049: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_004e: nop + IL_004f: endfinally + } // end handler + IL_0050: nop + .line 260,260 : 9,10 '' + IL_0051: ldloc.3 + IL_0052: ret + } // end of method PluginConfiguration::DeserializeEncrypted + + .method public hidebysig static !!TConfig + GetDefaultConfiguration<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) TConfig>() cil managed + { + // Code size 70 (0x46) + .maxstack 2 + .locals init ([0] !!TConfig result, + [1] !!TConfig CS$1$0000, + [2] bool CS$4$0001) + .line 263,263 : 9,10 '' + IL_0000: nop + .line 264,264 : 13,89 '' + IL_0001: ldtoken !!TConfig + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: ldc.i4.1 + IL_000c: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type, + bool) + IL_0011: isinst !!TConfig + IL_0016: unbox.any !!TConfig + IL_001b: stloc.0 + .line 266,266 : 13,32 '' + IL_001c: ldloc.0 + IL_001d: box !!TConfig + IL_0022: ldnull + IL_0023: ceq + IL_0025: ldc.i4.0 + IL_0026: ceq + IL_0028: stloc.2 + IL_0029: ldloc.2 + IL_002a: brtrue.s IL_0032 + + .line 267,267 : 17,52 '' + IL_002c: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor() + IL_0031: throw + + .line 269,269 : 13,53 '' + IL_0032: ldloca.s result + IL_0034: constrained. !!TConfig + IL_003a: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::InitializeDefaultConfiguration() + IL_003f: nop + .line 270,270 : 13,27 '' + IL_0040: ldloc.0 + IL_0041: stloc.1 + IL_0042: br.s IL_0044 + + .line 271,271 : 9,10 '' + IL_0044: ldloc.1 + IL_0045: ret + } // end of method PluginConfiguration::GetDefaultConfiguration + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 31 (0x1f) + .maxstack 8 + .line 34,34 : 9,66 '' + IL_0000: newobj instance void [mscorlib]System.Object::.ctor() + IL_0005: stsfld object Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SyncObject + .line 36,36 : 9,104 '' + IL_000a: newobj instance void class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::.ctor() + IL_000f: stsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Stores + .line 37,37 : 9,115 '' + IL_0014: newobj instance void class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::.ctor() + IL_0019: stsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Encryptions + IL_001e: ret + } // end of method PluginConfiguration::.cctor + + .event [mscorlib]System.EventHandler ConfigurationChanged + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::add_ConfigurationChanged(class [mscorlib]System.EventHandler) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::remove_ConfigurationChanged(class [mscorlib]System.EventHandler) + } // end of event PluginConfiguration::ConfigurationChanged + .property instance class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues + Values() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::get_Values() + } // end of property PluginConfiguration::Values + .property instance bool IsDirty() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::get_IsDirty() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::set_IsDirty(bool) + } // end of property PluginConfiguration::IsDirty +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + +.class private auto ansi serializable sealed beforefieldinit Virtuoso.Hyphen.Configuration.RuntimeConfiguration + extends Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration +{ + .custom instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor(string) = ( 01 00 07 30 2E 30 2E 30 2E 36 02 00 54 02 07 45 // ...0.0.0.6..T..E + 6E 63 72 79 70 74 00 54 02 0C 50 72 6F 66 69 6C // ncrypt.T..Profil + 65 42 6F 75 6E 64 00 ) // eBound. + .field private static class Virtuoso.Hyphen.Configuration.RuntimeConfiguration singleton + .field private string customFusionAssemblyName + .field private string customAssemblyProbeTypeName + .field private string customPluginManagerTypeName + .field private bool loadPluginsOnStartup + .field private bool lazyUnload + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 41,41 : 9,39 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Configuration\\RuntimeConfiguration.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::.ctor() + IL_0006: nop + .line 41,41 : 40,41 '' + IL_0007: nop + .line 41,41 : 42,43 '' + IL_0008: nop + IL_0009: ret + } // end of method RuntimeConfiguration::.ctor + + .method public hidebysig specialname static + class Virtuoso.Hyphen.Configuration.RuntimeConfiguration + get_Singleton() cil managed + { + // Code size 37 (0x25) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Configuration.RuntimeConfiguration CS$1$0000, + [1] bool CS$4$0001) + .line 46,46 : 13,14 '' + IL_0000: nop + .line 47,47 : 17,39 '' + IL_0001: ldsfld class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::singleton + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: stloc.1 + IL_000d: ldloc.1 + IL_000e: brtrue.s IL_001b + + .line 48,48 : 21,91 '' + IL_0010: ldstr "Configuration not initialized." + IL_0015: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001a: throw + + .line 50,50 : 17,34 '' + IL_001b: ldsfld class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::singleton + IL_0020: stloc.0 + IL_0021: br.s IL_0023 + + .line 51,51 : 13,14 '' + IL_0023: ldloc.0 + IL_0024: ret + } // end of method RuntimeConfiguration::get_Singleton + + .method public hidebysig specialname static + bool get_Initialized() cil managed + { + // Code size 17 (0x11) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 57,57 : 13,14 '' + IL_0000: nop + .line 58,58 : 17,42 '' + IL_0001: ldsfld class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::singleton + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 59,59 : 13,14 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method RuntimeConfiguration::get_Initialized + + .method family hidebysig virtual instance void + InitializeDefaultConfiguration() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 63,63 : 9,10 '' + IL_0000: nop + .line 64,64 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: stfld bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::lazyUnload + .line 65,65 : 9,10 '' + IL_0008: ret + } // end of method RuntimeConfiguration::InitializeDefaultConfiguration + + .method public hidebysig specialname instance string + get_CustomPluginManagerTypeName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 73,73 : 17,18 '' + IL_0000: nop + .line 73,73 : 19,54 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customPluginManagerTypeName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 73,73 : 55,56 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method RuntimeConfiguration::get_CustomPluginManagerTypeName + + .method public hidebysig specialname instance void + set_CustomPluginManagerTypeName(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 74,74 : 17,18 '' + IL_0000: nop + .line 74,74 : 19,55 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customPluginManagerTypeName + .line 74,74 : 56,57 '' + IL_0008: ret + } // end of method RuntimeConfiguration::set_CustomPluginManagerTypeName + + .method public hidebysig specialname instance string + get_CustomAssemblyProbeTypeName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 79,79 : 17,18 '' + IL_0000: nop + .line 79,79 : 19,54 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customAssemblyProbeTypeName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 79,79 : 55,56 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method RuntimeConfiguration::get_CustomAssemblyProbeTypeName + + .method public hidebysig specialname instance void + set_CustomAssemblyProbeTypeName(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 80,80 : 17,18 '' + IL_0000: nop + .line 80,80 : 19,55 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customAssemblyProbeTypeName + .line 80,80 : 56,57 '' + IL_0008: ret + } // end of method RuntimeConfiguration::set_CustomAssemblyProbeTypeName + + .method public hidebysig specialname instance string + get_CustomFusionAssemblyName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 85,85 : 17,18 '' + IL_0000: nop + .line 85,85 : 19,51 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customFusionAssemblyName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 85,85 : 52,53 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method RuntimeConfiguration::get_CustomFusionAssemblyName + + .method public hidebysig specialname instance void + set_CustomFusionAssemblyName(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 86,86 : 17,18 '' + IL_0000: nop + .line 86,86 : 19,52 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customFusionAssemblyName + .line 86,86 : 53,54 '' + IL_0008: ret + } // end of method RuntimeConfiguration::set_CustomFusionAssemblyName + + .method public hidebysig specialname instance bool + get_LoadPluginsOnStartup() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 91,91 : 17,18 '' + IL_0000: nop + .line 91,91 : 19,47 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::loadPluginsOnStartup + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 91,91 : 48,49 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method RuntimeConfiguration::get_LoadPluginsOnStartup + + .method public hidebysig specialname instance void + set_LoadPluginsOnStartup(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 92,92 : 17,18 '' + IL_0000: nop + .line 92,92 : 19,48 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::loadPluginsOnStartup + .line 92,92 : 49,50 '' + IL_0008: ret + } // end of method RuntimeConfiguration::set_LoadPluginsOnStartup + + .method public hidebysig specialname instance bool + get_UseLazyUnload() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 97,97 : 17,18 '' + IL_0000: nop + .line 97,97 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::lazyUnload + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 97,97 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method RuntimeConfiguration::get_UseLazyUnload + + .method public hidebysig specialname instance void + set_UseLazyUnload(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 98,98 : 17,18 '' + IL_0000: nop + .line 98,98 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::lazyUnload + .line 98,98 : 39,40 '' + IL_0008: ret + } // end of method RuntimeConfiguration::set_UseLazyUnload + + .method public hidebysig static void Initialize() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 106,106 : 9,10 '' + IL_0000: nop + .line 107,107 : 13,75 '' + IL_0001: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Load() + IL_0006: stsfld class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::singleton + .line 108,108 : 9,10 '' + IL_000b: ret + } // end of method RuntimeConfiguration::Initialize + + .method public hidebysig static void Reset() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 111,111 : 9,10 '' + IL_0000: nop + .line 112,112 : 13,93 '' + IL_0001: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration() + IL_0006: stsfld class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::singleton + .line 113,113 : 9,10 '' + IL_000b: ret + } // end of method RuntimeConfiguration::Reset + + .method public hidebysig static void Reload() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 116,116 : 9,10 '' + IL_0000: nop + .line 117,117 : 13,26 '' + IL_0001: call void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Initialize() + IL_0006: nop + .line 118,118 : 9,10 '' + IL_0007: ret + } // end of method RuntimeConfiguration::Reload + + .property class Virtuoso.Hyphen.Configuration.RuntimeConfiguration + Singleton() + { + .get class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + } // end of property RuntimeConfiguration::Singleton + .property bool Initialized() + { + .get bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Initialized() + } // end of property RuntimeConfiguration::Initialized + .property instance string CustomPluginManagerTypeName() + { + .set instance void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_CustomPluginManagerTypeName(string) + .get instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomPluginManagerTypeName() + } // end of property RuntimeConfiguration::CustomPluginManagerTypeName + .property instance string CustomAssemblyProbeTypeName() + { + .set instance void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_CustomAssemblyProbeTypeName(string) + .get instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomAssemblyProbeTypeName() + } // end of property RuntimeConfiguration::CustomAssemblyProbeTypeName + .property instance string CustomFusionAssemblyName() + { + .set instance void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_CustomFusionAssemblyName(string) + .get instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomFusionAssemblyName() + } // end of property RuntimeConfiguration::CustomFusionAssemblyName + .property instance bool LoadPluginsOnStartup() + { + .set instance void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_LoadPluginsOnStartup(bool) + .get instance bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_LoadPluginsOnStartup() + } // end of property RuntimeConfiguration::LoadPluginsOnStartup + .property instance bool UseLazyUnload() + { + .set instance void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_UseLazyUnload(bool) + .get instance bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_UseLazyUnload() + } // end of property RuntimeConfiguration::UseLazyUnload +} // end of class Virtuoso.Hyphen.Configuration.RuntimeConfiguration + +.class interface private abstract auto ansi Virtuoso.Miranda.Plugins.IInternalConfigurator + implements Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ +} // end of class Virtuoso.Miranda.Plugins.IInternalConfigurator + +.class private auto ansi sealed beforefieldinit Virtuoso.Hyphen.Configuration.RuntimeConfigurator + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.IInternalConfigurator, + Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ + .field private static class Virtuoso.Miranda.Plugins.IConfigurablePlugin singleton + .field private class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] configuration + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 34,34 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Configuration\\RuntimeConfigurator.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 34,34 : 39,40 '' + IL_0007: nop + .line 34,34 : 41,42 '' + IL_0008: nop + IL_0009: ret + } // end of method RuntimeConfigurator::.ctor + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.IConfigurablePlugin + get_Singleton() cil managed + { + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.IConfigurablePlugin CS$1$0000) + .line 44,44 : 13,14 '' + IL_0000: nop + .line 45,45 : 17,77 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Hyphen.Configuration.RuntimeConfigurator::singleton + IL_0006: dup + IL_0007: brtrue.s IL_0015 + + IL_0009: pop + IL_000a: newobj instance void Virtuoso.Hyphen.Configuration.RuntimeConfigurator::.ctor() + IL_000f: dup + IL_0010: stsfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Hyphen.Configuration.RuntimeConfigurator::singleton + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 46,46 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method RuntimeConfigurator::get_Singleton + + .method public hidebysig newslot specialname virtual final + instance string get_Name() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 51,51 : 17,18 '' + IL_0000: nop + .line 51,51 : 19,35 '' + IL_0001: ldstr "Hyphen" + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 51,51 : 36,37 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method RuntimeConfigurator::get_Name + + .method public hidebysig newslot specialname virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + get_Configuration() cil managed + { + // Code size 41 (0x29) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$1$0000, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$0$0001) + .line 57,57 : 17,18 '' + IL_0000: nop + .line 57,57 : 19,122 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Hyphen.Configuration.RuntimeConfigurator::configuration + IL_0007: dup + IL_0008: brtrue.s IL_0024 + + IL_000a: pop + IL_000b: ldarg.0 + IL_000c: ldc.i4.1 + IL_000d: newarr Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + IL_0012: stloc.1 + IL_0013: ldloc.1 + IL_0014: ldc.i4.0 + IL_0015: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_001a: stelem.ref + IL_001b: ldloc.1 + IL_001c: dup + IL_001d: stloc.1 + IL_001e: stfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Hyphen.Configuration.RuntimeConfigurator::configuration + IL_0023: ldloc.1 + IL_0024: stloc.0 + IL_0025: br.s IL_0027 + + .line 57,57 : 123,124 '' + IL_0027: ldloc.0 + IL_0028: ret + } // end of method RuntimeConfigurator::get_Configuration + + .method public hidebysig newslot virtual final + instance void ResetConfiguration() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 61,61 : 9,10 '' + IL_0000: nop + .line 62,62 : 13,42 '' + IL_0001: call void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Reset() + IL_0006: nop + .line 63,63 : 9,10 '' + IL_0007: ret + } // end of method RuntimeConfigurator::ResetConfiguration + + .method public hidebysig newslot virtual final + instance void ReloadConfiguration() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 66,66 : 9,10 '' + IL_0000: nop + .line 67,67 : 13,43 '' + IL_0001: call void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Reload() + IL_0006: nop + .line 68,68 : 9,10 '' + IL_0007: ret + } // end of method RuntimeConfigurator::ReloadConfiguration + + .method public hidebysig newslot virtual final + instance void PopulateConfiguration(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories) cil managed + { + // Code size 77 (0x4d) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.Category category, + [1] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item) + .line 74,74 : 9,10 '' + IL_0000: nop + .line 75,75 : 13,118 '' + IL_0001: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General() + IL_0006: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_Description() + IL_000b: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Category::.ctor(string, + string) + IL_0010: stloc.0 + .line 77,77 : 13,156 '' + IL_0011: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_About() + IL_0016: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_About_Description() + IL_001b: ldtoken Virtuoso.Hyphen.Configuration.Controls.AboutContent + IL_0020: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0025: newobj instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor(string, + string, + class [mscorlib]System.Type) + IL_002a: stloc.1 + .line 78,78 : 13,66 '' + IL_002b: ldloc.1 + IL_002c: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Information() + IL_0031: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_Image(class [System.Drawing]System.Drawing.Image) + IL_0036: nop + .line 79,79 : 13,38 '' + IL_0037: ldloc.0 + IL_0038: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::get_Items() + IL_003d: ldloc.1 + IL_003e: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0043: nop + .line 81,81 : 13,38 '' + IL_0044: ldarg.1 + IL_0045: ldloc.0 + IL_0046: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_004b: nop + .line 82,82 : 9,10 '' + IL_004c: ret + } // end of method RuntimeConfigurator::PopulateConfiguration + + .property class Virtuoso.Miranda.Plugins.IConfigurablePlugin + Singleton() + { + .get class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Singleton() + } // end of property RuntimeConfigurator::Singleton + .property instance string Name() + { + .get instance string Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Name() + } // end of property RuntimeConfigurator::Name + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + Configuration() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Configuration() + } // end of property RuntimeConfigurator::Configuration +} // end of class Virtuoso.Hyphen.Configuration.RuntimeConfigurator + +.class public abstract auto ansi beforefieldinit Virtuoso.Hyphen.Mini.ProtocolPlugin + extends Virtuoso.Hyphen.Mini.StandalonePlugin +{ + .field private native int namePtr + .field private int32 NameCapacity + .field private class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol thisProtocol + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 47,47 : 9,35 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\ProtocolPlugin.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Mini.StandalonePlugin::.ctor() + IL_0006: nop + .line 47,47 : 36,37 '' + IL_0007: nop + .line 47,47 : 38,39 '' + IL_0008: nop + IL_0009: ret + } // end of method ProtocolPlugin::.ctor + + .method public hidebysig specialname virtual + instance valuetype [mscorlib]System.Guid[] + get_PluginInterfaces() cil managed + { + // Code size 31 (0x1f) + .maxstack 2 + .locals init ([0] valuetype [mscorlib]System.Guid[] CS$1$0000, + [1] valuetype [mscorlib]System.Guid[] CS$0$0001) + .line 58,58 : 17,18 '' + IL_0000: nop + .line 58,58 : 19,91 '' + IL_0001: ldc.i4.1 + IL_0002: newarr [mscorlib]System.Guid + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: ldc.i4.0 + IL_000a: ldelema [mscorlib]System.Guid + IL_000f: call valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_ProtocolUUID() + IL_0014: stobj [mscorlib]System.Guid + IL_0019: ldloc.1 + IL_001a: stloc.0 + IL_001b: br.s IL_001d + + .line 58,58 : 92,93 '' + IL_001d: ldloc.0 + IL_001e: ret + } // end of method ProtocolPlugin::get_PluginInterfaces + + .method assembly hidebysig strict virtual + instance void LoadInternal(native int pPluginLink) cil managed + { + // Code size 268 (0x10c) + .maxstack 3 + .line 66,66 : 9,10 '' + IL_0000: nop + .line 67,67 : 13,73 '' + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_0008: ldarg.0 + IL_0009: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolType() + IL_000e: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType) + IL_0013: call instance void Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ThisProtocol(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol) + IL_0018: nop + .line 68,68 : 13,37 '' + IL_0019: ldarg.0 + IL_001a: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_001f: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Register() + IL_0024: nop + .line 70,70 : 13,49 '' + IL_0025: ldarg.0 + IL_0026: ldc.i4 0x9c87 + IL_002b: callvirt instance void Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ProtocolStatus(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + IL_0030: nop + .line 72,72 : 13,122 '' + IL_0031: ldarg.0 + IL_0032: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_0037: ldstr "/GetName" + IL_003c: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_0041: ldarg.0 + IL_0042: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSGetName(native uint, + native int) + IL_0048: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_004d: ldarg.0 + IL_004e: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0053: nop + .line 73,73 : 13,126 '' + IL_0054: ldarg.0 + IL_0055: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_005a: ldstr "/GetStatus" + IL_005f: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_0064: ldarg.0 + IL_0065: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSGetStatus(native uint, + native int) + IL_006b: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0070: ldarg.0 + IL_0071: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0076: nop + .line 74,74 : 13,126 '' + IL_0077: ldarg.0 + IL_0078: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_007d: ldstr "/SetStatus" + IL_0082: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_0087: ldarg.0 + IL_0088: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSSetStatus(native uint, + native int) + IL_008e: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0093: ldarg.0 + IL_0094: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0099: nop + .line 75,75 : 13,124 '' + IL_009a: ldarg.0 + IL_009b: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_00a0: ldstr "/LoadIcon" + IL_00a5: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_00aa: ldarg.0 + IL_00ab: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSLoadIcon(native uint, + native int) + IL_00b1: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_00b6: ldarg.0 + IL_00b7: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_00bc: nop + .line 76,76 : 13,122 '' + IL_00bd: ldarg.0 + IL_00be: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_00c3: ldstr "/GetCaps" + IL_00c8: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_00cd: ldarg.0 + IL_00ce: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSGetCaps(native uint, + native int) + IL_00d4: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_00d9: ldarg.0 + IL_00da: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_00df: nop + .line 77,77 : 13,128 '' + IL_00e0: ldarg.0 + IL_00e1: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_00e6: ldstr "/SendMsg" + IL_00eb: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_00f0: ldarg.0 + IL_00f1: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSSSendMessage(native uint, + native int) + IL_00f7: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_00fc: ldarg.0 + IL_00fd: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0102: nop + .line 79,79 : 13,44 '' + IL_0103: ldarg.0 + IL_0104: ldarg.1 + IL_0105: call instance void Virtuoso.Hyphen.Mini.StandalonePlugin::LoadInternal(native int) + IL_010a: nop + .line 80,80 : 9,10 '' + IL_010b: ret + } // end of method ProtocolPlugin::LoadInternal + + .method assembly hidebysig strict virtual + instance void UnloadInternal() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 86,86 : 9,10 '' + IL_0000: nop + .line 87,87 : 13,35 '' + IL_0001: ldarg.0 + IL_0002: call instance void Virtuoso.Hyphen.Mini.StandalonePlugin::UnloadInternal() + IL_0007: nop + .line 88,88 : 13,39 '' + IL_0008: ldarg.0 + IL_0009: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_000e: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Unregister() + IL_0013: nop + .line 89,89 : 9,10 '' + IL_0014: ret + } // end of method ProtocolPlugin::UnloadInternal + + .method private hidebysig instance int32 + PSGetName(native uint capacity, + native int pBuffer) cil managed + { + // Code size 191 (0xbf) + .maxstack 4 + .locals init ([0] uint8[] nameBytes, + [1] uint32 count, + [2] int64 i, + [3] int32 CS$1$0000, + [4] bool CS$4$0001) + .line 102,102 : 9,10 '' + IL_0000: nop + .line 103,103 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0011: ldc.i4.0 + IL_0012: ceq + IL_0014: stloc.s CS$4$0001 + IL_0016: ldloc.s CS$4$0001 + IL_0018: brtrue.s IL_0074 + + .line 104,104 : 13,14 '' + IL_001a: nop + .line 105,105 : 17,84 '' + IL_001b: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Default() + IL_0020: ldarg.0 + IL_0021: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_0026: dup + IL_0027: brtrue.s IL_002f + + IL_0029: pop + IL_002a: ldsfld string [mscorlib]System.String::Empty + IL_002f: callvirt instance uint8[] [mscorlib]System.Text.Encoding::GetBytes(string) + IL_0034: stloc.0 + .line 106,106 : 17,53 '' + IL_0035: ldarg.0 + IL_0036: ldloc.0 + IL_0037: ldlen + IL_0038: conv.i4 + IL_0039: ldc.i4.1 + IL_003a: add + IL_003b: stfld int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::NameCapacity + .line 108,108 : 17,62 '' + IL_0040: ldarg.0 + IL_0041: ldarg.0 + IL_0042: ldfld int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::NameCapacity + IL_0047: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_004c: stfld native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + .line 109,109 : 17,71 '' + IL_0051: ldloc.0 + IL_0052: ldc.i4.0 + IL_0053: ldarg.0 + IL_0054: ldfld native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + IL_0059: ldloc.0 + IL_005a: ldlen + IL_005b: conv.i4 + IL_005c: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + IL_0061: nop + .line 111,111 : 17,60 '' + IL_0062: ldarg.0 + IL_0063: ldfld native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + IL_0068: call void* [mscorlib]System.IntPtr::op_Explicit(native int) + IL_006d: ldloc.0 + IL_006e: ldlen + IL_006f: conv.i4 + IL_0070: add + IL_0071: ldc.i4.0 + IL_0072: stind.i1 + .line 112,112 : 13,14 '' + IL_0073: nop + .line 114,114 : 13,46 '' + IL_0074: ldarga.s capacity + IL_0076: call instance uint32 [mscorlib]System.UIntPtr::ToUInt32() + IL_007b: stloc.1 + .line 116,116 : 18,29 '' + IL_007c: ldc.i4.0 + IL_007d: conv.i8 + IL_007e: stloc.2 + IL_007f: br.s IL_00a0 + + .line 117,117 : 17,83 '' + IL_0081: ldarga.s pBuffer + IL_0083: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0088: ldloc.2 + IL_0089: add + IL_008a: conv.u + IL_008b: ldarg.0 + IL_008c: ldflda native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + IL_0091: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0096: ldloc.2 + IL_0097: add + IL_0098: conv.u + IL_0099: ldind.u1 + IL_009a: stind.i1 + .line 116,116 : 61,64 '' + IL_009b: ldloc.2 + IL_009c: ldc.i4.1 + IL_009d: conv.i8 + IL_009e: add + IL_009f: stloc.2 + .line 116,116 : 30,59 '' + IL_00a0: ldloc.2 + IL_00a1: ldloc.1 + IL_00a2: conv.u8 + IL_00a3: bge.s IL_00b1 + + IL_00a5: ldloc.2 + IL_00a6: ldarg.0 + IL_00a7: ldfld int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::NameCapacity + IL_00ac: conv.i8 + IL_00ad: clt + IL_00af: br.s IL_00b2 + + IL_00b1: ldc.i4.0 + IL_00b2: nop + IL_00b3: stloc.s CS$4$0001 + IL_00b5: ldloc.s CS$4$0001 + IL_00b7: brtrue.s IL_0081 + + .line 119,119 : 13,22 '' + IL_00b9: ldc.i4.0 + IL_00ba: stloc.3 + IL_00bb: br.s IL_00bd + + .line 120,120 : 9,10 '' + IL_00bd: ldloc.3 + IL_00be: ret + } // end of method ProtocolPlugin::PSGetName + + .method private hidebysig instance int32 + PSGetStatus(native uint wParam, + native int lParam) cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 129,129 : 9,10 '' + IL_0000: nop + .line 130,130 : 13,40 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolStatus() + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 131,131 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ProtocolPlugin::PSGetStatus + + .method private hidebysig instance int32 + PSSetStatus(native uint newStatusRaw, + native int lParam) cil managed + { + // Code size 71 (0x47) + .maxstack 6 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode prevStatus, + [1] valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode newStatus, + [2] int32 CS$1$0000) + .line 144,144 : 9,10 '' + IL_0000: nop + .line 145,145 : 13,52 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolStatus() + IL_0007: stloc.0 + .line 146,146 : 13,61 '' + IL_0008: ldarg.1 + IL_0009: call uint32 [mscorlib]System.UIntPtr::op_Explicit(native uint) + IL_000e: stloc.1 + .line 148,148 : 13,40 '' + IL_000f: ldarg.0 + IL_0010: ldloc.1 + IL_0011: callvirt instance void Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ProtocolStatus(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + IL_0016: nop + .line 149,149 : 13,171 '' + IL_0017: ldarg.0 + IL_0018: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_001d: callvirt instance valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::get_NativeDescriptor() + IL_0022: ldfld native int Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Name + IL_0027: ldc.i4.s 12 + IL_0029: ldc.i4.1 + IL_002a: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002f: ldloc.0 + IL_0030: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0035: ldarg.1 + IL_0036: call native int Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native uint) + IL_003b: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType, + bool, + native int, + native int, + native int) + IL_0040: pop + .line 151,151 : 13,22 '' + IL_0041: ldc.i4.0 + IL_0042: stloc.2 + IL_0043: br.s IL_0045 + + .line 152,152 : 9,10 '' + IL_0045: ldloc.2 + IL_0046: ret + } // end of method ProtocolPlugin::PSSetStatus + + .method private hidebysig instance int32 + PSLoadIcon(native uint whichIcon, + native int lParam) cil managed + { + // Code size 62 (0x3e) + .maxstack 2 + .locals init ([0] int32 CS$1$0000, + [1] bool CS$4$0001, + [2] native int CS$0$0002) + .line 161,161 : 9,10 '' + IL_0000: nop + .line 162,162 : 13,38 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance class [System.Drawing]System.Drawing.Icon Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolIcon() + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.1 + IL_000e: ldloc.1 + IL_000f: brtrue.s IL_0026 + + .line 163,163 : 17,65 '' + IL_0011: call class [System.Drawing]System.Drawing.Icon [System.Drawing]System.Drawing.SystemIcons::get_Application() + IL_0016: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_001b: stloc.2 + IL_001c: ldloca.s CS$0$0002 + IL_001e: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_0023: stloc.0 + IL_0024: br.s IL_003c + + .line 165,165 : 17,54 '' + IL_0026: ldarg.0 + IL_0027: callvirt instance class [System.Drawing]System.Drawing.Icon Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolIcon() + IL_002c: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_0031: stloc.2 + IL_0032: ldloca.s CS$0$0002 + IL_0034: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_0039: stloc.0 + IL_003a: br.s IL_003c + + .line 166,166 : 9,10 '' + IL_003c: ldloc.0 + IL_003d: ret + } // end of method ProtocolPlugin::PSLoadIcon + + .method private hidebysig instance int32 + PSGetCaps(native uint flagsNum, + native int lParam) cil managed + { + // Code size 63 (0x3f) + .maxstack 2 + .locals init ([0] int32 CS$1$0000, + [1] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind CS$4$0001) + .line 175,175 : 9,10 '' + IL_0000: nop + .line 176,176 : 13,49 '' + IL_0001: ldarg.1 + IL_0002: call uint32 [mscorlib]System.UIntPtr::op_Explicit(native uint) + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: ldc.i4.1 + IL_000a: sub + IL_000b: switch ( + IL_001e, + IL_0027, + IL_0030) + IL_001c: br.s IL_0039 + + .line 179,179 : 21,55 '' + IL_001e: ldarg.0 + IL_001f: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedCapabilities() + IL_0024: stloc.0 + IL_0025: br.s IL_003d + + .line 181,181 : 21,54 '' + IL_0027: ldarg.0 + IL_0028: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedStatusModes() + IL_002d: stloc.0 + IL_002e: br.s IL_003d + + .line 183,183 : 21,58 '' + IL_0030: ldarg.0 + IL_0031: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedAwayStatusModes() + IL_0036: stloc.0 + IL_0037: br.s IL_003d + + .line 185,185 : 21,30 '' + IL_0039: ldc.i4.0 + IL_003a: stloc.0 + IL_003b: br.s IL_003d + + .line 187,187 : 9,10 '' + IL_003d: ldloc.0 + IL_003e: ret + } // end of method ProtocolPlugin::PSGetCaps + + .method private hidebysig instance int32 + PSSSendMessage(native uint 'flags', + native int pCcsData) cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .locals init ([0] int32 CS$1$0000) + .line 199,199 : 9,10 '' + IL_0000: nop + .line 200,200 : 13,64 '' + IL_0001: ldarg.0 + IL_0002: ldarg.2 + IL_0003: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::.ctor(native int) + IL_0008: callvirt instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::SendMessage(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData) + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 201,201 : 9,10 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method ProtocolPlugin::PSSSendMessage + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol + get_ThisProtocol() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol CS$1$0000) + .line 213,213 : 17,18 '' + IL_0000: nop + .line 213,213 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::thisProtocol + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 213,213 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ProtocolPlugin::get_ThisProtocol + + .method assembly hidebysig specialname + instance void set_ThisProtocol(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 214,214 : 26,27 '' + IL_0000: nop + .line 214,214 : 28,49 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::thisProtocol + .line 214,214 : 50,51 '' + IL_0008: ret + } // end of method ProtocolPlugin::set_ThisProtocol + + .method family hidebysig specialname instance native int + get_NamePtr() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 219,219 : 17,18 '' + IL_0000: nop + .line 219,219 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 219,219 : 35,36 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ProtocolPlugin::get_NamePtr + + .method famorassem hidebysig newslot specialname abstract virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + get_ProtocolType() cil managed + { + } // end of method ProtocolPlugin::get_ProtocolType + + .method famorassem hidebysig newslot specialname abstract virtual + instance class [System.Drawing]System.Drawing.Icon + get_ProtocolIcon() cil managed + { + } // end of method ProtocolPlugin::get_ProtocolIcon + + .method famorassem hidebysig newslot specialname abstract virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities + get_SupportedCapabilities() cil managed + { + } // end of method ProtocolPlugin::get_SupportedCapabilities + + .method famorassem hidebysig newslot specialname virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + get_SupportedAwayStatusModes() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes CS$1$0000) + .line 248,248 : 87,88 '' + IL_0000: nop + .line 248,248 : 89,119 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 248,248 : 120,121 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method ProtocolPlugin::get_SupportedAwayStatusModes + + .method famorassem hidebysig newslot specialname virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + get_SupportedStatusModes() cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes CS$1$0000) + .line 253,253 : 83,84 '' + IL_0000: nop + .line 253,253 : 85,115 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 253,253 : 116,117 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method ProtocolPlugin::get_SupportedStatusModes + + .method famorassem hidebysig newslot specialname virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + get_ProtocolStatus() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode CS$1$0000) + .line 258,258 : 68,69 '' + IL_0000: nop + .line 258,258 : 70,96 '' + IL_0001: ldc.i4 0x9c87 + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 258,258 : 97,98 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method ProtocolPlugin::get_ProtocolStatus + + .method famorassem hidebysig newslot specialname virtual + instance void set_ProtocolStatus(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode 'value') cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 258,258 : 103,104 '' + IL_0000: nop + .line 258,258 : 105,106 '' + IL_0001: ret + } // end of method ProtocolPlugin::set_ProtocolStatus + + .method family hidebysig newslot virtual + instance int32 SendMessage(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData msgData) cil managed + { + // Code size 7 (0x7) + .maxstack 1 + .locals init ([0] int32 CS$1$0000) + .line 260,260 : 69,70 '' + IL_0000: nop + .line 260,260 : 71,80 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + IL_0003: br.s IL_0005 + + .line 260,260 : 81,82 '' + IL_0005: ldloc.0 + IL_0006: ret + } // end of method ProtocolPlugin::SendMessage + + .property instance valuetype [mscorlib]System.Guid[] + PluginInterfaces() + { + .get instance valuetype [mscorlib]System.Guid[] Virtuoso.Hyphen.Mini.ProtocolPlugin::get_PluginInterfaces() + } // end of property ProtocolPlugin::PluginInterfaces + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol + ThisProtocol() + { + .set instance void Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ThisProtocol(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol) + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + } // end of property ProtocolPlugin::ThisProtocol + .property instance native int NamePtr() + { + .get instance native int Virtuoso.Hyphen.Mini.ProtocolPlugin::get_NamePtr() + } // end of property ProtocolPlugin::NamePtr + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + ProtocolType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolType() + } // end of property ProtocolPlugin::ProtocolType + .property instance class [System.Drawing]System.Drawing.Icon + ProtocolIcon() + { + .get instance class [System.Drawing]System.Drawing.Icon Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolIcon() + } // end of property ProtocolPlugin::ProtocolIcon + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities + SupportedCapabilities() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedCapabilities() + } // end of property ProtocolPlugin::SupportedCapabilities + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + SupportedAwayStatusModes() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedAwayStatusModes() + } // end of property ProtocolPlugin::SupportedAwayStatusModes + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + SupportedStatusModes() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedStatusModes() + } // end of property ProtocolPlugin::SupportedStatusModes + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + ProtocolStatus() + { + .set instance void Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ProtocolStatus(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolStatus() + } // end of property ProtocolPlugin::ProtocolStatus +} // end of class Virtuoso.Hyphen.Mini.ProtocolPlugin + +.class private auto ansi sealed beforefieldinit Virtuoso.Hyphen.MirandaPluginLink + extends [mscorlib]System.Object +{ + .field private initonly class Virtuoso.Hyphen.Native.NativePluginLink nativePluginLink + .field private initonly native int nativePluginLinkPtr + .field public initonly class Virtuoso.Hyphen.Native.CallServiceUnsafePrototype CallServiceUnsafe + .method private hidebysig specialname rtspecialname + instance void .ctor(native int nativeLinkPtr) cil managed + { + // Code size 113 (0x71) + .maxstack 4 + .locals init ([0] bool CS$4$0000) + .line 39,39 : 9,56 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\MirandaPluginLink.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 40,40 : 9,10 '' + IL_0007: nop + .line 41,41 : 13,46 '' + IL_0008: ldarg.1 + IL_0009: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000e: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0013: ldc.i4.0 + IL_0014: ceq + IL_0016: stloc.0 + IL_0017: ldloc.0 + IL_0018: brtrue.s IL_0025 + + .line 42,42 : 17,66 '' + IL_001a: ldstr "nativeLinkPtr" + IL_001f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0024: throw + + .line 44,44 : 13,54 '' + IL_0025: ldarg.0 + IL_0026: ldarg.1 + IL_0027: stfld native int Virtuoso.Hyphen.MirandaPluginLink::nativePluginLinkPtr + .line 45,45 : 13,119 '' + IL_002c: ldarg.0 + IL_002d: ldarg.1 + IL_002e: ldtoken Virtuoso.Hyphen.Native.NativePluginLink + IL_0033: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0038: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_003d: castclass Virtuoso.Hyphen.Native.NativePluginLink + IL_0042: stfld class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::nativePluginLink + .line 47,47 : 13,192 '' + IL_0047: ldarg.0 + IL_0048: ldarg.1 + IL_0049: ldc.i4.s 9 + IL_004b: call int32 [mscorlib]System.IntPtr::get_Size() + IL_0050: mul + IL_0051: call native int [mscorlib]System.Runtime.InteropServices.Marshal::ReadIntPtr(native int, + int32) + IL_0056: ldtoken Virtuoso.Hyphen.Native.CallServiceUnsafePrototype + IL_005b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0060: call class [mscorlib]System.Delegate [mscorlib]System.Runtime.InteropServices.Marshal::GetDelegateForFunctionPointer(native int, + class [mscorlib]System.Type) + IL_0065: castclass Virtuoso.Hyphen.Native.CallServiceUnsafePrototype + IL_006a: stfld class Virtuoso.Hyphen.Native.CallServiceUnsafePrototype Virtuoso.Hyphen.MirandaPluginLink::CallServiceUnsafe + .line 48,48 : 9,10 '' + IL_006f: nop + IL_0070: ret + } // end of method MirandaPluginLink::.ctor + + .method public hidebysig static class Virtuoso.Hyphen.MirandaPluginLink + FromPointer(native int nativeLinkPtr) cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Hyphen.MirandaPluginLink CS$1$0000) + .line 51,51 : 9,10 '' + IL_0000: nop + .line 52,52 : 13,57 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void Virtuoso.Hyphen.MirandaPluginLink::.ctor(native int) + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 53,53 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaPluginLink::FromPointer + + .method public hidebysig specialname instance native int + get_NativePluginLinkPtr() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 62,62 : 13,14 '' + IL_0000: nop + .line 63,63 : 17,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Hyphen.MirandaPluginLink::nativePluginLinkPtr + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 64,64 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaPluginLink::get_NativePluginLinkPtr + + .method public hidebysig specialname instance class Virtuoso.Hyphen.Native.NativePluginLink + get_NativePluginLink() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Hyphen.Native.NativePluginLink CS$1$0000) + .line 70,70 : 13,14 '' + IL_0000: nop + .line 71,71 : 17,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::nativePluginLink + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 72,72 : 13,14 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaPluginLink::get_NativePluginLink + + .property instance native int NativePluginLinkPtr() + { + .get instance native int Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLinkPtr() + } // end of property MirandaPluginLink::NativePluginLinkPtr + .property instance class Virtuoso.Hyphen.Native.NativePluginLink + NativePluginLink() + { + .get instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + } // end of property MirandaPluginLink::NativePluginLink +} // end of class Virtuoso.Hyphen.MirandaPluginLink + +.class public auto ansi sealed Virtuoso.Hyphen.Native.PluginFlags + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname uint8 value__ + .field public static literal valuetype Virtuoso.Hyphen.Native.PluginFlags UnicodeAware = uint8(0x01) +} // end of class Virtuoso.Hyphen.Native.PluginFlags + +.class private sequential ansi sealed beforefieldinit Virtuoso.Hyphen.Native.PLUGININFOEX + extends Virtuoso.Hyphen.Native.PLUGININFO +{ + .pack 4 + .size 0 + .field public valuetype [mscorlib]System.Guid UUID + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 30,30 : 9,30 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Native\\PLUGININFOEX.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Native.PLUGININFO::.ctor() + IL_0006: nop + .line 30,30 : 31,32 '' + IL_0007: nop + .line 30,30 : 33,34 '' + IL_0008: nop + IL_0009: ret + } // end of method PLUGININFOEX::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(valuetype [mscorlib]System.Guid uuid) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 32,32 : 9,39 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Native.PLUGININFO::.ctor() + IL_0006: nop + .line 33,33 : 9,10 '' + IL_0007: nop + .line 34,34 : 13,30 '' + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: stfld valuetype [mscorlib]System.Guid Virtuoso.Hyphen.Native.PLUGININFOEX::UUID + .line 35,35 : 9,10 '' + IL_000f: nop + IL_0010: ret + } // end of method PLUGININFOEX::.ctor + +} // end of class Virtuoso.Hyphen.Native.PLUGININFOEX + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.EventManager + extends [mscorlib]System.Object +{ + .method public hidebysig static void CreateEventHook(string eventName, + class Virtuoso.Miranda.Plugins.Callback callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin owner) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 170 (0xaa) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection collection, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [2] bool CS$4$0000) + .line 32,32 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\EventManager.cs' + IL_0000: nop + .line 33,33 : 13,49 '' + IL_0001: ldarg.0 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.2 + IL_000b: ldloc.2 + IL_000c: brtrue.s IL_0019 + + .line 34,34 : 17,62 '' + IL_000e: ldstr "eventName" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 36,36 : 13,34 '' + IL_0019: ldarg.1 + IL_001a: ldnull + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.2 + IL_0021: ldloc.2 + IL_0022: brtrue.s IL_002f + + .line 37,37 : 17,61 '' + IL_0024: ldstr "callback" + IL_0029: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002e: throw + + .line 39,39 : 13,31 '' + IL_002f: ldarg.2 + IL_0030: ldnull + IL_0031: ceq + IL_0033: ldc.i4.0 + IL_0034: ceq + IL_0036: stloc.2 + IL_0037: ldloc.2 + IL_0038: brtrue.s IL_0045 + + .line 40,40 : 17,58 '' + IL_003a: ldstr "owner" + IL_003f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0044: throw + + .line 42,42 : 13,36 '' + IL_0045: ldarg.2 + IL_0046: callvirt instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized() + IL_004b: stloc.2 + IL_004c: ldloc.2 + IL_004d: brtrue.s IL_005a + + .line 43,43 : 17,102 '' + IL_004f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_0054: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0059: throw + + .line 45,45 : 13,79 '' + IL_005a: ldarg.2 + IL_005b: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0060: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_0065: stloc.0 + .line 48,48 : 13,14 '' + .try + { + IL_0066: nop + .line 49,49 : 17,64 '' + IL_0067: ldarg.2 + IL_0068: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginPluginUpdate(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_006d: nop + .line 50,50 : 17,73 '' + IL_006e: ldloc.0 + IL_006f: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_0074: nop + .line 52,52 : 17,145 '' + IL_0075: ldloc.0 + IL_0076: ldarg.0 + IL_0077: ldarg.2 + IL_0078: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_007d: ldarg.1 + IL_007e: ldc.i4.1 + IL_007f: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0084: stloc.1 + .line 53,53 : 17,54 '' + IL_0085: ldloc.1 + IL_0086: ldc.i4.1 + IL_0087: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_RegisteredManually(bool) + IL_008c: nop + .line 55,55 : 17,52 '' + IL_008d: ldloc.1 + IL_008e: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0093: nop + .line 56,56 : 13,14 '' + IL_0094: nop + IL_0095: leave.s IL_00a8 + + .line 58,58 : 13,14 '' + } // end .try + finally + { + IL_0097: nop + .line 59,59 : 17,56 '' + IL_0098: ldarg.2 + IL_0099: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_009e: nop + .line 60,60 : 17,61 '' + IL_009f: ldloc.0 + IL_00a0: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_00a5: nop + .line 61,61 : 13,14 '' + IL_00a6: nop + IL_00a7: endfinally + } // end handler + IL_00a8: nop + .line 62,62 : 9,10 '' + IL_00a9: ret + } // end of method EventManager::CreateEventHook + + .method public hidebysig static void RemoveEventHook(string eventName, + class Virtuoso.Miranda.Plugins.MirandaPlugin owner) cil managed + { + // Code size 152 (0x98) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection collection, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [2] bool CS$4$0000) + .line 65,65 : 9,10 '' + IL_0000: nop + .line 66,66 : 13,49 '' + IL_0001: ldarg.0 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.2 + IL_000b: ldloc.2 + IL_000c: brtrue.s IL_0019 + + .line 67,67 : 17,62 '' + IL_000e: ldstr "eventName" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 69,69 : 13,31 '' + IL_0019: ldarg.1 + IL_001a: ldnull + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.2 + IL_0021: ldloc.2 + IL_0022: brtrue.s IL_002f + + .line 70,70 : 17,58 '' + IL_0024: ldstr "owner" + IL_0029: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002e: throw + + .line 72,72 : 13,36 '' + IL_002f: ldarg.1 + IL_0030: callvirt instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized() + IL_0035: stloc.2 + IL_0036: ldloc.2 + IL_0037: brtrue.s IL_0044 + + .line 73,73 : 17,102 '' + IL_0039: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_003e: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0043: throw + + .line 75,75 : 13,79 '' + IL_0044: ldarg.1 + IL_0045: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_004a: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_004f: stloc.0 + .line 78,78 : 13,14 '' + .try + { + IL_0050: nop + .line 79,79 : 17,73 '' + IL_0051: ldloc.0 + IL_0052: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_0057: nop + .line 80,80 : 17,50 '' + IL_0058: ldnull + IL_0059: stloc.1 + .line 82,82 : 17,88 '' + IL_005a: ldarg.1 + IL_005b: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0060: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_0065: ldarg.0 + IL_0066: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Find(string) + IL_006b: dup + IL_006c: stloc.1 + IL_006d: ldnull + IL_006e: ceq + IL_0070: ldc.i4.0 + IL_0071: ceq + IL_0073: stloc.2 + IL_0074: ldloc.2 + IL_0075: brtrue.s IL_0079 + + .line 83,83 : 21,28 '' + IL_0077: leave.s IL_0096 + + .line 85,85 : 17,53 '' + IL_0079: ldloc.1 + IL_007a: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_007f: nop + .line 86,86 : 17,47 '' + IL_0080: ldloc.0 + IL_0081: ldloc.1 + IL_0082: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_0087: pop + .line 87,87 : 13,14 '' + IL_0088: nop + IL_0089: leave.s IL_0095 + + .line 89,89 : 13,14 '' + } // end .try + finally + { + IL_008b: nop + .line 90,90 : 17,61 '' + IL_008c: ldloc.0 + IL_008d: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0092: nop + .line 91,91 : 13,14 '' + IL_0093: nop + IL_0094: endfinally + } // end handler + IL_0095: nop + IL_0096: nop + .line 92,92 : 9,10 '' + IL_0097: ret + } // end of method EventManager::RemoveEventHook + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle + CreateEvent(string eventName, + class Virtuoso.Miranda.Plugins.MirandaPlugin owner) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 14 (0xe) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle CS$1$0000) + .line 96,96 : 9,10 '' + IL_0000: nop + .line 97,97 : 13,56 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldnull + IL_0004: call class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle Virtuoso.Miranda.Plugins.Infrastructure.EventManager::CreateEvent(string, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Callback) + IL_0009: stloc.0 + IL_000a: br.s IL_000c + + .line 98,98 : 9,10 '' + IL_000c: ldloc.0 + IL_000d: ret + } // end of method EventManager::CreateEvent + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle + CreateEvent(string eventName, + class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Callback defaultSubscriber) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 148 (0x94) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle handle, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle CS$1$0000, + [2] bool CS$4$0001) + .line 102,102 : 9,10 '' + IL_0000: nop + .line 103,103 : 13,49 '' + IL_0001: ldarg.0 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.2 + IL_000b: ldloc.2 + IL_000c: brtrue.s IL_0019 + + .line 104,104 : 17,62 '' + IL_000e: ldstr "eventName" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 106,106 : 13,31 '' + IL_0019: ldarg.1 + IL_001a: ldnull + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.2 + IL_0021: ldloc.2 + IL_0022: brtrue.s IL_002f + + .line 107,107 : 17,58 '' + IL_0024: ldstr "owner" + IL_0029: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002e: throw + + .line 109,109 : 13,36 '' + IL_002f: ldarg.1 + IL_0030: callvirt instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized() + IL_0035: stloc.2 + IL_0036: ldloc.2 + IL_0037: brtrue.s IL_0044 + + .line 110,110 : 17,102 '' + IL_0039: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_003e: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0043: throw + + .line 112,112 : 13,57 '' + IL_0044: ldarg.0 + IL_0045: call bool Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::ServiceExists(string) + IL_004a: ldc.i4.0 + IL_004b: ceq + IL_004d: stloc.2 + IL_004e: ldloc.2 + IL_004f: brtrue.s IL_005c + + .line 113,113 : 17,58 '' + IL_0051: ldstr "eventName" + IL_0056: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_005b: throw + + .line 115,115 : 13,151 '' + IL_005c: ldarg.1 + IL_005d: ldarg.0 + IL_005e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0063: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0068: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_006d: ldfld class Virtuoso.Hyphen.Native.CreateHookableEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::CreateHookableEvent + IL_0072: ldarg.0 + IL_0073: callvirt instance native int Virtuoso.Hyphen.Native.CreateHookableEventPrototype::Invoke(string) + IL_0078: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin, + string, + native int) + IL_007d: stloc.0 + .line 117,117 : 13,43 '' + IL_007e: ldarg.2 + IL_007f: ldnull + IL_0080: ceq + IL_0082: stloc.2 + IL_0083: ldloc.2 + IL_0084: brtrue.s IL_008e + + .line 118,118 : 17,64 '' + IL_0086: ldloc.0 + IL_0087: ldarg.2 + IL_0088: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::SetDefaultSubscriber(class Virtuoso.Miranda.Plugins.Callback) + IL_008d: nop + .line 120,120 : 13,27 '' + IL_008e: ldloc.0 + IL_008f: stloc.1 + IL_0090: br.s IL_0092 + + .line 121,121 : 9,10 '' + IL_0092: ldloc.1 + IL_0093: ret + } // end of method EventManager::CreateEvent + + .method public hidebysig static void RemoveEvent(class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle eventHandle) cil managed + { + // Code size 178 (0xb2) + .maxstack 3 + .locals init ([0] class Virtuoso.Hyphen.MirandaPluginLink link, + [1] int32 result, + [2] class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection handles, + [3] bool CS$4$0000) + .line 124,124 : 9,10 '' + IL_0000: nop + .line 125,125 : 13,37 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.3 + IL_0009: ldloc.3 + IL_000a: brtrue.s IL_0017 + + .line 126,126 : 17,64 '' + IL_000c: ldstr "eventHandle" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 128,128 : 13,72 '' + IL_0017: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_001c: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0021: stloc.0 + .line 130,130 : 13,58 '' + IL_0022: ldarg.0 + IL_0023: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0028: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002d: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0032: ldc.i4.0 + IL_0033: ceq + IL_0035: stloc.3 + IL_0036: ldloc.3 + IL_0037: brtrue.s IL_00b1 + + .line 131,131 : 13,14 '' + IL_0039: nop + .line 133,133 : 17,107 '' + IL_003a: ldloc.0 + IL_003b: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0040: ldfld class Virtuoso.Hyphen.Native.DestroyHookableEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::DestroyHookableEvent + IL_0045: ldarg.0 + IL_0046: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_004b: callvirt instance int32 Virtuoso.Hyphen.Native.DestroyHookableEventPrototype::Invoke(native int) + IL_0050: dup + IL_0051: stloc.1 + IL_0052: ldc.i4.0 + IL_0053: ceq + IL_0055: stloc.3 + IL_0056: ldloc.3 + IL_0057: brtrue.s IL_0075 + + .line 134,134 : 21,176 '' + IL_0059: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_005e: ldstr "DestroyHookableEvent" + IL_0063: ldloca.s result + IL_0065: call instance string [mscorlib]System.Int32::ToString() + IL_006a: call string [mscorlib]System.String::Format(string, + object, + object) + IL_006f: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0074: throw + + .line 136,136 : 17,57 '' + IL_0075: ldarg.0 + IL_0076: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_007b: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle(native int) + IL_0080: nop + .line 137,137 : 17,91 '' + IL_0081: ldarg.0 + IL_0082: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::get_Owner() + IL_0087: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_008c: callvirt instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHandles() + IL_0091: stloc.2 + .line 140,140 : 17,18 '' + .try + { + IL_0092: nop + .line 141,141 : 21,74 '' + IL_0093: ldloc.2 + IL_0094: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_0099: nop + .line 142,142 : 21,49 '' + IL_009a: ldloc.2 + IL_009b: ldarg.0 + IL_009c: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_00a1: pop + .line 143,143 : 17,18 '' + IL_00a2: nop + IL_00a3: leave.s IL_00af + + .line 145,145 : 17,18 '' + } // end .try + finally + { + IL_00a5: nop + .line 146,146 : 21,62 '' + IL_00a6: ldloc.2 + IL_00a7: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_00ac: nop + .line 147,147 : 17,18 '' + IL_00ad: nop + IL_00ae: endfinally + } // end handler + IL_00af: nop + .line 148,148 : 13,14 '' + IL_00b0: nop + .line 149,149 : 9,10 '' + IL_00b1: ret + } // end of method EventManager::RemoveEvent + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.EventManager + +.class private abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.HookManager + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass2' + extends [mscorlib]System.Object + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field public class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method '<>c__DisplayClass2'::.ctor + + .method public hidebysig instance bool + 'b__0'(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor _hook) cil managed + { + // Code size 40 (0x28) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 82,82 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\HookManager.cs' + IL_0000: nop + .line 83,83 : 21,85 '' + IL_0001: ldarg.1 + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0008: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_000d: brfalse.s IL_0021 + + IL_000f: ldarg.1 + IL_0010: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0015: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_001a: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_001f: br.s IL_0022 + + IL_0021: ldc.i4.0 + IL_0022: nop + IL_0023: stloc.0 + IL_0024: br.s IL_0026 + + IL_0026: ldloc.0 + IL_0027: ret + } // end of method '<>c__DisplayClass2'::'b__0' + + } // end of class '<>c__DisplayClass2' + + .method public hidebysig static void CreateHooks(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor[] hooks) cil managed + { + .param [1] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 71 (0x47) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook, + [1] bool CS$4$0000, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor[] CS$6$0001, + [3] int32 CS$7$0002) + .line 31,31 : 9,10 '' + IL_0000: nop + .line 32,32 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 33,33 : 17,58 '' + IL_000c: ldstr "hooks" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 35,35 : 13,35 '' + IL_0017: ldarg.0 + IL_0018: ldlen + IL_0019: conv.i4 + IL_001a: ldc.i4.0 + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.1 + IL_0021: ldloc.1 + IL_0022: brtrue.s IL_0026 + + .line 36,36 : 17,24 '' + IL_0024: br.s IL_0046 + + .line 38,38 : 13,20 '' + IL_0026: nop + .line 38,38 : 45,50 '' + IL_0027: ldarg.0 + IL_0028: stloc.2 + IL_0029: ldc.i4.0 + IL_002a: stloc.3 + IL_002b: br.s IL_003c + + .line 38,38 : 22,41 '' + IL_002d: ldloc.2 + IL_002e: ldloc.3 + IL_002f: ldelem.ref + IL_0030: stloc.0 + .line 39,39 : 17,34 '' + IL_0031: ldloc.0 + IL_0032: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0037: nop + IL_0038: ldloc.3 + IL_0039: ldc.i4.1 + IL_003a: add + IL_003b: stloc.3 + .line 38,38 : 42,44 '' + IL_003c: ldloc.3 + IL_003d: ldloc.2 + IL_003e: ldlen + IL_003f: conv.i4 + IL_0040: clt + IL_0042: stloc.1 + IL_0043: ldloc.1 + IL_0044: brtrue.s IL_002d + + .line 40,40 : 9,10 '' + IL_0046: ret + } // end of method HookManager::CreateHooks + + .method public hidebysig static void CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook) cil managed + { + // Code size 80 (0x50) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType CS$4$0000) + .line 43,43 : 9,10 '' + IL_0000: nop + .line 45,45 : 13,14 '' + .try + { + IL_0001: nop + .line 46,46 : 17,67 '' + IL_0002: ldarg.0 + IL_0003: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + IL_0008: nop + .line 48,48 : 17,39 '' + IL_0009: ldarg.0 + IL_000a: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: ldc.i4.1 + IL_0012: sub + IL_0013: switch ( + IL_0022, + IL_002c) + IL_0020: br.s IL_0036 + + .line 51,51 : 25,26 '' + IL_0022: nop + .line 52,52 : 29,45 '' + IL_0023: ldarg.0 + IL_0024: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::HookEvent(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0029: nop + .line 53,53 : 29,35 '' + IL_002a: br.s IL_0041 + + .line 56,56 : 25,26 '' + IL_002c: nop + .line 57,57 : 29,57 '' + IL_002d: ldarg.0 + IL_002e: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateServiceFunction(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0033: nop + .line 58,58 : 29,35 '' + IL_0034: br.s IL_0041 + + .line 61,61 : 25,67 '' + IL_0036: ldstr "descriptor" + IL_003b: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0040: throw + + .line 63,63 : 13,14 '' + IL_0041: nop + IL_0042: leave.s IL_004e + + .line 65,65 : 13,14 '' + } // end .try + finally + { + IL_0044: nop + .line 66,66 : 17,55 '' + IL_0045: ldarg.0 + IL_0046: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_004b: nop + .line 67,67 : 13,14 '' + IL_004c: nop + IL_004d: endfinally + } // end handler + IL_004e: nop + .line 68,68 : 9,10 '' + IL_004f: ret + } // end of method HookManager::CreateHook + + .method private hidebysig static void CreateServiceFunction(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook) cil managed + { + // Code size 229 (0xe5) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Predicate`1 'CS$<>9__CachedAnonymousMethodDelegate1', + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2' 'CS$<>8__locals3', + [2] bool CS$4$0000) + IL_0000: ldnull + IL_0001: stloc.0 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::.ctor() + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: ldarg.0 + IL_000a: stfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + .line 71,71 : 9,10 '' + IL_000f: nop + .line 72,72 : 13,58 '' + IL_0010: ldloc.1 + IL_0011: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0016: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_001b: call bool Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::ServiceExists(string) + IL_0020: stloc.2 + IL_0021: ldloc.2 + IL_0022: brtrue.s IL_009a + + .line 73,73 : 13,14 '' + IL_0024: nop + .line 74,74 : 17,137 '' + IL_0025: ldloc.1 + IL_0026: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_002b: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0030: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0035: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_003a: ldfld class Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype Virtuoso.Hyphen.Native.NativePluginLink::CreateServiceFunction + IL_003f: ldloc.1 + IL_0040: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0045: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_004a: ldloc.1 + IL_004b: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0050: callvirt instance class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Callback() + IL_0055: callvirt instance native int Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype::Invoke(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_005a: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle(native int) + IL_005f: nop + .line 76,76 : 17,55 '' + IL_0060: ldloc.1 + IL_0061: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0066: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_006b: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0070: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0075: ldc.i4.0 + IL_0076: ceq + IL_0078: stloc.2 + IL_0079: ldloc.2 + IL_007a: brtrue.s IL_0097 + + .line 77,77 : 21,144 '' + IL_007c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionCreationFailed() + IL_0081: ldloc.1 + IL_0082: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0087: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_008c: call string [mscorlib]System.String::Format(string, + object) + IL_0091: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0096: throw + + .line 78,78 : 13,14 '' + IL_0097: nop + IL_0098: br.s IL_00e3 + + .line 80,80 : 13,14 '' + IL_009a: nop + .line 81,84 : 17,20 '' + IL_009b: ldloc.1 + IL_009c: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_00a1: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Owner() + IL_00a6: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_00ab: ldloc.0 + IL_00ac: brtrue.s IL_00bd + + IL_00ae: ldloc.1 + IL_00af: ldftn instance bool Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::'b__0'(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_00b5: newobj instance void class [mscorlib]System.Predicate`1::.ctor(object, + native int) + IL_00ba: stloc.0 + IL_00bb: br.s IL_00bd + + IL_00bd: ldloc.0 + IL_00be: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Exists(class [mscorlib]System.Predicate`1) + IL_00c3: stloc.2 + IL_00c4: ldloc.2 + IL_00c5: brtrue.s IL_00e2 + + .line 85,85 : 21,152 '' + IL_00c7: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists() + IL_00cc: ldloc.1 + IL_00cd: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_00d2: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_00d7: call string [mscorlib]System.String::Format(string, + object) + IL_00dc: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_00e1: throw + + .line 86,86 : 13,14 '' + IL_00e2: nop + .line 87,87 : 9,10 '' + IL_00e3: nop + IL_00e4: ret + } // end of method HookManager::CreateServiceFunction + + .method private hidebysig static void HookEvent(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook) cil managed + { + // Code size 91 (0x5b) + .maxstack 4 + .locals init ([0] bool CS$4$0000) + .line 90,90 : 9,10 '' + IL_0000: nop + .line 91,91 : 13,121 '' + IL_0001: ldarg.0 + IL_0002: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0007: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_000c: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0011: ldfld class Virtuoso.Hyphen.Native.HookEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::HookEvent + IL_0016: ldarg.0 + IL_0017: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_001c: ldarg.0 + IL_001d: callvirt instance class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Callback() + IL_0022: callvirt instance native int Virtuoso.Hyphen.Native.HookEventPrototype::Invoke(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0027: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle(native int) + IL_002c: nop + .line 93,93 : 13,51 '' + IL_002d: ldarg.0 + IL_002e: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0033: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0038: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_003d: ldc.i4.0 + IL_003e: ceq + IL_0040: stloc.0 + IL_0041: ldloc.0 + IL_0042: brtrue.s IL_005a + + .line 94,94 : 17,129 '' + IL_0044: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_EventHookingFailed() + IL_0049: ldarg.0 + IL_004a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_004f: call string [mscorlib]System.String::Format(string, + object) + IL_0054: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0059: throw + + .line 95,95 : 9,10 '' + IL_005a: ret + } // end of method HookManager::HookEvent + + .method public hidebysig static void DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook) cil managed + { + // Code size 80 (0x50) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType CS$4$0000) + .line 98,98 : 9,10 '' + IL_0000: nop + .line 100,100 : 13,14 '' + .try + { + IL_0001: nop + .line 101,101 : 17,67 '' + IL_0002: ldarg.0 + IL_0003: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + IL_0008: nop + .line 103,103 : 17,39 '' + IL_0009: ldarg.0 + IL_000a: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: ldc.i4.1 + IL_0012: sub + IL_0013: switch ( + IL_0022, + IL_002c) + IL_0020: br.s IL_0036 + + .line 106,106 : 25,26 '' + IL_0022: nop + .line 107,107 : 29,47 '' + IL_0023: ldarg.0 + IL_0024: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::UnhookEvent(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0029: nop + .line 108,108 : 29,35 '' + IL_002a: br.s IL_0041 + + .line 111,111 : 25,26 '' + IL_002c: nop + .line 112,112 : 29,58 '' + IL_002d: ldarg.0 + IL_002e: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyServiceFunction(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0033: nop + .line 113,113 : 29,35 '' + IL_0034: br.s IL_0041 + + .line 116,116 : 25,67 '' + IL_0036: ldstr "descriptor" + IL_003b: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0040: throw + + .line 118,118 : 13,14 '' + IL_0041: nop + IL_0042: leave.s IL_004e + + .line 120,120 : 13,14 '' + } // end .try + finally + { + IL_0044: nop + .line 121,121 : 17,55 '' + IL_0045: ldarg.0 + IL_0046: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_004b: nop + .line 122,122 : 13,14 '' + IL_004c: nop + IL_004d: endfinally + } // end handler + IL_004e: nop + .line 123,123 : 9,10 '' + IL_004f: ret + } // end of method HookManager::DestroyHook + + .method private hidebysig static void UnhookEvent(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor) cil managed + { + // Code size 149 (0x95) + .maxstack 2 + .locals init ([0] int32 result, + [1] bool CS$4$0000) + .line 126,126 : 9,10 '' + IL_0000: nop + .line 127,127 : 13,36 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 128,128 : 17,63 '' + IL_000c: ldstr "descriptor" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 130,130 : 13,59 '' + IL_0017: ldarg.0 + IL_0018: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + IL_001d: ldc.i4.1 + IL_001e: ceq + IL_0020: stloc.1 + IL_0021: ldloc.1 + IL_0022: brtrue.s IL_002f + + .line 131,131 : 17,69 '' + IL_0024: ldstr "descriptor" + IL_0029: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_002e: throw + + .line 133,133 : 13,57 '' + IL_002f: ldarg.0 + IL_0030: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0035: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_003a: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_003f: ldc.i4.0 + IL_0040: ceq + IL_0042: stloc.1 + IL_0043: ldloc.1 + IL_0044: brtrue.s IL_0048 + + .line 134,134 : 17,24 '' + IL_0046: br.s IL_0094 + + .line 137,137 : 13,14 '' + .try + { + IL_0048: nop + .line 138,138 : 17,73 '' + IL_0049: ldarg.0 + IL_004a: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + IL_004f: nop + .line 140,140 : 17,119 '' + IL_0050: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0055: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_005a: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_005f: ldfld class Virtuoso.Hyphen.Native.UnhookEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::UnhookEvent + IL_0064: ldarg.0 + IL_0065: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_006a: callvirt instance int32 Virtuoso.Hyphen.Native.UnhookEventPrototype::Invoke(native int) + IL_006f: stloc.0 + .line 141,141 : 17,43 '' + IL_0070: ldloc.0 + IL_0071: ldc.i4.0 + IL_0072: ceq + IL_0074: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0079: nop + .line 143,143 : 17,56 '' + IL_007a: ldarg.0 + IL_007b: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0080: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle(native int) + IL_0085: nop + .line 144,144 : 13,14 '' + IL_0086: nop + IL_0087: leave.s IL_0093 + + .line 146,146 : 13,14 '' + } // end .try + finally + { + IL_0089: nop + .line 147,147 : 17,61 '' + IL_008a: ldarg.0 + IL_008b: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0090: nop + .line 148,148 : 13,14 '' + IL_0091: nop + IL_0092: endfinally + } // end handler + IL_0093: nop + .line 149,149 : 9,10 '' + IL_0094: ret + } // end of method HookManager::UnhookEvent + + .method private hidebysig static void DestroyServiceFunction(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor) cil managed + { + // Code size 149 (0x95) + .maxstack 2 + .locals init ([0] int32 result, + [1] bool CS$4$0000) + .line 152,152 : 9,10 '' + IL_0000: nop + .line 153,153 : 13,36 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 154,154 : 17,63 '' + IL_000c: ldstr "descriptor" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 156,156 : 13,65 '' + IL_0017: ldarg.0 + IL_0018: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + IL_001d: ldc.i4.2 + IL_001e: ceq + IL_0020: stloc.1 + IL_0021: ldloc.1 + IL_0022: brtrue.s IL_002f + + .line 157,157 : 17,69 '' + IL_0024: ldstr "descriptor" + IL_0029: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_002e: throw + + .line 159,159 : 13,57 '' + IL_002f: ldarg.0 + IL_0030: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0035: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_003a: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_003f: ldc.i4.0 + IL_0040: ceq + IL_0042: stloc.1 + IL_0043: ldloc.1 + IL_0044: brtrue.s IL_0048 + + .line 160,160 : 17,24 '' + IL_0046: br.s IL_0094 + + .line 163,163 : 13,14 '' + .try + { + IL_0048: nop + .line 164,164 : 17,73 '' + IL_0049: ldarg.0 + IL_004a: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + IL_004f: nop + .line 166,166 : 17,130 '' + IL_0050: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0055: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_005a: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_005f: ldfld class Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype Virtuoso.Hyphen.Native.NativePluginLink::DestroyServiceFunction + IL_0064: ldarg.0 + IL_0065: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_006a: callvirt instance int32 Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype::Invoke(native int) + IL_006f: stloc.0 + .line 167,167 : 17,43 '' + IL_0070: ldloc.0 + IL_0071: ldc.i4.0 + IL_0072: ceq + IL_0074: call void [System]System.Diagnostics.Debug::Assert(bool) + IL_0079: nop + .line 169,169 : 17,56 '' + IL_007a: ldarg.0 + IL_007b: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0080: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle(native int) + IL_0085: nop + .line 170,170 : 13,14 '' + IL_0086: nop + IL_0087: leave.s IL_0093 + + .line 172,172 : 13,14 '' + } // end .try + finally + { + IL_0089: nop + .line 173,173 : 17,61 '' + IL_008a: ldarg.0 + IL_008b: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0090: nop + .line 174,174 : 13,14 '' + IL_0091: nop + IL_0092: endfinally + } // end handler + IL_0093: nop + .line 175,175 : 9,10 '' + IL_0094: ret + } // end of method HookManager::DestroyServiceFunction + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.HookManager + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager + extends [mscorlib]System.Object +{ + .method public hidebysig static void CreateServiceFunction(string serviceName, + class Virtuoso.Miranda.Plugins.Callback callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin owner) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 170 (0xaa) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection collection, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [2] bool CS$4$0000) + .line 31,31 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ServiceManager.cs' + IL_0000: nop + .line 32,32 : 13,51 '' + IL_0001: ldarg.0 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.2 + IL_000b: ldloc.2 + IL_000c: brtrue.s IL_0019 + + .line 33,33 : 17,64 '' + IL_000e: ldstr "serviceName" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 35,35 : 13,34 '' + IL_0019: ldarg.1 + IL_001a: ldnull + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.2 + IL_0021: ldloc.2 + IL_0022: brtrue.s IL_002f + + .line 36,36 : 17,61 '' + IL_0024: ldstr "callback" + IL_0029: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002e: throw + + .line 38,38 : 13,31 '' + IL_002f: ldarg.2 + IL_0030: ldnull + IL_0031: ceq + IL_0033: ldc.i4.0 + IL_0034: ceq + IL_0036: stloc.2 + IL_0037: ldloc.2 + IL_0038: brtrue.s IL_0045 + + .line 39,39 : 17,58 '' + IL_003a: ldstr "owner" + IL_003f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0044: throw + + .line 41,41 : 13,36 '' + IL_0045: ldarg.2 + IL_0046: callvirt instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized() + IL_004b: stloc.2 + IL_004c: ldloc.2 + IL_004d: brtrue.s IL_005a + + .line 42,42 : 17,102 '' + IL_004f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_0054: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0059: throw + + .line 44,44 : 13,85 '' + IL_005a: ldarg.2 + IL_005b: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0060: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_0065: stloc.0 + .line 47,47 : 13,14 '' + .try + { + IL_0066: nop + .line 48,48 : 17,64 '' + IL_0067: ldarg.2 + IL_0068: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginPluginUpdate(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_006d: nop + .line 49,49 : 17,73 '' + IL_006e: ldloc.0 + IL_006f: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_0074: nop + .line 51,51 : 17,153 '' + IL_0075: ldloc.0 + IL_0076: ldarg.0 + IL_0077: ldarg.2 + IL_0078: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_007d: ldarg.1 + IL_007e: ldc.i4.2 + IL_007f: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0084: stloc.1 + .line 52,52 : 17,54 '' + IL_0085: ldloc.1 + IL_0086: ldc.i4.1 + IL_0087: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_RegisteredManually(bool) + IL_008c: nop + .line 54,54 : 17,52 '' + IL_008d: ldloc.1 + IL_008e: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0093: nop + .line 55,55 : 13,14 '' + IL_0094: nop + IL_0095: leave.s IL_00a8 + + .line 57,57 : 13,14 '' + } // end .try + finally + { + IL_0097: nop + .line 58,58 : 17,56 '' + IL_0098: ldarg.2 + IL_0099: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_009e: nop + .line 59,59 : 17,61 '' + IL_009f: ldloc.0 + IL_00a0: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_00a5: nop + .line 60,60 : 13,14 '' + IL_00a6: nop + IL_00a7: endfinally + } // end handler + IL_00a8: nop + .line 61,61 : 9,10 '' + IL_00a9: ret + } // end of method ServiceManager::CreateServiceFunction + + .method public hidebysig static bool ServiceExists(string name) cil managed + { + // Code size 38 (0x26) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 64,64 : 9,10 '' + IL_0000: nop + .line 65,65 : 13,96 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_000b: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0010: ldfld class Virtuoso.Hyphen.Native.ServiceExistsPrototype Virtuoso.Hyphen.Native.NativePluginLink::ServiceExists + IL_0015: ldarg.0 + IL_0016: callvirt instance int32 Virtuoso.Hyphen.Native.ServiceExistsPrototype::Invoke(string) + IL_001b: ldc.i4.0 + IL_001c: ceq + IL_001e: ldc.i4.0 + IL_001f: ceq + IL_0021: stloc.0 + IL_0022: br.s IL_0024 + + .line 66,66 : 9,10 '' + IL_0024: ldloc.0 + IL_0025: ret + } // end of method ServiceManager::ServiceExists + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Callback + GetService(string serviceName) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Callback CS$1$0000) + .line 70,70 : 9,10 '' + IL_0000: nop + .line 71,71 : 13,56 '' + IL_0001: ldarg.0 + IL_0002: call class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::Create(string) + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 72,72 : 9,10 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ServiceManager::GetService + + .method public hidebysig static void RemoveServiceFunction(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + string eventName) cil managed + { + // Code size 121 (0x79) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection collection, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [2] bool CS$4$0000) + .line 75,75 : 9,10 '' + IL_0000: nop + .line 76,76 : 13,31 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.2 + IL_0009: ldloc.2 + IL_000a: brtrue.s IL_0017 + + .line 77,77 : 17,58 '' + IL_000c: ldstr "owner" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 79,79 : 13,49 '' + IL_0017: ldarg.1 + IL_0018: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: stloc.2 + IL_0021: ldloc.2 + IL_0022: brtrue.s IL_002f + + .line 80,80 : 17,62 '' + IL_0024: ldstr "eventName" + IL_0029: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002e: throw + + .line 82,82 : 13,85 '' + IL_002f: ldarg.0 + IL_0030: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0035: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_003a: stloc.0 + .line 85,85 : 13,14 '' + .try + { + IL_003b: nop + .line 86,86 : 17,73 '' + IL_003c: ldloc.0 + IL_003d: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + IL_0042: nop + .line 87,87 : 17,50 '' + IL_0043: ldnull + IL_0044: stloc.1 + .line 89,89 : 17,71 '' + IL_0045: ldloc.0 + IL_0046: ldarg.1 + IL_0047: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Find(string) + IL_004c: dup + IL_004d: stloc.1 + IL_004e: ldnull + IL_004f: ceq + IL_0051: ldc.i4.0 + IL_0052: ceq + IL_0054: stloc.2 + IL_0055: ldloc.2 + IL_0056: brtrue.s IL_005a + + .line 90,90 : 21,28 '' + IL_0058: leave.s IL_0077 + + .line 92,92 : 17,53 '' + IL_005a: ldloc.1 + IL_005b: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0060: nop + .line 93,93 : 17,47 '' + IL_0061: ldloc.0 + IL_0062: ldloc.1 + IL_0063: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_0068: pop + .line 94,94 : 13,14 '' + IL_0069: nop + IL_006a: leave.s IL_0076 + + .line 96,96 : 13,14 '' + } // end .try + finally + { + IL_006c: nop + .line 97,97 : 17,61 '' + IL_006d: ldloc.0 + IL_006e: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0073: nop + .line 98,98 : 13,14 '' + IL_0074: nop + IL_0075: endfinally + } // end handler + IL_0076: nop + IL_0077: nop + .line 99,99 : 9,10 '' + IL_0078: ret + } // end of method ServiceManager::RemoveServiceFunction + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public native int DbEventInfoPtr + .field public int32 DataType + .field public int32 Codepage +} // end of class Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Native.MMI_MallocPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method MMI_MallocPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(int32 size) runtime managed + { + } // end of method MMI_MallocPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(int32 size, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method MMI_MallocPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method MMI_MallocPrototype::EndInvoke + +} // end of class Virtuoso.Miranda.Plugins.Native.MMI_MallocPrototype + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Native.MMI_ReallocPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method MMI_ReallocPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(native int ptr, + int32 size) runtime managed + { + } // end of method MMI_ReallocPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int ptr, + int32 size, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method MMI_ReallocPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method MMI_ReallocPrototype::EndInvoke + +} // end of class Virtuoso.Miranda.Plugins.Native.MMI_ReallocPrototype + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method MMI_FreePrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(native int ptr) runtime managed + { + } // end of method MMI_FreePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int ptr, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method MMI_FreePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method MMI_FreePrototype::EndInvoke + +} // end of class Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public int32 Size + .field public initonly class Virtuoso.Miranda.Plugins.Native.MMI_MallocPrototype Malloc + .field public initonly class Virtuoso.Miranda.Plugins.Native.MMI_ReallocPrototype Realloc + .field public initonly class Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype Free +} // end of class Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + +.class private abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.UUID + extends [mscorlib]System.Object +{ + .field private static initonly valuetype [mscorlib]System.Guid hyphenUUID + .field private static initonly valuetype [mscorlib]System.Guid HyphenInterfaceUUID + .field private static native int hyphenInterfaceUUIDs + .field private static valuetype [mscorlib]System.Guid protocolUUID + .method public hidebysig specialname static + valuetype [mscorlib]System.Guid + get_HyphenUUID() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] valuetype [mscorlib]System.Guid CS$1$0000) + .line 34,34 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\UUID.cs' + IL_0000: nop + .line 34,34 : 19,42 '' + IL_0001: ldsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::hyphenUUID + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 34,34 : 43,44 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method UUID::get_HyphenUUID + + .method public hidebysig specialname static + native int get_HyphenInterfaceUUIDs() cil managed + { + // Code size 139 (0x8b) + .maxstack 4 + .locals init ([0] int32 uuidSize, + [1] uint8[] uuidBytes, + [2] native int CS$1$0000, + [3] bool CS$4$0001, + [4] valuetype [mscorlib]System.Guid CS$0$0002) + .line 47,47 : 13,14 '' + IL_0000: nop + .line 48,48 : 17,57 '' + IL_0001: ldsfld native int Virtuoso.Miranda.Plugins.Native.UUID::hyphenInterfaceUUIDs + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0010: ldc.i4.0 + IL_0011: ceq + IL_0013: stloc.3 + IL_0014: ldloc.3 + IL_0015: brtrue.s IL_0081 + + .line 49,49 : 17,18 '' + IL_0017: nop + .line 50,50 : 21,65 '' + IL_0018: ldtoken [mscorlib]System.Guid + IL_001d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0022: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0027: stloc.0 + .line 51,51 : 21,79 '' + IL_0028: ldc.i4.2 + IL_0029: ldloc.0 + IL_002a: mul + IL_002b: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_0030: stsfld native int Virtuoso.Miranda.Plugins.Native.UUID::hyphenInterfaceUUIDs + .line 53,53 : 21,74 '' + IL_0035: ldsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::HyphenInterfaceUUID + IL_003a: stloc.s CS$0$0002 + IL_003c: ldloca.s CS$0$0002 + IL_003e: call instance uint8[] [mscorlib]System.Guid::ToByteArray() + IL_0043: stloc.1 + .line 54,54 : 21,88 '' + IL_0044: ldloc.1 + IL_0045: ldc.i4.0 + IL_0046: ldsfld native int Virtuoso.Miranda.Plugins.Native.UUID::hyphenInterfaceUUIDs + IL_004b: ldloc.1 + IL_004c: ldlen + IL_004d: conv.i4 + IL_004e: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + IL_0053: nop + .line 57,57 : 21,52 '' + IL_0054: call valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_Last() + IL_0059: stloc.s CS$0$0002 + IL_005b: ldloca.s CS$0$0002 + IL_005d: call instance uint8[] [mscorlib]System.Guid::ToByteArray() + IL_0062: stloc.1 + .line 58,58 : 21,121 '' + IL_0063: ldloc.1 + IL_0064: ldc.i4.0 + IL_0065: ldsflda native int Virtuoso.Miranda.Plugins.Native.UUID::hyphenInterfaceUUIDs + IL_006a: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_006f: ldloc.0 + IL_0070: conv.i8 + IL_0071: add + IL_0072: newobj instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_0077: ldloc.1 + IL_0078: ldlen + IL_0079: conv.i4 + IL_007a: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + IL_007f: nop + .line 59,59 : 17,18 '' + IL_0080: nop + .line 61,61 : 17,45 '' + IL_0081: ldsfld native int Virtuoso.Miranda.Plugins.Native.UUID::hyphenInterfaceUUIDs + IL_0086: stloc.2 + IL_0087: br.s IL_0089 + + .line 62,62 : 13,14 '' + IL_0089: ldloc.2 + IL_008a: ret + } // end of method UUID::get_HyphenInterfaceUUIDs + + .method public hidebysig specialname static + valuetype [mscorlib]System.Guid + get_Last() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] valuetype [mscorlib]System.Guid CS$1$0000) + .line 74,74 : 13,14 '' + IL_0000: nop + .line 75,75 : 17,35 '' + IL_0001: ldsfld valuetype [mscorlib]System.Guid [mscorlib]System.Guid::Empty + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 76,76 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method UUID::get_Last + + .method public hidebysig specialname static + valuetype [mscorlib]System.Guid + get_ProtocolUUID() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] valuetype [mscorlib]System.Guid CS$1$0000) + .line 82,82 : 17,18 '' + IL_0000: nop + .line 82,82 : 19,39 '' + IL_0001: ldsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::protocolUUID + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 82,82 : 40,41 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method UUID::get_ProtocolUUID + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 86 (0x56) + .maxstack 11 + .line 31,31 : 9,100 '' + IL_0000: ldstr "A9CB92EC-A8C9-493a-8763-77EB1DBA8228" + IL_0005: newobj instance void [mscorlib]System.Guid::.ctor(string) + IL_000a: stsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::hyphenUUID + .line 41,41 : 9,109 '' + IL_000f: ldstr "9E54961E-D2A2-4939-A23E-FF07F0A27D79" + IL_0014: newobj instance void [mscorlib]System.Guid::.ctor(string) + IL_0019: stsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::HyphenInterfaceUUID + .line 79,79 : 9,128 '' + IL_001e: ldc.i4 0x2a3c815e + IL_0023: ldc.i4 0xa7d9 + IL_0028: ldc.i4 0x424b + IL_002d: ldc.i4 0xba + IL_0032: ldc.i4.s 48 + IL_0034: ldc.i4.2 + IL_0035: ldc.i4 0xd0 + IL_003a: ldc.i4 0x83 + IL_003f: ldc.i4.s 34 + IL_0041: ldc.i4 0x90 + IL_0046: ldc.i4 0x85 + IL_004b: newobj instance void [mscorlib]System.Guid::.ctor(uint32, + uint16, + uint16, + uint8, + uint8, + uint8, + uint8, + uint8, + uint8, + uint8, + uint8) + IL_0050: stsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::protocolUUID + IL_0055: ret + } // end of method UUID::.cctor + + .property valuetype [mscorlib]System.Guid + HyphenUUID() + { + .get valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_HyphenUUID() + } // end of property UUID::HyphenUUID + .property native int HyphenInterfaceUUIDs() + { + .get native int Virtuoso.Miranda.Plugins.Native.UUID::get_HyphenInterfaceUUIDs() + } // end of property UUID::HyphenInterfaceUUIDs + .property valuetype [mscorlib]System.Guid + Last() + { + .get valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_Last() + } // end of property UUID::Last + .property valuetype [mscorlib]System.Guid + ProtocolUUID() + { + .get valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_ProtocolUUID() + } // end of property UUID::ProtocolUUID +} // end of class Virtuoso.Miranda.Plugins.Native.UUID + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Helpers.Sandbox + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject +{ + .class auto ansi sealed nested private beforefieldinit MirandaContextInitHelper + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject + { + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) cil managed + { + // Code size 45 (0x2d) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 49,49 : 13,68 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\Sandbox.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + IL_0006: nop + .line 50,50 : 13,14 '' + IL_0007: nop + .line 51,51 : 17,37 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 52,52 : 21,64 '' + IL_0013: ldstr "context" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 54,54 : 17,52 '' + IL_001e: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InvalidateCurrent() + IL_0023: nop + .line 55,55 : 17,59 '' + IL_0024: ldarg.1 + IL_0025: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext) + IL_002a: nop + .line 56,56 : 13,14 '' + IL_002b: nop + IL_002c: ret + } // end of method MirandaContextInitHelper::.ctor + + } // end of class MirandaContextInitHelper + + .field private class [mscorlib]System.AppDomain hostingAppDomain + .method family hidebysig specialname instance class [mscorlib]System.AppDomain + get_HostingAppDomain() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.AppDomain CS$1$0000) + .line 40,40 : 17,18 '' + IL_0000: nop + .line 40,40 : 19,43 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 40,40 : 44,45 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Sandbox::get_HostingAppDomain + + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 63,63 : 9,28 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + IL_0006: nop + .line 63,63 : 29,30 '' + IL_0007: nop + .line 63,63 : 31,32 '' + IL_0008: nop + IL_0009: ret + } // end of method Sandbox::.ctor + + .method public hidebysig static void Unload(class Virtuoso.Miranda.Plugins.Helpers.Sandbox sandbox) cil managed + { + // Code size 91 (0x5b) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 66,66 : 9,10 '' + IL_0000: nop + .line 67,67 : 13,33 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 68,68 : 17,60 '' + IL_000c: ldstr "sandbox" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 70,70 : 13,50 '' + IL_0017: ldarg.0 + IL_0018: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_001d: ldnull + IL_001e: ceq + IL_0020: ldc.i4.0 + IL_0021: ceq + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: brtrue.s IL_002d + + .line 71,71 : 17,47 '' + IL_0027: newobj instance void [mscorlib]System.ArgumentException::.ctor() + IL_002c: throw + + .line 73,73 : 13,69 '' + IL_002d: ldarg.0 + IL_002e: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0033: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0038: ceq + IL_003a: ldc.i4.0 + IL_003b: ceq + IL_003d: stloc.0 + IL_003e: ldloc.0 + IL_003f: brtrue.s IL_004c + + .line 74,74 : 17,128 '' + IL_0041: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain() + IL_0046: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_004b: throw + + .line 76,76 : 13,39 '' + IL_004c: ldarg.0 + IL_004d: callvirt instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::OnSandboxUnload() + IL_0052: nop + .line 77,77 : 13,46 '' + IL_0053: ldarg.0 + IL_0054: callvirt instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::UnloadHostingAppDomain() + IL_0059: nop + .line 78,78 : 9,10 '' + IL_005a: ret + } // end of method Sandbox::Unload + + .method family hidebysig newslot virtual + instance void InitializeAppDomainSetup(class [mscorlib]System.AppDomainSetup domainSetup) cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 84,84 : 85,86 '' + IL_0000: nop + .line 84,84 : 87,88 '' + IL_0001: ret + } // end of method Sandbox::InitializeAppDomainSetup + + .method family hidebysig newslot virtual + instance void OnSandboxUnload() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 86,86 : 50,51 '' + IL_0000: nop + .line 86,86 : 52,53 '' + IL_0001: ret + } // end of method Sandbox::OnSandboxUnload + + .method family hidebysig static class [mscorlib]System.Security.Policy.StrongName + GetStrongName(class [mscorlib]System.Reflection.Assembly 'assembly') cil managed + { + // Code size 126 (0x7e) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Reflection.AssemblyName assemblyName, + [1] uint8[] publicKey, + [2] class [mscorlib]System.Security.Permissions.StrongNamePublicKeyBlob keyBlob, + [3] class [mscorlib]System.Security.Policy.StrongName CS$1$0000, + [4] bool CS$4$0001) + .line 93,93 : 9,10 '' + IL_0000: nop + .line 94,94 : 13,34 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0001 + IL_000a: ldloc.s CS$4$0001 + IL_000c: brtrue.s IL_0019 + + .line 95,95 : 17,61 '' + IL_000e: ldstr "assembly" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 97,97 : 13,60 '' + IL_0019: ldarg.0 + IL_001a: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_001f: stloc.0 + .line 98,98 : 13,79 '' + IL_0020: ldloc.0 + IL_0021: ldnull + IL_0022: ceq + IL_0024: ldc.i4.0 + IL_0025: ceq + IL_0027: ldstr "Could not get assembly name" + IL_002c: call void [System]System.Diagnostics.Debug::Assert(bool, + string) + IL_0031: nop + .line 100,100 : 13,60 '' + IL_0032: ldloc.0 + IL_0033: callvirt instance uint8[] [mscorlib]System.Reflection.AssemblyName::GetPublicKey() + IL_0038: stloc.1 + .line 101,101 : 13,60 '' + IL_0039: ldloc.1 + IL_003a: brfalse.s IL_0047 + + IL_003c: ldloc.1 + IL_003d: ldlen + IL_003e: conv.i4 + IL_003f: ldc.i4.0 + IL_0040: ceq + IL_0042: ldc.i4.0 + IL_0043: ceq + IL_0045: br.s IL_0048 + + IL_0047: ldc.i4.0 + IL_0048: nop + IL_0049: stloc.s CS$4$0001 + IL_004b: ldloc.s CS$4$0001 + IL_004d: brtrue.s IL_0060 + + .line 102,102 : 17,107 '' + IL_004f: ldstr "{0} is not strongly named" + IL_0054: ldarg.0 + IL_0055: call string [mscorlib]System.String::Format(string, + object) + IL_005a: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_005f: throw + + .line 104,104 : 13,86 '' + IL_0060: ldloc.1 + IL_0061: newobj instance void [mscorlib]System.Security.Permissions.StrongNamePublicKeyBlob::.ctor(uint8[]) + IL_0066: stloc.2 + .line 105,105 : 13,85 '' + IL_0067: ldloc.2 + IL_0068: ldloc.0 + IL_0069: callvirt instance string [mscorlib]System.Reflection.AssemblyName::get_Name() + IL_006e: ldloc.0 + IL_006f: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_0074: newobj instance void [mscorlib]System.Security.Policy.StrongName::.ctor(class [mscorlib]System.Security.Permissions.StrongNamePublicKeyBlob, + string, + class [mscorlib]System.Version) + IL_0079: stloc.3 + IL_007a: br.s IL_007c + + .line 106,106 : 9,10 '' + IL_007c: ldloc.3 + IL_007d: ret + } // end of method Sandbox::GetStrongName + + .method family hidebysig instance void + SetUpHostingAppDomain(string name) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 113,113 : 9,10 '' + IL_0000: nop + .line 114,114 : 13,53 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldnull + IL_0004: ldnull + IL_0005: ldc.i4.0 + IL_0006: newarr [mscorlib]System.Security.Policy.StrongName + IL_000b: call instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::SetUpHostingAppDomain(string, + class [mscorlib]System.Security.Policy.Evidence, + class [mscorlib]System.Security.PermissionSet, + class [mscorlib]System.Security.Policy.StrongName[]) + IL_0010: nop + .line 115,115 : 9,10 '' + IL_0011: ret + } // end of method Sandbox::SetUpHostingAppDomain + + .method family hidebysig instance void + SetUpHostingAppDomain(string name, + class [mscorlib]System.Security.Policy.Evidence evidence, + class [mscorlib]System.Security.PermissionSet permissions, + class [mscorlib]System.Security.Policy.StrongName[] fullTrust) cil managed + { + .param [4] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 175 (0xaf) + .maxstack 6 + .locals init ([0] class [mscorlib]System.AppDomainSetup currentSetup, + [1] class [mscorlib]System.AppDomainSetup domainSetup, + [2] bool CS$4$0000) + .line 118,118 : 9,10 '' + IL_0000: nop + .line 119,119 : 13,44 '' + IL_0001: ldarg.1 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.2 + IL_000b: ldloc.2 + IL_000c: brtrue.s IL_0019 + + .line 120,120 : 17,57 '' + IL_000e: ldstr "name" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 122,122 : 13,42 '' + IL_0019: ldarg.0 + IL_001a: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_001f: ldnull + IL_0020: ceq + IL_0022: stloc.2 + IL_0023: ldloc.2 + IL_0024: brtrue.s IL_002c + + .line 123,123 : 17,55 '' + IL_0026: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_002b: throw + + .line 125,125 : 13,84 '' + IL_002c: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0031: callvirt instance class [mscorlib]System.AppDomainSetup [mscorlib]System.AppDomain::get_SetupInformation() + IL_0036: stloc.0 + .line 126,126 : 13,63 '' + IL_0037: newobj instance void [mscorlib]System.AppDomainSetup::.ctor() + IL_003c: stloc.1 + .line 128,128 : 13,48 '' + IL_003d: ldloc.1 + IL_003e: ldarg.1 + IL_003f: callvirt instance void [mscorlib]System.AppDomainSetup::set_ApplicationName(string) + IL_0044: nop + .line 129,129 : 13,72 '' + IL_0045: ldloc.1 + IL_0046: ldloc.0 + IL_0047: callvirt instance string [mscorlib]System.AppDomainSetup::get_ApplicationBase() + IL_004c: callvirt instance void [mscorlib]System.AppDomainSetup::set_ApplicationBase(string) + IL_0051: nop + .line 130,130 : 13,174 '' + IL_0052: ldloc.1 + IL_0053: ldstr "{0};{1};" + IL_0058: ldstr "plugins\\" + IL_005d: ldstr "plugins\\managed" + IL_0062: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0067: callvirt instance void [mscorlib]System.AppDomainSetup::set_PrivateBinPath(string) + IL_006c: nop + .line 131,131 : 13,76 '' + IL_006d: ldloc.1 + IL_006e: ldloc.0 + IL_006f: callvirt instance string [mscorlib]System.AppDomainSetup::get_ConfigurationFile() + IL_0074: callvirt instance void [mscorlib]System.AppDomainSetup::set_ConfigurationFile(string) + IL_0079: nop + .line 133,133 : 13,51 '' + IL_007a: ldarg.0 + IL_007b: ldloc.1 + IL_007c: callvirt instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::InitializeAppDomainSetup(class [mscorlib]System.AppDomainSetup) + IL_0081: nop + .line 135,135 : 13,37 '' + IL_0082: ldarg.3 + IL_0083: ldnull + IL_0084: ceq + IL_0086: ldc.i4.0 + IL_0087: ceq + IL_0089: stloc.2 + IL_008a: ldloc.2 + IL_008b: brtrue.s IL_009d + + .line 136,136 : 17,84 '' + IL_008d: ldarg.0 + IL_008e: ldarg.1 + IL_008f: ldnull + IL_0090: ldloc.1 + IL_0091: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::CreateDomain(string, + class [mscorlib]System.Security.Policy.Evidence, + class [mscorlib]System.AppDomainSetup) + IL_0096: stfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_009b: br.s IL_00ae + + .line 138,138 : 17,112 '' + IL_009d: ldarg.0 + IL_009e: ldarg.1 + IL_009f: ldarg.2 + IL_00a0: ldloc.1 + IL_00a1: ldarg.3 + IL_00a2: ldarg.s fullTrust + IL_00a4: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::CreateDomain(string, + class [mscorlib]System.Security.Policy.Evidence, + class [mscorlib]System.AppDomainSetup, + class [mscorlib]System.Security.PermissionSet, + class [mscorlib]System.Security.Policy.StrongName[]) + IL_00a9: stfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + .line 139,139 : 9,10 '' + IL_00ae: ret + } // end of method Sandbox::SetUpHostingAppDomain + + .method family hidebysig instance void + UnloadHostingAppDomain() cil managed + { + // Code size 45 (0x2d) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 142,142 : 9,10 '' + IL_0000: nop + .line 143,143 : 13,42 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.0 + IL_000e: ldloc.0 + IL_000f: brtrue.s IL_0017 + + .line 144,144 : 17,55 '' + IL_0011: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0016: throw + + .line 146,146 : 13,14 '' + IL_0017: nop + .line 147,147 : 17,52 '' + IL_0018: ldarg.0 + IL_0019: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_001e: call void [mscorlib]System.AppDomain::Unload(class [mscorlib]System.AppDomain) + IL_0023: nop + .line 148,148 : 17,41 '' + IL_0024: ldarg.0 + IL_0025: ldnull + IL_0026: stfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + .line 149,149 : 13,14 '' + IL_002b: nop + .line 150,150 : 9,10 '' + IL_002c: ret + } // end of method Sandbox::UnloadHostingAppDomain + + .method family hidebysig instance !!T InstantiateRemoteObject(string assemblyName, + string typeName, + object[] args) cil managed + { + .param [3] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 45 (0x2d) + .maxstack 10 + .locals init ([0] !!T CS$1$0000) + .line 153,153 : 9,10 '' + IL_0000: nop + .line 154,154 : 13,237 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0007: ldarg.1 + IL_0008: ldarg.2 + IL_0009: ldc.i4.1 + IL_000a: ldc.i4 0x234 + IL_000f: ldnull + IL_0010: ldarg.3 + IL_0011: ldnull + IL_0012: ldnull + IL_0013: ldnull + IL_0014: call class [mscorlib]System.Runtime.Remoting.ObjectHandle [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.AppDomain, + string, + string, + bool, + valuetype [mscorlib]System.Reflection.BindingFlags, + class [mscorlib]System.Reflection.Binder, + object[], + class [mscorlib]System.Globalization.CultureInfo, + object[], + class [mscorlib]System.Security.Policy.Evidence) + IL_0019: callvirt instance object [mscorlib]System.Runtime.Remoting.ObjectHandle::Unwrap() + IL_001e: isinst !!T + IL_0023: unbox.any !!T + IL_0028: stloc.0 + IL_0029: br.s IL_002b + + .line 155,155 : 9,10 '' + IL_002b: ldloc.0 + IL_002c: ret + } // end of method Sandbox::InstantiateRemoteObject + + .method family hidebysig instance !!T InstantiateRemoteObjectFrom(string assemblyFile, + string typeName, + object[] args) cil managed + { + .param [3] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 45 (0x2d) + .maxstack 10 + .locals init ([0] !!T CS$1$0000) + .line 158,158 : 9,10 '' + IL_0000: nop + .line 159,159 : 13,241 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0007: ldarg.1 + IL_0008: ldarg.2 + IL_0009: ldc.i4.1 + IL_000a: ldc.i4 0x234 + IL_000f: ldnull + IL_0010: ldarg.3 + IL_0011: ldnull + IL_0012: ldnull + IL_0013: ldnull + IL_0014: call class [mscorlib]System.Runtime.Remoting.ObjectHandle [mscorlib]System.Activator::CreateInstanceFrom(class [mscorlib]System.AppDomain, + string, + string, + bool, + valuetype [mscorlib]System.Reflection.BindingFlags, + class [mscorlib]System.Reflection.Binder, + object[], + class [mscorlib]System.Globalization.CultureInfo, + object[], + class [mscorlib]System.Security.Policy.Evidence) + IL_0019: callvirt instance object [mscorlib]System.Runtime.Remoting.ObjectHandle::Unwrap() + IL_001e: isinst !!T + IL_0023: unbox.any !!T + IL_0028: stloc.0 + IL_0029: br.s IL_002b + + .line 160,160 : 9,10 '' + IL_002b: ldloc.0 + IL_002c: ret + } // end of method Sandbox::InstantiateRemoteObjectFrom + + .method family hidebysig instance void + InitializeRemoteContext(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) cil managed + { + // Code size 90 (0x5a) + .maxstack 6 + .locals init ([0] bool CS$4$0000, + [1] object[] CS$0$0001) + .line 163,163 : 9,10 '' + IL_0000: nop + .line 164,164 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0017 + + .line 165,165 : 17,60 '' + IL_000c: ldstr "context" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 167,167 : 13,42 '' + IL_0017: ldarg.0 + IL_0018: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_001d: ldnull + IL_001e: ceq + IL_0020: ldc.i4.0 + IL_0021: ceq + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: brtrue.s IL_002d + + .line 168,168 : 17,55 '' + IL_0027: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_002c: throw + + .line 170,170 : 13,157 '' + IL_002d: ldarg.0 + IL_002e: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetExecutingAssembly() + IL_0033: callvirt instance string [mscorlib]System.Reflection.Assembly::get_FullName() + IL_0038: ldtoken Virtuoso.Miranda.Plugins.Helpers.Sandbox/MirandaContextInitHelper + IL_003d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0042: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0047: ldc.i4.1 + IL_0048: newarr [mscorlib]System.Object + IL_004d: stloc.1 + IL_004e: ldloc.1 + IL_004f: ldc.i4.0 + IL_0050: ldarg.1 + IL_0051: stelem.ref + IL_0052: ldloc.1 + IL_0053: call instance !!0 Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject(string, + string, + object[]) + IL_0058: pop + .line 171,171 : 9,10 '' + IL_0059: ret + } // end of method Sandbox::InitializeRemoteContext + + .method public hidebysig instance void + SetUnhandledExceptionHandler(class [mscorlib]System.UnhandledExceptionEventHandler 'handler') cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 174,174 : 9,10 '' + IL_0000: nop + .line 175,175 : 13,60 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0007: ldarg.1 + IL_0008: callvirt instance void [mscorlib]System.AppDomain::add_UnhandledException(class [mscorlib]System.UnhandledExceptionEventHandler) + IL_000d: nop + .line 176,176 : 9,10 '' + IL_000e: ret + } // end of method Sandbox::SetUnhandledExceptionHandler + + .method public hidebysig instance void + RemoveUnhandledExceptionHandler(class [mscorlib]System.UnhandledExceptionEventHandler 'handler') cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 179,179 : 9,10 '' + IL_0000: nop + .line 180,180 : 13,60 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0007: ldarg.1 + IL_0008: callvirt instance void [mscorlib]System.AppDomain::remove_UnhandledException(class [mscorlib]System.UnhandledExceptionEventHandler) + IL_000d: nop + .line 181,181 : 9,10 '' + IL_000e: ret + } // end of method Sandbox::RemoveUnhandledExceptionHandler + + .property instance class [mscorlib]System.AppDomain + HostingAppDomain() + { + .get instance class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::get_HostingAppDomain() + } // end of property Sandbox::HostingAppDomain +} // end of class Virtuoso.Miranda.Plugins.Helpers.Sandbox + +.class private auto ansi sealed beforefieldinit Virtuoso.Hyphen.PluginsSandbox + extends Virtuoso.Miranda.Plugins.Helpers.Sandbox +{ + .field private class Virtuoso.Miranda.Plugins.AssemblyProbe assemblyProbe + .field private class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.AssemblyProbe + get_AssemblyProbe() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.AssemblyProbe CS$1$0000) + .line 39,39 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\PluginSandbox.cs' + IL_0000: nop + .line 39,39 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.PluginsSandbox::assemblyProbe + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 39,39 : 41,42 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginsSandbox::get_AssemblyProbe + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.PluginManagerBase + get_PluginManager() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginManagerBase CS$1$0000) + .line 45,45 : 17,18 '' + IL_0000: nop + .line 45,45 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::pluginManager + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 45,45 : 41,42 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginsSandbox::get_PluginManager + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 52,52 : 9,32 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::.ctor() + IL_0006: nop + .line 53,53 : 9,10 '' + IL_0007: nop + .line 54,54 : 13,52 '' + IL_0008: ldarg.0 + IL_0009: ldstr "HyphenPlugins" + IL_000e: call instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::SetUpHostingAppDomain(string) + IL_0013: nop + .line 55,55 : 9,10 '' + IL_0014: nop + IL_0015: ret + } // end of method PluginsSandbox::.ctor + + .method family hidebysig virtual instance void + InitializeAppDomainSetup(class [mscorlib]System.AppDomainSetup domainSetup) cil managed + { + // Code size 38 (0x26) + .maxstack 2 + .locals init ([0] bool CS$0$0000) + .line 58,58 : 9,10 '' + IL_0000: nop + .line 59,59 : 13,56 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::InitializeAppDomainSetup(class [mscorlib]System.AppDomainSetup) + IL_0008: nop + .line 61,61 : 13,59 '' + IL_0009: ldarg.1 + IL_000a: ldc.i4.1 + IL_000b: stloc.0 + IL_000c: ldloca.s CS$0$0000 + IL_000e: call instance string [mscorlib]System.Boolean::ToString() + IL_0013: callvirt instance void [mscorlib]System.AppDomainSetup::set_ShadowCopyFiles(string) + IL_0018: nop + .line 62,62 : 13,93 '' + IL_0019: ldarg.1 + IL_001a: call string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath() + IL_001f: callvirt instance void [mscorlib]System.AppDomainSetup::set_ShadowCopyDirectories(string) + IL_0024: nop + .line 63,63 : 9,10 '' + IL_0025: ret + } // end of method PluginsSandbox::InitializeAppDomainSetup + + .method public hidebysig instance void + LoadAssemblyProbe() cil managed + { + // Code size 157 (0x9d) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.AssemblyProbe customProbe, + [1] string fusionAssemblyName, + [2] string assemblyProbeTypeName, + [3] class [mscorlib]System.Exception e, + [4] bool CS$4$0000) + .line 66,66 : 9,10 '' + IL_0000: nop + .line 67,67 : 13,46 '' + IL_0001: ldnull + IL_0002: stloc.0 + .line 70,70 : 13,14 '' + .try + { + IL_0003: nop + .line 71,71 : 17,101 '' + IL_0004: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0009: callvirt instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomFusionAssemblyName() + IL_000e: stloc.1 + .line 72,72 : 17,107 '' + IL_000f: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0014: callvirt instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomAssemblyProbeTypeName() + IL_0019: stloc.2 + .line 74,74 : 17,111 '' + IL_001a: ldloc.1 + IL_001b: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0020: brtrue.s IL_002a + + IL_0022: ldloc.2 + IL_0023: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0028: br.s IL_002b + + IL_002a: ldc.i4.1 + IL_002b: nop + IL_002c: stloc.s CS$4$0000 + IL_002e: ldloc.s CS$4$0000 + IL_0030: brtrue.s IL_003c + + .line 75,75 : 21,123 '' + IL_0032: ldarg.0 + IL_0033: ldloc.1 + IL_0034: ldloc.2 + IL_0035: ldnull + IL_0036: call instance !!0 Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject(string, + string, + object[]) + IL_003b: stloc.0 + .line 76,76 : 13,14 '' + IL_003c: nop + IL_003d: leave.s IL_0065 + + .line 77,77 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_003f: stloc.3 + .line 78,78 : 13,14 '' + IL_0040: nop + .line 79,79 : 17,151 '' + IL_0041: ldc.i4.0 + IL_0042: ldstr "Hyphen" + IL_0047: ldstr "Unable to load custom assembly probe (" + IL_004c: ldloc.3 + IL_004d: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0052: ldstr "), defaulting to the built-in one." + IL_0057: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_005c: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_0061: nop + .line 80,80 : 13,14 '' + IL_0062: nop + IL_0063: leave.s IL_0065 + + } // end handler + IL_0065: nop + .line 82,82 : 13,151 '' + IL_0066: ldarg.0 + IL_0067: ldloc.0 + IL_0068: dup + IL_0069: brtrue.s IL_0097 + + IL_006b: pop + IL_006c: ldarg.0 + IL_006d: ldarg.0 + IL_006e: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0073: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0078: callvirt instance string [mscorlib]System.Reflection.Assembly::get_FullName() + IL_007d: ldtoken Virtuoso.Miranda.Plugins.DefaultAssemblyProbe + IL_0082: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0087: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_008c: ldc.i4.0 + IL_008d: newarr [mscorlib]System.Object + IL_0092: call instance !!0 Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject(string, + string, + object[]) + IL_0097: stfld class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.PluginsSandbox::assemblyProbe + .line 83,83 : 9,10 '' + IL_009c: ret + } // end of method PluginsSandbox::LoadAssemblyProbe + + .method public hidebysig instance void + LoadPluginManager(class Virtuoso.Hyphen.FusionContext context) cil managed + { + // Code size 180 (0xb4) + .maxstack 7 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginManagerBase customManager, + [1] string fusionAssemblyName, + [2] string pluginManagerTypeName, + [3] class [mscorlib]System.Exception e, + [4] bool CS$4$0000, + [5] object[] CS$0$0001) + .line 86,86 : 9,10 '' + IL_0000: nop + .line 87,87 : 13,52 '' + IL_0001: ldnull + IL_0002: stloc.0 + .line 90,90 : 13,14 '' + .try + { + IL_0003: nop + .line 91,91 : 17,101 '' + IL_0004: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0009: callvirt instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomFusionAssemblyName() + IL_000e: stloc.1 + .line 92,92 : 17,107 '' + IL_000f: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0014: callvirt instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomPluginManagerTypeName() + IL_0019: stloc.2 + .line 94,94 : 17,111 '' + IL_001a: ldloc.1 + IL_001b: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0020: brtrue.s IL_002a + + IL_0022: ldloc.2 + IL_0023: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0028: br.s IL_002b + + IL_002a: ldc.i4.1 + IL_002b: nop + IL_002c: stloc.s CS$4$0000 + IL_002e: ldloc.s CS$4$0000 + IL_0030: brtrue.s IL_004a + + .line 95,95 : 21,132 '' + IL_0032: ldarg.0 + IL_0033: ldloc.1 + IL_0034: ldloc.2 + IL_0035: ldc.i4.1 + IL_0036: newarr [mscorlib]System.Object + IL_003b: stloc.s CS$0$0001 + IL_003d: ldloc.s CS$0$0001 + IL_003f: ldc.i4.0 + IL_0040: ldarg.1 + IL_0041: stelem.ref + IL_0042: ldloc.s CS$0$0001 + IL_0044: call instance !!0 Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject(string, + string, + object[]) + IL_0049: stloc.0 + .line 96,96 : 13,14 '' + IL_004a: nop + IL_004b: leave.s IL_0073 + + .line 97,97 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_004d: stloc.3 + .line 98,98 : 13,14 '' + IL_004e: nop + .line 99,99 : 17,151 '' + IL_004f: ldc.i4.0 + IL_0050: ldstr "Hyphen" + IL_0055: ldstr "Unable to load custom plugin manager (" + IL_005a: ldloc.3 + IL_005b: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0060: ldstr "), defaulting to the built-in one." + IL_0065: call string [mscorlib]System.String::Concat(string, + string, + string) + IL_006a: call void Virtuoso.Miranda.Plugins.Log::DebuggerWrite(int32, + string, + string) + IL_006f: nop + .line 100,100 : 13,14 '' + IL_0070: nop + IL_0071: leave.s IL_0073 + + } // end handler + IL_0073: nop + .line 102,102 : 13,166 '' + IL_0074: ldarg.0 + IL_0075: ldloc.0 + IL_0076: dup + IL_0077: brtrue.s IL_00ae + + IL_0079: pop + IL_007a: ldarg.0 + IL_007b: ldarg.0 + IL_007c: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0081: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0086: callvirt instance string [mscorlib]System.Reflection.Assembly::get_FullName() + IL_008b: ldtoken Virtuoso.Miranda.Plugins.DefaultPluginManager + IL_0090: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0095: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_009a: ldc.i4.1 + IL_009b: newarr [mscorlib]System.Object + IL_00a0: stloc.s CS$0$0001 + IL_00a2: ldloc.s CS$0$0001 + IL_00a4: ldc.i4.0 + IL_00a5: ldarg.1 + IL_00a6: stelem.ref + IL_00a7: ldloc.s CS$0$0001 + IL_00a9: call instance !!0 Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject(string, + string, + object[]) + IL_00ae: stfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::pluginManager + .line 103,103 : 9,10 '' + IL_00b3: ret + } // end of method PluginsSandbox::LoadPluginManager + + .method public hidebysig specialname instance string + get_HostingAppDomainPrivateBinPath() cil managed + { + // Code size 22 (0x16) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 112,112 : 13,14 '' + IL_0000: nop + .line 113,113 : 17,73 '' + IL_0001: ldarg.0 + IL_0002: call instance class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::get_HostingAppDomain() + IL_0007: callvirt instance class [mscorlib]System.AppDomainSetup [mscorlib]System.AppDomain::get_SetupInformation() + IL_000c: callvirt instance string [mscorlib]System.AppDomainSetup::get_PrivateBinPath() + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 114,114 : 13,14 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method PluginsSandbox::get_HostingAppDomainPrivateBinPath + + .property instance class Virtuoso.Miranda.Plugins.AssemblyProbe + AssemblyProbe() + { + .get instance class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.PluginsSandbox::get_AssemblyProbe() + } // end of property PluginsSandbox::AssemblyProbe + .property instance class Virtuoso.Miranda.Plugins.PluginManagerBase + PluginManager() + { + .get instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + } // end of property PluginsSandbox::PluginManager + .property instance string HostingAppDomainPrivateBinPath() + { + .get instance string Virtuoso.Hyphen.PluginsSandbox::get_HostingAppDomainPrivateBinPath() + } // end of property PluginsSandbox::HostingAppDomainPrivateBinPath +} // end of class Virtuoso.Hyphen.PluginsSandbox + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Helpers.IniStructure + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested private LineType + extends [mscorlib]System.Enum + { + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType NotACategory = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Category = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Faulty = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Comment = int32(0x00000003) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Empty = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Ok = int32(0x00000005) + } // end of class LineType + + .field private class [mscorlib]System.Collections.SortedList Categories + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 76,76 : 3,52 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\IniStructure.cs' + IL_0000: ldarg.0 + IL_0001: newobj instance void [mscorlib]System.Collections.SortedList::.ctor() + IL_0006: stfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + .line 81,81 : 3,24 '' + IL_000b: ldarg.0 + IL_000c: call instance void [mscorlib]System.Object::.ctor() + IL_0011: nop + .line 82,82 : 3,4 '' + IL_0012: nop + .line 83,83 : 3,4 '' + IL_0013: nop + IL_0014: ret + } // end of method IniStructure::.ctor + + .method public hidebysig instance bool + AddCategory(string Name) cil managed + { + // Code size 115 (0x73) + .maxstack 3 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 90,90 : 3,4 '' + IL_0000: nop + .line 91,91 : 4,50 '' + IL_0001: ldarg.1 + IL_0002: ldstr "" + IL_0007: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000c: ldarg.0 + IL_000d: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0012: ldarg.1 + IL_0013: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0018: or + IL_0019: ldc.i4.0 + IL_001a: ceq + IL_001c: stloc.1 + IL_001d: ldloc.1 + IL_001e: brtrue.s IL_0024 + + .line 92,92 : 5,18 '' + IL_0020: ldc.i4.0 + IL_0021: stloc.0 + IL_0022: br.s IL_0071 + + .line 93,95 : 4,31 '' + IL_0024: ldarg.1 + IL_0025: ldc.i4.s 61 + IL_0027: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_002c: ldc.i4.m1 + IL_002d: ceq + IL_002f: ldc.i4.0 + IL_0030: ceq + IL_0032: ldarg.1 + IL_0033: ldc.i4.s 91 + IL_0035: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_003a: ldc.i4.m1 + IL_003b: ceq + IL_003d: ldc.i4.0 + IL_003e: ceq + IL_0040: or + IL_0041: ldarg.1 + IL_0042: ldc.i4.s 93 + IL_0044: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0049: ldc.i4.m1 + IL_004a: ceq + IL_004c: ldc.i4.0 + IL_004d: ceq + IL_004f: or + IL_0050: ldc.i4.0 + IL_0051: ceq + IL_0053: stloc.1 + IL_0054: ldloc.1 + IL_0055: brtrue.s IL_005b + + .line 96,96 : 5,18 '' + IL_0057: ldc.i4.0 + IL_0058: stloc.0 + IL_0059: br.s IL_0071 + + .line 98,98 : 4,43 '' + IL_005b: ldarg.0 + IL_005c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0061: ldarg.1 + IL_0062: newobj instance void [mscorlib]System.Collections.SortedList::.ctor() + IL_0067: callvirt instance void [mscorlib]System.Collections.SortedList::Add(object, + object) + IL_006c: nop + .line 99,99 : 4,16 '' + IL_006d: ldc.i4.1 + IL_006e: stloc.0 + IL_006f: br.s IL_0071 + + .line 100,100 : 3,4 '' + IL_0071: ldloc.0 + IL_0072: ret + } // end of method IniStructure::AddCategory + + .method public hidebysig instance bool + DeleteCategory(string Name) cil managed + { + // Code size 58 (0x3a) + .maxstack 3 + .locals init ([0] bool CS$1$0000, + [1] bool CS$4$0001) + .line 107,107 : 3,4 '' + IL_0000: nop + .line 108,108 : 4,51 '' + IL_0001: ldarg.1 + IL_0002: ldstr "" + IL_0007: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000c: ldarg.0 + IL_000d: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0012: ldarg.1 + IL_0013: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: or + IL_001c: ldc.i4.0 + IL_001d: ceq + IL_001f: stloc.1 + IL_0020: ldloc.1 + IL_0021: brtrue.s IL_0027 + + .line 109,109 : 5,18 '' + IL_0023: ldc.i4.0 + IL_0024: stloc.0 + IL_0025: br.s IL_0038 + + .line 110,110 : 4,28 '' + IL_0027: ldarg.0 + IL_0028: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_002d: ldarg.1 + IL_002e: callvirt instance void [mscorlib]System.Collections.SortedList::Remove(object) + IL_0033: nop + .line 111,111 : 4,16 '' + IL_0034: ldc.i4.1 + IL_0035: stloc.0 + IL_0036: br.s IL_0038 + + .line 112,112 : 3,4 '' + IL_0038: ldloc.0 + IL_0039: ret + } // end of method IniStructure::DeleteCategory + + .method public hidebysig instance bool + RenameCategory(string Name, + string NewName) cil managed + { + // Code size 152 (0x98) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 120,120 : 3,4 '' + IL_0000: nop + .line 121,121 : 4,67 '' + IL_0001: ldarg.1 + IL_0002: ldstr "" + IL_0007: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000c: ldarg.0 + IL_000d: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0012: ldarg.1 + IL_0013: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: or + IL_001c: ldarg.2 + IL_001d: ldstr "" + IL_0022: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0027: or + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: stloc.2 + IL_002c: ldloc.2 + IL_002d: brtrue.s IL_0033 + + .line 122,122 : 5,18 '' + IL_002f: ldc.i4.0 + IL_0030: stloc.1 + IL_0031: br.s IL_0096 + + .line 124,126 : 4,34 '' + IL_0033: ldarg.2 + IL_0034: ldc.i4.s 61 + IL_0036: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_003b: ldc.i4.m1 + IL_003c: ceq + IL_003e: ldc.i4.0 + IL_003f: ceq + IL_0041: ldarg.2 + IL_0042: ldc.i4.s 91 + IL_0044: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0049: ldc.i4.m1 + IL_004a: ceq + IL_004c: ldc.i4.0 + IL_004d: ceq + IL_004f: or + IL_0050: ldarg.2 + IL_0051: ldc.i4.s 93 + IL_0053: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0058: ldc.i4.m1 + IL_0059: ceq + IL_005b: ldc.i4.0 + IL_005c: ceq + IL_005e: or + IL_005f: ldc.i4.0 + IL_0060: ceq + IL_0062: stloc.2 + IL_0063: ldloc.2 + IL_0064: brtrue.s IL_006a + + .line 127,127 : 5,18 '' + IL_0066: ldc.i4.0 + IL_0067: stloc.1 + IL_0068: br.s IL_0096 + + .line 129,129 : 4,57 '' + IL_006a: ldarg.0 + IL_006b: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0070: ldarg.1 + IL_0071: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_0076: castclass [mscorlib]System.Collections.SortedList + IL_007b: stloc.0 + .line 130,130 : 4,38 '' + IL_007c: ldarg.0 + IL_007d: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0082: ldarg.2 + IL_0083: ldloc.0 + IL_0084: callvirt instance void [mscorlib]System.Collections.SortedList::Add(object, + object) + IL_0089: nop + .line 131,131 : 4,30 '' + IL_008a: ldarg.0 + IL_008b: ldarg.1 + IL_008c: call instance bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::DeleteCategory(string) + IL_0091: pop + .line 132,132 : 4,16 '' + IL_0092: ldc.i4.1 + IL_0093: stloc.1 + IL_0094: br.s IL_0096 + + .line 133,133 : 3,4 '' + IL_0096: ldloc.1 + IL_0097: ret + } // end of method IniStructure::RenameCategory + + .method public hidebysig instance string[] + GetCategories() cil managed + { + // Code size 85 (0x55) + .maxstack 4 + .locals init ([0] string[] CatNames, + [1] class [mscorlib]System.Collections.IList KeyList, + [2] int32 KeyCount, + [3] int32 i, + [4] string[] CS$1$0000, + [5] bool CS$4$0001) + .line 140,140 : 3,4 '' + IL_0000: nop + .line 141,141 : 4,53 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0007: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_000c: newarr [mscorlib]System.String + IL_0011: stloc.0 + .line 142,142 : 4,44 '' + IL_0012: ldarg.0 + IL_0013: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0018: callvirt instance class [mscorlib]System.Collections.IList [mscorlib]System.Collections.SortedList::GetKeyList() + IL_001d: stloc.1 + .line 143,143 : 4,36 '' + IL_001e: ldarg.0 + IL_001f: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0024: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0029: stloc.2 + .line 144,144 : 9,19 '' + IL_002a: ldc.i4.0 + IL_002b: stloc.3 + IL_002c: br.s IL_0043 + + .line 145,145 : 4,5 '' + IL_002e: nop + .line 146,146 : 5,41 '' + IL_002f: ldloc.0 + IL_0030: ldloc.3 + IL_0031: ldloc.1 + IL_0032: ldloc.3 + IL_0033: callvirt instance object [mscorlib]System.Collections.IList::get_Item(int32) + IL_0038: callvirt instance string [mscorlib]System.Object::ToString() + IL_003d: stelem.ref + .line 147,147 : 4,5 '' + IL_003e: nop + .line 144,144 : 34,37 '' + IL_003f: ldloc.3 + IL_0040: ldc.i4.1 + IL_0041: add + IL_0042: stloc.3 + .line 144,144 : 20,32 '' + IL_0043: ldloc.3 + IL_0044: ldloc.2 + IL_0045: clt + IL_0047: stloc.s CS$4$0001 + IL_0049: ldloc.s CS$4$0001 + IL_004b: brtrue.s IL_002e + + .line 148,148 : 4,20 '' + IL_004d: ldloc.0 + IL_004e: stloc.s CS$1$0000 + IL_0050: br.s IL_0052 + + .line 149,149 : 3,4 '' + IL_0052: ldloc.s CS$1$0000 + IL_0054: ret + } // end of method IniStructure::GetCategories + + .method public hidebysig instance string + GetCategoryName(int32 Index) cil managed + { + // Code size 56 (0x38) + .maxstack 3 + .locals init ([0] string CS$1$0000, + [1] bool CS$4$0001) + .line 158,158 : 3,4 '' + IL_0000: nop + .line 159,159 : 4,46 '' + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: clt + IL_0005: ldarg.1 + IL_0006: ldarg.0 + IL_0007: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_000c: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0011: clt + IL_0013: ldc.i4.0 + IL_0014: ceq + IL_0016: or + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: stloc.1 + IL_001b: ldloc.1 + IL_001c: brtrue.s IL_0022 + + .line 160,160 : 5,17 '' + IL_001e: ldnull + IL_001f: stloc.0 + IL_0020: br.s IL_0036 + + .line 161,161 : 4,47 '' + IL_0022: ldarg.0 + IL_0023: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0028: ldarg.1 + IL_0029: callvirt instance object [mscorlib]System.Collections.SortedList::GetKey(int32) + IL_002e: callvirt instance string [mscorlib]System.Object::ToString() + IL_0033: stloc.0 + IL_0034: br.s IL_0036 + + .line 162,162 : 3,4 '' + IL_0036: ldloc.0 + IL_0037: ret + } // end of method IniStructure::GetCategoryName + + .method public hidebysig instance bool + AddValue(string CategoryName, + string Key, + string Value) cil managed + { + // Code size 194 (0xc2) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 171,171 : 3,4 '' + IL_0000: nop + .line 172,172 : 4,39 '' + IL_0001: ldarg.1 + IL_0002: ldstr "" + IL_0007: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000c: ldarg.2 + IL_000d: ldstr "" + IL_0012: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0017: or + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: stloc.2 + IL_001c: ldloc.2 + IL_001d: brtrue.s IL_0026 + + .line 173,173 : 5,18 '' + IL_001f: ldc.i4.0 + IL_0020: stloc.1 + IL_0021: br IL_00c0 + + .line 174,179 : 4,6 '' + IL_0026: ldarg.2 + IL_0027: ldc.i4.s 61 + IL_0029: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_002e: ldc.i4.m1 + IL_002f: ceq + IL_0031: ldc.i4.0 + IL_0032: ceq + IL_0034: ldarg.2 + IL_0035: ldc.i4.s 91 + IL_0037: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_003c: ldc.i4.m1 + IL_003d: ceq + IL_003f: ldc.i4.0 + IL_0040: ceq + IL_0042: or + IL_0043: ldarg.2 + IL_0044: ldc.i4.s 93 + IL_0046: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_004b: ldc.i4.m1 + IL_004c: ceq + IL_004e: ldc.i4.0 + IL_004f: ceq + IL_0051: or + IL_0052: ldarg.2 + IL_0053: ldc.i4.s 59 + IL_0055: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_005a: ldc.i4.m1 + IL_005b: ceq + IL_005d: ldc.i4.0 + IL_005e: ceq + IL_0060: or + IL_0061: ldarg.2 + IL_0062: ldc.i4.s 35 + IL_0064: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0069: ldc.i4.m1 + IL_006a: ceq + IL_006c: ldc.i4.0 + IL_006d: ceq + IL_006f: or + IL_0070: ldc.i4.0 + IL_0071: ceq + IL_0073: stloc.2 + IL_0074: ldloc.2 + IL_0075: brtrue.s IL_007b + + .line 180,180 : 5,18 '' + IL_0077: ldc.i4.0 + IL_0078: stloc.1 + IL_0079: br.s IL_00c0 + + .line 181,181 : 4,46 '' + IL_007b: ldarg.0 + IL_007c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0081: ldarg.1 + IL_0082: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0087: stloc.2 + IL_0088: ldloc.2 + IL_0089: brtrue.s IL_008f + + .line 182,182 : 5,18 '' + IL_008b: ldc.i4.0 + IL_008c: stloc.1 + IL_008d: br.s IL_00c0 + + .line 183,183 : 4,65 '' + IL_008f: ldarg.0 + IL_0090: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0095: ldarg.1 + IL_0096: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_009b: castclass [mscorlib]System.Collections.SortedList + IL_00a0: stloc.0 + .line 184,184 : 4,34 '' + IL_00a1: ldloc.0 + IL_00a2: ldarg.2 + IL_00a3: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_00a8: ldc.i4.0 + IL_00a9: ceq + IL_00ab: stloc.2 + IL_00ac: ldloc.2 + IL_00ad: brtrue.s IL_00b3 + + .line 185,185 : 5,18 '' + IL_00af: ldc.i4.0 + IL_00b0: stloc.1 + IL_00b1: br.s IL_00c0 + + .line 186,186 : 4,29 '' + IL_00b3: ldloc.0 + IL_00b4: ldarg.2 + IL_00b5: ldarg.3 + IL_00b6: callvirt instance void [mscorlib]System.Collections.SortedList::Add(object, + object) + IL_00bb: nop + .line 187,187 : 4,16 '' + IL_00bc: ldc.i4.1 + IL_00bd: stloc.1 + IL_00be: br.s IL_00c0 + + .line 188,188 : 3,4 '' + IL_00c0: ldloc.1 + IL_00c1: ret + } // end of method IniStructure::AddValue + + .method public hidebysig instance string + GetValue(string CategoryName, + string Key) cil managed + { + // Code size 105 (0x69) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] string CS$1$0000, + [2] bool CS$4$0001) + .line 197,197 : 3,4 '' + IL_0000: nop + .line 198,198 : 4,39 '' + IL_0001: ldarg.1 + IL_0002: ldstr "" + IL_0007: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000c: ldarg.2 + IL_000d: ldstr "" + IL_0012: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0017: or + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: stloc.2 + IL_001c: ldloc.2 + IL_001d: brtrue.s IL_0023 + + .line 199,199 : 5,17 '' + IL_001f: ldnull + IL_0020: stloc.1 + IL_0021: br.s IL_0067 + + .line 200,200 : 4,46 '' + IL_0023: ldarg.0 + IL_0024: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0029: ldarg.1 + IL_002a: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_002f: stloc.2 + IL_0030: ldloc.2 + IL_0031: brtrue.s IL_0037 + + .line 201,201 : 5,17 '' + IL_0033: ldnull + IL_0034: stloc.1 + IL_0035: br.s IL_0067 + + .line 202,202 : 4,65 '' + IL_0037: ldarg.0 + IL_0038: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_003d: ldarg.1 + IL_003e: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_0043: castclass [mscorlib]System.Collections.SortedList + IL_0048: stloc.0 + .line 203,203 : 4,35 '' + IL_0049: ldloc.0 + IL_004a: ldarg.2 + IL_004b: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0050: stloc.2 + IL_0051: ldloc.2 + IL_0052: brtrue.s IL_0058 + + .line 204,204 : 5,17 '' + IL_0054: ldnull + IL_0055: stloc.1 + IL_0056: br.s IL_0067 + + .line 205,205 : 4,36 '' + IL_0058: ldloc.0 + IL_0059: ldarg.2 + IL_005a: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_005f: callvirt instance string [mscorlib]System.Object::ToString() + IL_0064: stloc.1 + IL_0065: br.s IL_0067 + + .line 206,206 : 3,4 '' + IL_0067: ldloc.1 + IL_0068: ret + } // end of method IniStructure::GetValue + + .method public hidebysig instance string + GetValue(int32 CatIndex, + int32 KeyIndex) cil managed + { + // Code size 91 (0x5b) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] string CS$1$0000, + [2] bool CS$4$0001) + .line 215,215 : 3,4 '' + IL_0000: nop + .line 216,217 : 4,35 '' + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: clt + IL_0005: ldarg.2 + IL_0006: ldc.i4.0 + IL_0007: clt + IL_0009: or + IL_000a: ldarg.1 + IL_000b: ldarg.0 + IL_000c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0011: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0016: clt + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: or + IL_001c: ldc.i4.0 + IL_001d: ceq + IL_001f: stloc.2 + IL_0020: ldloc.2 + IL_0021: brtrue.s IL_0027 + + .line 218,218 : 5,17 '' + IL_0023: ldnull + IL_0024: stloc.1 + IL_0025: br.s IL_0059 + + .line 219,219 : 4,72 '' + IL_0027: ldarg.0 + IL_0028: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_002d: ldarg.1 + IL_002e: callvirt instance object [mscorlib]System.Collections.SortedList::GetByIndex(int32) + IL_0033: castclass [mscorlib]System.Collections.SortedList + IL_0038: stloc.0 + .line 220,220 : 4,35 '' + IL_0039: ldarg.2 + IL_003a: ldloc.0 + IL_003b: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0040: clt + IL_0042: stloc.2 + IL_0043: ldloc.2 + IL_0044: brtrue.s IL_004a + + .line 221,221 : 5,17 '' + IL_0046: ldnull + IL_0047: stloc.1 + IL_0048: br.s IL_0059 + + .line 222,222 : 4,52 '' + IL_004a: ldloc.0 + IL_004b: ldarg.2 + IL_004c: callvirt instance object [mscorlib]System.Collections.SortedList::GetByIndex(int32) + IL_0051: callvirt instance string [mscorlib]System.Object::ToString() + IL_0056: stloc.1 + IL_0057: br.s IL_0059 + + .line 223,223 : 3,4 '' + IL_0059: ldloc.1 + IL_005a: ret + } // end of method IniStructure::GetValue + + .method public hidebysig instance string + GetKeyName(int32 CatIndex, + int32 KeyIndex) cil managed + { + // Code size 91 (0x5b) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] string CS$1$0000, + [2] bool CS$4$0001) + .line 232,232 : 3,4 '' + IL_0000: nop + .line 233,234 : 4,35 '' + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: clt + IL_0005: ldarg.2 + IL_0006: ldc.i4.0 + IL_0007: clt + IL_0009: or + IL_000a: ldarg.1 + IL_000b: ldarg.0 + IL_000c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0011: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0016: clt + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: or + IL_001c: ldc.i4.0 + IL_001d: ceq + IL_001f: stloc.2 + IL_0020: ldloc.2 + IL_0021: brtrue.s IL_0027 + + .line 235,235 : 5,17 '' + IL_0023: ldnull + IL_0024: stloc.1 + IL_0025: br.s IL_0059 + + .line 236,236 : 4,72 '' + IL_0027: ldarg.0 + IL_0028: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_002d: ldarg.1 + IL_002e: callvirt instance object [mscorlib]System.Collections.SortedList::GetByIndex(int32) + IL_0033: castclass [mscorlib]System.Collections.SortedList + IL_0038: stloc.0 + .line 237,237 : 4,35 '' + IL_0039: ldarg.2 + IL_003a: ldloc.0 + IL_003b: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0040: clt + IL_0042: stloc.2 + IL_0043: ldloc.2 + IL_0044: brtrue.s IL_004a + + .line 238,238 : 5,17 '' + IL_0046: ldnull + IL_0047: stloc.1 + IL_0048: br.s IL_0059 + + .line 239,239 : 4,48 '' + IL_004a: ldloc.0 + IL_004b: ldarg.2 + IL_004c: callvirt instance object [mscorlib]System.Collections.SortedList::GetKey(int32) + IL_0051: callvirt instance string [mscorlib]System.Object::ToString() + IL_0056: stloc.1 + IL_0057: br.s IL_0059 + + .line 240,240 : 3,4 '' + IL_0059: ldloc.1 + IL_005a: ret + } // end of method IniStructure::GetKeyName + + .method public hidebysig instance bool + DeleteValue(string CategoryName, + string Key) cil managed + { + // Code size 102 (0x66) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 249,249 : 3,4 '' + IL_0000: nop + .line 250,250 : 4,39 '' + IL_0001: ldarg.1 + IL_0002: ldstr "" + IL_0007: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000c: ldarg.2 + IL_000d: ldstr "" + IL_0012: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0017: or + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: stloc.2 + IL_001c: ldloc.2 + IL_001d: brtrue.s IL_0023 + + .line 251,251 : 5,18 '' + IL_001f: ldc.i4.0 + IL_0020: stloc.1 + IL_0021: br.s IL_0064 + + .line 252,252 : 4,46 '' + IL_0023: ldarg.0 + IL_0024: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0029: ldarg.1 + IL_002a: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_002f: stloc.2 + IL_0030: ldloc.2 + IL_0031: brtrue.s IL_0037 + + .line 253,253 : 5,18 '' + IL_0033: ldc.i4.0 + IL_0034: stloc.1 + IL_0035: br.s IL_0064 + + .line 254,254 : 4,65 '' + IL_0037: ldarg.0 + IL_0038: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_003d: ldarg.1 + IL_003e: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_0043: castclass [mscorlib]System.Collections.SortedList + IL_0048: stloc.0 + .line 255,255 : 4,35 '' + IL_0049: ldloc.0 + IL_004a: ldarg.2 + IL_004b: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0050: stloc.2 + IL_0051: ldloc.2 + IL_0052: brtrue.s IL_0058 + + .line 256,256 : 5,18 '' + IL_0054: ldc.i4.0 + IL_0055: stloc.1 + IL_0056: br.s IL_0064 + + .line 257,257 : 4,25 '' + IL_0058: ldloc.0 + IL_0059: ldarg.2 + IL_005a: callvirt instance void [mscorlib]System.Collections.SortedList::Remove(object) + IL_005f: nop + .line 258,258 : 4,16 '' + IL_0060: ldc.i4.1 + IL_0061: stloc.1 + IL_0062: br.s IL_0064 + + .line 259,259 : 3,4 '' + IL_0064: ldloc.1 + IL_0065: ret + } // end of method IniStructure::DeleteValue + + .method public hidebysig instance bool + RenameKey(string CategoryName, + string KeyName, + string NewKeyName) cil managed + { + // Code size 222 (0xde) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] object 'value', + [2] bool CS$1$0000, + [3] bool CS$4$0001) + .line 268,268 : 3,4 '' + IL_0000: nop + .line 269,269 : 4,62 '' + IL_0001: ldarg.1 + IL_0002: ldstr "" + IL_0007: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000c: ldarg.2 + IL_000d: ldstr "" + IL_0012: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0017: or + IL_0018: ldarg.3 + IL_0019: ldstr "" + IL_001e: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0023: or + IL_0024: ldc.i4.0 + IL_0025: ceq + IL_0027: stloc.3 + IL_0028: ldloc.3 + IL_0029: brtrue.s IL_0032 + + .line 270,270 : 5,18 '' + IL_002b: ldc.i4.0 + IL_002c: stloc.2 + IL_002d: br IL_00dc + + .line 271,271 : 4,46 '' + IL_0032: ldarg.0 + IL_0033: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0038: ldarg.1 + IL_0039: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_003e: stloc.3 + IL_003f: ldloc.3 + IL_0040: brtrue.s IL_0049 + + .line 272,272 : 5,18 '' + IL_0042: ldc.i4.0 + IL_0043: stloc.2 + IL_0044: br IL_00dc + + .line 273,278 : 4,6 '' + IL_0049: ldarg.3 + IL_004a: ldc.i4.s 61 + IL_004c: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0051: ldc.i4.m1 + IL_0052: ceq + IL_0054: ldc.i4.0 + IL_0055: ceq + IL_0057: ldarg.3 + IL_0058: ldc.i4.s 91 + IL_005a: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_005f: ldc.i4.m1 + IL_0060: ceq + IL_0062: ldc.i4.0 + IL_0063: ceq + IL_0065: or + IL_0066: ldarg.3 + IL_0067: ldc.i4.s 93 + IL_0069: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_006e: ldc.i4.m1 + IL_006f: ceq + IL_0071: ldc.i4.0 + IL_0072: ceq + IL_0074: or + IL_0075: ldarg.3 + IL_0076: ldc.i4.s 59 + IL_0078: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_007d: ldc.i4.m1 + IL_007e: ceq + IL_0080: ldc.i4.0 + IL_0081: ceq + IL_0083: or + IL_0084: ldarg.3 + IL_0085: ldc.i4.s 35 + IL_0087: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_008c: ldc.i4.m1 + IL_008d: ceq + IL_008f: ldc.i4.0 + IL_0090: ceq + IL_0092: or + IL_0093: ldc.i4.0 + IL_0094: ceq + IL_0096: stloc.3 + IL_0097: ldloc.3 + IL_0098: brtrue.s IL_009e + + .line 279,279 : 5,18 '' + IL_009a: ldc.i4.0 + IL_009b: stloc.2 + IL_009c: br.s IL_00dc + + .line 280,280 : 4,65 '' + IL_009e: ldarg.0 + IL_009f: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_00a4: ldarg.1 + IL_00a5: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_00aa: castclass [mscorlib]System.Collections.SortedList + IL_00af: stloc.0 + .line 281,281 : 4,40 '' + IL_00b0: ldloc.0 + IL_00b1: ldarg.2 + IL_00b2: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_00b7: stloc.3 + IL_00b8: ldloc.3 + IL_00b9: brtrue.s IL_00bf + + .line 282,282 : 5,18 '' + IL_00bb: ldc.i4.0 + IL_00bc: stloc.2 + IL_00bd: br.s IL_00dc + + .line 284,284 : 4,37 '' + IL_00bf: ldloc.0 + IL_00c0: ldarg.2 + IL_00c1: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_00c6: stloc.1 + .line 285,285 : 4,29 '' + IL_00c7: ldloc.0 + IL_00c8: ldarg.2 + IL_00c9: callvirt instance void [mscorlib]System.Collections.SortedList::Remove(object) + IL_00ce: nop + .line 286,286 : 4,36 '' + IL_00cf: ldloc.0 + IL_00d0: ldarg.3 + IL_00d1: ldloc.1 + IL_00d2: callvirt instance void [mscorlib]System.Collections.SortedList::Add(object, + object) + IL_00d7: nop + .line 287,287 : 4,16 '' + IL_00d8: ldc.i4.1 + IL_00d9: stloc.2 + IL_00da: br.s IL_00dc + + .line 288,288 : 3,4 '' + IL_00dc: ldloc.2 + IL_00dd: ret + } // end of method IniStructure::RenameKey + + .method public hidebysig instance bool + ModifyValue(string CategoryName, + string KeyName, + string NewValue) cil managed + { + // Code size 103 (0x67) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] bool CS$1$0000, + [2] bool CS$4$0001) + .line 297,297 : 3,4 '' + IL_0000: nop + .line 298,298 : 4,43 '' + IL_0001: ldarg.1 + IL_0002: ldstr "" + IL_0007: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000c: ldarg.2 + IL_000d: ldstr "" + IL_0012: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0017: or + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: stloc.2 + IL_001c: ldloc.2 + IL_001d: brtrue.s IL_0023 + + .line 299,299 : 5,18 '' + IL_001f: ldc.i4.0 + IL_0020: stloc.1 + IL_0021: br.s IL_0065 + + .line 300,300 : 4,46 '' + IL_0023: ldarg.0 + IL_0024: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0029: ldarg.1 + IL_002a: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_002f: stloc.2 + IL_0030: ldloc.2 + IL_0031: brtrue.s IL_0037 + + .line 301,301 : 5,18 '' + IL_0033: ldc.i4.0 + IL_0034: stloc.1 + IL_0035: br.s IL_0065 + + .line 302,302 : 4,65 '' + IL_0037: ldarg.0 + IL_0038: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_003d: ldarg.1 + IL_003e: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_0043: castclass [mscorlib]System.Collections.SortedList + IL_0048: stloc.0 + .line 303,303 : 4,40 '' + IL_0049: ldloc.0 + IL_004a: ldarg.2 + IL_004b: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0050: stloc.2 + IL_0051: ldloc.2 + IL_0052: brtrue.s IL_0058 + + .line 304,304 : 5,18 '' + IL_0054: ldc.i4.0 + IL_0055: stloc.1 + IL_0056: br.s IL_0065 + + .line 306,306 : 4,33 '' + IL_0058: ldloc.0 + IL_0059: ldarg.2 + IL_005a: ldarg.3 + IL_005b: callvirt instance void [mscorlib]System.Collections.SortedList::set_Item(object, + object) + IL_0060: nop + .line 307,307 : 4,16 '' + IL_0061: ldc.i4.1 + IL_0062: stloc.1 + IL_0063: br.s IL_0065 + + .line 308,308 : 3,4 '' + IL_0065: ldloc.1 + IL_0066: ret + } // end of method IniStructure::ModifyValue + + .method public hidebysig instance string[] + GetKeys(string CategoryName) cil managed + { + // Code size 112 (0x70) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] int32 KeyCount, + [2] string[] KeyNames, + [3] class [mscorlib]System.Collections.IList KeyList, + [4] int32 i, + [5] string[] CS$1$0000, + [6] bool CS$4$0001) + .line 316,316 : 3,4 '' + IL_0000: nop + .line 317,317 : 4,65 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0007: ldarg.1 + IL_0008: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_000d: castclass [mscorlib]System.Collections.SortedList + IL_0012: stloc.0 + .line 318,318 : 4,25 '' + IL_0013: ldloc.0 + IL_0014: ldnull + IL_0015: ceq + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: stloc.s CS$4$0001 + IL_001c: ldloc.s CS$4$0001 + IL_001e: brtrue.s IL_002a + + .line 319,319 : 5,26 '' + IL_0020: ldc.i4.0 + IL_0021: newarr [mscorlib]System.String + IL_0026: stloc.s CS$1$0000 + IL_0028: br.s IL_006d + + .line 320,320 : 4,34 '' + IL_002a: ldloc.0 + IL_002b: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0030: stloc.1 + .line 321,321 : 4,45 '' + IL_0031: ldloc.1 + IL_0032: newarr [mscorlib]System.String + IL_0037: stloc.2 + .line 322,322 : 4,42 '' + IL_0038: ldloc.0 + IL_0039: callvirt instance class [mscorlib]System.Collections.IList [mscorlib]System.Collections.SortedList::GetKeyList() + IL_003e: stloc.3 + .line 323,323 : 9,19 '' + IL_003f: ldc.i4.0 + IL_0040: stloc.s i + IL_0042: br.s IL_005d + + .line 324,324 : 4,5 '' + IL_0044: nop + .line 325,325 : 5,41 '' + IL_0045: ldloc.2 + IL_0046: ldloc.s i + IL_0048: ldloc.3 + IL_0049: ldloc.s i + IL_004b: callvirt instance object [mscorlib]System.Collections.IList::get_Item(int32) + IL_0050: callvirt instance string [mscorlib]System.Object::ToString() + IL_0055: stelem.ref + .line 326,326 : 4,5 '' + IL_0056: nop + .line 323,323 : 34,37 '' + IL_0057: ldloc.s i + IL_0059: ldc.i4.1 + IL_005a: add + IL_005b: stloc.s i + .line 323,323 : 20,32 '' + IL_005d: ldloc.s i + IL_005f: ldloc.1 + IL_0060: clt + IL_0062: stloc.s CS$4$0001 + IL_0064: ldloc.s CS$4$0001 + IL_0066: brtrue.s IL_0044 + + .line 327,327 : 4,20 '' + IL_0068: ldloc.2 + IL_0069: stloc.s CS$1$0000 + IL_006b: br.s IL_006d + + .line 328,328 : 3,4 '' + IL_006d: ldloc.s CS$1$0000 + IL_006f: ret + } // end of method IniStructure::GetKeys + + .method public hidebysig static bool WriteIni(class Virtuoso.Miranda.Plugins.Helpers.IniStructure IniData, + string Filename, + string comment) cil managed + { + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] string DataToWrite, + [1] bool CS$1$0000) + .line 341,341 : 3,4 '' + IL_0000: nop + .line 342,342 : 4,68 '' + IL_0001: ldarg.0 + IL_0002: ldarg.2 + IL_0003: call string Virtuoso.Miranda.Plugins.Helpers.IniStructure::BuildComment(string) + IL_0008: call string Virtuoso.Miranda.Plugins.Helpers.IniStructure::CreateData(class Virtuoso.Miranda.Plugins.Helpers.IniStructure, + string) + IL_000d: stloc.0 + .line 343,343 : 4,44 '' + IL_000e: ldarg.1 + IL_000f: ldloc.0 + IL_0010: call bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::WriteFile(string, + string) + IL_0015: stloc.1 + IL_0016: br.s IL_0018 + + .line 344,344 : 3,4 '' + IL_0018: ldloc.1 + IL_0019: ret + } // end of method IniStructure::WriteIni + + .method public hidebysig static bool WriteIni(class Virtuoso.Miranda.Plugins.Helpers.IniStructure IniData, + string Filename) cil managed + { + // Code size 20 (0x14) + .maxstack 2 + .locals init ([0] string DataToWrite, + [1] bool CS$1$0000) + .line 353,353 : 3,4 '' + IL_0000: nop + .line 354,354 : 4,45 '' + IL_0001: ldarg.0 + IL_0002: call string Virtuoso.Miranda.Plugins.Helpers.IniStructure::CreateData(class Virtuoso.Miranda.Plugins.Helpers.IniStructure) + IL_0007: stloc.0 + .line 355,355 : 4,44 '' + IL_0008: ldarg.1 + IL_0009: ldloc.0 + IL_000a: call bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::WriteFile(string, + string) + IL_000f: stloc.1 + IL_0010: br.s IL_0012 + + .line 356,356 : 3,4 '' + IL_0012: ldloc.1 + IL_0013: ret + } // end of method IniStructure::WriteIni + + .method private hidebysig static bool WriteFile(string Filename, + string Data) cil managed + { + // Code size 81 (0x51) + .maxstack 2 + .locals init ([0] class [mscorlib]System.IO.FileStream IniStream, + [1] class [mscorlib]System.IO.StreamWriter writer, + [2] bool CS$1$0000, + [3] bool CS$4$0001) + .line 359,359 : 3,4 '' + IL_0000: nop + .line 361,361 : 4,5 '' + .try + { + IL_0001: nop + .line 362,362 : 5,69 '' + IL_0002: ldarg.0 + IL_0003: ldc.i4.2 + IL_0004: newobj instance void [mscorlib]System.IO.FileStream::.ctor(string, + valuetype [mscorlib]System.IO.FileMode) + IL_0009: stloc.0 + .line 363,363 : 5,29 '' + IL_000a: ldloc.0 + IL_000b: callvirt instance bool [mscorlib]System.IO.Stream::get_CanWrite() + IL_0010: stloc.3 + IL_0011: ldloc.3 + IL_0012: brtrue.s IL_0020 + + .line 364,364 : 5,6 '' + IL_0014: nop + .line 365,365 : 6,24 '' + IL_0015: ldloc.0 + IL_0016: callvirt instance void [mscorlib]System.IO.Stream::Close() + IL_001b: nop + .line 366,366 : 6,19 '' + IL_001c: ldc.i4.0 + IL_001d: stloc.2 + IL_001e: leave.s IL_004e + + .line 368,368 : 5,55 '' + IL_0020: ldloc.0 + IL_0021: newobj instance void [mscorlib]System.IO.StreamWriter::.ctor(class [mscorlib]System.IO.Stream) + IL_0026: stloc.1 + .line 369,369 : 5,24 '' + IL_0027: ldloc.1 + IL_0028: ldarg.1 + IL_0029: callvirt instance void [mscorlib]System.IO.TextWriter::Write(string) + IL_002e: nop + .line 370,370 : 5,20 '' + IL_002f: ldloc.1 + IL_0030: callvirt instance void [mscorlib]System.IO.TextWriter::Flush() + IL_0035: nop + .line 371,371 : 5,20 '' + IL_0036: ldloc.1 + IL_0037: callvirt instance void [mscorlib]System.IO.TextWriter::Close() + IL_003c: nop + .line 372,372 : 5,23 '' + IL_003d: ldloc.0 + IL_003e: callvirt instance void [mscorlib]System.IO.Stream::Close() + IL_0043: nop + .line 373,373 : 5,17 '' + IL_0044: ldc.i4.1 + IL_0045: stloc.2 + IL_0046: leave.s IL_004e + + .line 375,375 : 4,9 '' + } // end .try + catch [mscorlib]System.Object + { + IL_0048: pop + .line 376,376 : 4,5 '' + IL_0049: nop + .line 377,377 : 5,18 '' + IL_004a: ldc.i4.0 + IL_004b: stloc.2 + IL_004c: leave.s IL_004e + + } // end handler + IL_004e: nop + .line 379,379 : 3,4 '' + IL_004f: ldloc.2 + IL_0050: ret + } // end of method IniStructure::WriteFile + + .method private hidebysig static string + BuildComment(string comment) cil managed + { + // Code size 103 (0x67) + .maxstack 4 + .locals init ([0] string[] Lines, + [1] string temp, + [2] string line, + [3] string CS$1$0000, + [4] bool CS$4$0001, + [5] string[] CS$6$0002, + [6] int32 CS$7$0003) + .line 382,382 : 3,4 '' + IL_0000: nop + .line 383,383 : 4,22 '' + IL_0001: ldarg.0 + IL_0002: ldstr "" + IL_0007: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.s CS$4$0001 + IL_0011: ldloc.s CS$4$0001 + IL_0013: brtrue.s IL_001d + + .line 384,384 : 5,15 '' + IL_0015: ldstr "" + IL_001a: stloc.3 + IL_001b: br.s IL_0065 + + .line 385,385 : 4,44 '' + IL_001d: ldarg.0 + IL_001e: call string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::DivideToLines(string) + IL_0023: stloc.0 + .line 386,386 : 4,21 '' + IL_0024: ldstr "" + IL_0029: stloc.1 + .line 387,387 : 4,11 '' + IL_002a: nop + .line 387,387 : 28,33 '' + IL_002b: ldloc.0 + IL_002c: stloc.s CS$6$0002 + IL_002e: ldc.i4.0 + IL_002f: stloc.s CS$7$0003 + IL_0031: br.s IL_0053 + + .line 387,387 : 13,24 '' + IL_0033: ldloc.s CS$6$0002 + IL_0035: ldloc.s CS$7$0003 + IL_0037: ldelem.ref + IL_0038: stloc.2 + .line 388,388 : 4,5 '' + IL_0039: nop + .line 389,389 : 5,34 '' + IL_003a: ldloc.1 + IL_003b: ldstr "# " + IL_0040: ldloc.2 + IL_0041: ldstr "\r\n" + IL_0046: call string [mscorlib]System.String::Concat(string, + string, + string, + string) + IL_004b: stloc.1 + .line 390,390 : 4,5 '' + IL_004c: nop + IL_004d: ldloc.s CS$7$0003 + IL_004f: ldc.i4.1 + IL_0050: add + IL_0051: stloc.s CS$7$0003 + .line 387,387 : 25,27 '' + IL_0053: ldloc.s CS$7$0003 + IL_0055: ldloc.s CS$6$0002 + IL_0057: ldlen + IL_0058: conv.i4 + IL_0059: clt + IL_005b: stloc.s CS$4$0001 + IL_005d: ldloc.s CS$4$0001 + IL_005f: brtrue.s IL_0033 + + .line 391,391 : 4,16 '' + IL_0061: ldloc.1 + IL_0062: stloc.3 + IL_0063: br.s IL_0065 + + .line 392,392 : 3,4 '' + IL_0065: ldloc.3 + IL_0066: ret + } // end of method IniStructure::BuildComment + + .method private hidebysig static string + CreateData(class Virtuoso.Miranda.Plugins.Helpers.IniStructure IniData) cil managed + { + // Code size 17 (0x11) + .maxstack 2 + .locals init ([0] string CS$1$0000) + .line 395,395 : 3,4 '' + IL_0000: nop + .line 396,396 : 4,34 '' + IL_0001: ldarg.0 + IL_0002: ldstr "" + IL_0007: call string Virtuoso.Miranda.Plugins.Helpers.IniStructure::CreateData(class Virtuoso.Miranda.Plugins.Helpers.IniStructure, + string) + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 397,397 : 3,4 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method IniStructure::CreateData + + .method private hidebysig static string + CreateData(class Virtuoso.Miranda.Plugins.Helpers.IniStructure IniData, + string comment) cil managed + { + // Code size 248 (0xf8) + .maxstack 5 + .locals init ([0] int32 CategoryCount, + [1] int32[] KeyCountPerCategory, + [2] string Data, + [3] string[] temp, + [4] int32 i, + [5] string CategoryName, + [6] int32 catcounter, + [7] int32 keycounter, + [8] string CS$1$0000, + [9] bool CS$4$0001, + [10] string CS$0$0002, + [11] string[] CS$0$0003) + .line 400,400 : 3,4 '' + IL_0000: nop + .line 401,401 : 4,55 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetCategories() + IL_0007: ldlen + IL_0008: conv.i4 + IL_0009: stloc.0 + .line 402,402 : 4,55 '' + IL_000a: ldloc.0 + IL_000b: newarr [mscorlib]System.Int32 + IL_0010: stloc.1 + .line 403,403 : 4,26 '' + IL_0011: ldarg.1 + IL_0012: stloc.2 + .line 404,404 : 4,34 '' + IL_0013: ldc.i4.2 + IL_0014: newarr [mscorlib]System.String + IL_0019: stloc.3 + .line 406,406 : 9,19 '' + IL_001a: ldc.i4.0 + IL_001b: stloc.s i + IL_001d: br.s IL_0040 + + .line 407,407 : 4,5 '' + IL_001f: nop + .line 408,408 : 5,54 '' + IL_0020: ldarg.0 + IL_0021: callvirt instance string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetCategories() + IL_0026: ldloc.s i + IL_0028: ldelem.ref + IL_0029: stloc.s CategoryName + .line 409,409 : 5,67 '' + IL_002b: ldloc.1 + IL_002c: ldloc.s i + IL_002e: ldarg.0 + IL_002f: ldloc.s CategoryName + IL_0031: callvirt instance string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetKeys(string) + IL_0036: ldlen + IL_0037: conv.i4 + IL_0038: stelem.i4 + .line 410,410 : 4,5 '' + IL_0039: nop + .line 406,406 : 39,42 '' + IL_003a: ldloc.s i + IL_003c: ldc.i4.1 + IL_003d: add + IL_003e: stloc.s i + .line 406,406 : 20,37 '' + IL_0040: ldloc.s i + IL_0042: ldloc.0 + IL_0043: clt + IL_0045: stloc.s CS$4$0001 + IL_0047: ldloc.s CS$4$0001 + IL_0049: brtrue.s IL_001f + + .line 412,412 : 9,28 '' + IL_004b: ldc.i4.0 + IL_004c: stloc.s catcounter + IL_004e: br IL_00e2 + + .line 413,413 : 4,5 '' + IL_0053: nop + .line 414,414 : 5,69 '' + IL_0054: ldloc.2 + IL_0055: ldstr "\r\n[" + IL_005a: ldarg.0 + IL_005b: ldloc.s catcounter + IL_005d: callvirt instance string Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetCategoryName(int32) + IL_0062: ldstr "]\r\n" + IL_0067: call string [mscorlib]System.String::Concat(string, + string, + string, + string) + IL_006c: stloc.2 + .line 416,416 : 10,29 '' + IL_006d: ldc.i4.0 + IL_006e: stloc.s keycounter + IL_0070: br.s IL_00cd + + .line 417,417 : 5,6 '' + IL_0072: nop + .line 418,418 : 6,59 '' + IL_0073: ldloc.3 + IL_0074: ldc.i4.0 + IL_0075: ldarg.0 + IL_0076: ldloc.s catcounter + IL_0078: ldloc.s keycounter + IL_007a: callvirt instance string Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetKeyName(int32, + int32) + IL_007f: stelem.ref + .line 419,419 : 6,57 '' + IL_0080: ldloc.3 + IL_0081: ldc.i4.1 + IL_0082: ldarg.0 + IL_0083: ldloc.s catcounter + IL_0085: ldloc.s keycounter + IL_0087: callvirt instance string Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetValue(int32, + int32) + IL_008c: stelem.ref + .line 420,420 : 6,47 '' + IL_008d: ldloc.2 + IL_008e: stloc.s CS$0$0002 + IL_0090: ldc.i4.5 + IL_0091: newarr [mscorlib]System.String + IL_0096: stloc.s CS$0$0003 + IL_0098: ldloc.s CS$0$0003 + IL_009a: ldc.i4.0 + IL_009b: ldloc.s CS$0$0002 + IL_009d: stelem.ref + IL_009e: ldloc.s CS$0$0003 + IL_00a0: ldc.i4.1 + IL_00a1: ldloc.3 + IL_00a2: ldc.i4.0 + IL_00a3: ldelem.ref + IL_00a4: stelem.ref + IL_00a5: ldloc.s CS$0$0003 + IL_00a7: ldc.i4.2 + IL_00a8: ldstr "=" + IL_00ad: stelem.ref + IL_00ae: ldloc.s CS$0$0003 + IL_00b0: ldc.i4.3 + IL_00b1: ldloc.3 + IL_00b2: ldc.i4.1 + IL_00b3: ldelem.ref + IL_00b4: stelem.ref + IL_00b5: ldloc.s CS$0$0003 + IL_00b7: ldc.i4.4 + IL_00b8: ldstr "\r\n" + IL_00bd: stelem.ref + IL_00be: ldloc.s CS$0$0003 + IL_00c0: call string [mscorlib]System.String::Concat(string[]) + IL_00c5: stloc.2 + .line 422,422 : 5,6 '' + IL_00c6: nop + .line 416,416 : 76,88 '' + IL_00c7: ldloc.s keycounter + IL_00c9: ldc.i4.1 + IL_00ca: add + IL_00cb: stloc.s keycounter + .line 416,416 : 30,74 '' + IL_00cd: ldloc.s keycounter + IL_00cf: ldloc.1 + IL_00d0: ldloc.s catcounter + IL_00d2: ldelem.i4 + IL_00d3: clt + IL_00d5: stloc.s CS$4$0001 + IL_00d7: ldloc.s CS$4$0001 + IL_00d9: brtrue.s IL_0072 + + .line 423,423 : 4,5 '' + IL_00db: nop + .line 412,412 : 57,69 '' + IL_00dc: ldloc.s catcounter + IL_00de: ldc.i4.1 + IL_00df: add + IL_00e0: stloc.s catcounter + .line 412,412 : 29,55 '' + IL_00e2: ldloc.s catcounter + IL_00e4: ldloc.0 + IL_00e5: clt + IL_00e7: stloc.s CS$4$0001 + IL_00e9: ldloc.s CS$4$0001 + IL_00eb: brtrue IL_0053 + + .line 424,424 : 4,16 '' + IL_00f0: ldloc.2 + IL_00f1: stloc.s CS$1$0000 + IL_00f3: br.s IL_00f5 + + .line 425,425 : 3,4 '' + IL_00f5: ldloc.s CS$1$0000 + IL_00f7: ret + } // end of method IniStructure::CreateData + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Helpers.IniStructure + ReadIni(string Filename) cil managed + { + // Code size 36 (0x24) + .maxstack 2 + .locals init ([0] string Data, + [1] class Virtuoso.Miranda.Plugins.Helpers.IniStructure data, + [2] class Virtuoso.Miranda.Plugins.Helpers.IniStructure CS$1$0000, + [3] bool CS$4$0001) + .line 436,436 : 3,4 '' + IL_0000: nop + .line 437,437 : 4,37 '' + IL_0001: ldarg.0 + IL_0002: call string Virtuoso.Miranda.Plugins.Helpers.IniStructure::ReadFile(string) + IL_0007: stloc.0 + .line 438,438 : 4,21 '' + IL_0008: ldloc.0 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.3 + IL_0010: ldloc.3 + IL_0011: brtrue.s IL_0017 + + .line 439,439 : 5,17 '' + IL_0013: ldnull + IL_0014: stloc.2 + IL_0015: br.s IL_0022 + + .line 441,441 : 4,43 '' + IL_0017: ldloc.0 + IL_0018: call class Virtuoso.Miranda.Plugins.Helpers.IniStructure Virtuoso.Miranda.Plugins.Helpers.IniStructure::InterpretIni(string) + IL_001d: stloc.1 + .line 443,443 : 4,16 '' + IL_001e: ldloc.1 + IL_001f: stloc.2 + IL_0020: br.s IL_0022 + + .line 444,444 : 3,4 '' + IL_0022: ldloc.2 + IL_0023: ret + } // end of method IniStructure::ReadIni + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Helpers.IniStructure + InterpretIni(string Data) cil managed + { + // Code size 209 (0xd1) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Helpers.IniStructure IniData, + [1] string[] Lines, + [2] string CurrentCategory, + [3] string line, + [4] string NewCat, + [5] string[] keyvalue, + [6] class Virtuoso.Miranda.Plugins.Helpers.IniStructure CS$1$0000, + [7] bool CS$4$0001, + [8] string[] CS$6$0002, + [9] int32 CS$7$0003, + [10] valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType CS$4$0004) + .line 447,447 : 3,4 '' + IL_0000: nop + .line 448,448 : 4,46 '' + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Helpers.IniStructure::.ctor() + IL_0006: stloc.0 + .line 449,449 : 4,61 '' + IL_0007: ldarg.0 + IL_0008: call string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::DivideToLines(string) + IL_000d: call string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::RemoveAndVerifyIni(string[]) + IL_0012: stloc.1 + .line 453,453 : 4,22 '' + IL_0013: ldloc.1 + IL_0014: ldnull + IL_0015: ceq + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: stloc.s CS$4$0001 + IL_001c: ldloc.s CS$4$0001 + IL_001e: brtrue.s IL_0028 + + .line 454,454 : 5,17 '' + IL_0020: ldnull + IL_0021: stloc.s CS$1$0000 + IL_0023: br IL_00cd + + .line 456,456 : 4,58 '' + IL_0028: ldloc.1 + IL_0029: ldc.i4.0 + IL_002a: ldelem.ref + IL_002b: call valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Virtuoso.Miranda.Plugins.Helpers.IniStructure::IsLineACategoryDef(string) + IL_0030: ldc.i4.1 + IL_0031: ceq + IL_0033: stloc.s CS$4$0001 + IL_0035: ldloc.s CS$4$0001 + IL_0037: brtrue.s IL_0042 + + .line 457,457 : 4,5 '' + IL_0039: nop + .line 458,458 : 5,17 '' + IL_003a: ldnull + IL_003b: stloc.s CS$1$0000 + IL_003d: br IL_00cd + + .line 461,461 : 4,32 '' + IL_0042: ldstr "" + IL_0047: stloc.2 + .line 462,462 : 4,11 '' + IL_0048: nop + .line 462,462 : 28,33 '' + IL_0049: ldloc.1 + IL_004a: stloc.s CS$6$0002 + IL_004c: ldc.i4.0 + IL_004d: stloc.s CS$7$0003 + IL_004f: br.s IL_00ba + + .line 462,462 : 13,24 '' + IL_0051: ldloc.s CS$6$0002 + IL_0053: ldloc.s CS$7$0003 + IL_0055: ldelem.ref + IL_0056: stloc.3 + .line 463,463 : 4,5 '' + IL_0057: nop + .line 464,464 : 5,38 '' + IL_0058: ldloc.3 + IL_0059: call valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Virtuoso.Miranda.Plugins.Helpers.IniStructure::IsLineACategoryDef(string) + IL_005e: stloc.s CS$4$0004 + IL_0060: ldloc.s CS$4$0004 + IL_0062: switch ( + IL_0094, + IL_0075, + IL_00ae) + IL_0073: br.s IL_00b3 + + .line 467,467 : 7,57 '' + IL_0075: ldloc.3 + IL_0076: ldc.i4.1 + IL_0077: ldloc.3 + IL_0078: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_007d: ldc.i4.2 + IL_007e: sub + IL_007f: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_0084: stloc.s NewCat + .line 468,468 : 7,35 '' + IL_0086: ldloc.0 + IL_0087: ldloc.s NewCat + IL_0089: callvirt instance bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::AddCategory(string) + IL_008e: pop + .line 469,469 : 7,32 '' + IL_008f: ldloc.s NewCat + IL_0091: stloc.2 + .line 470,470 : 7,13 '' + IL_0092: br.s IL_00b3 + + .line 472,472 : 7,49 '' + IL_0094: ldloc.3 + IL_0095: call string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetDataFromLine(string) + IL_009a: stloc.s keyvalue + .line 473,473 : 7,67 '' + IL_009c: ldloc.0 + IL_009d: ldloc.2 + IL_009e: ldloc.s keyvalue + IL_00a0: ldc.i4.0 + IL_00a1: ldelem.ref + IL_00a2: ldloc.s keyvalue + IL_00a4: ldc.i4.1 + IL_00a5: ldelem.ref + IL_00a6: callvirt instance bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::AddValue(string, + string, + string) + IL_00ab: pop + .line 475,475 : 7,13 '' + IL_00ac: br.s IL_00b3 + + .line 477,477 : 7,19 '' + IL_00ae: ldnull + IL_00af: stloc.s CS$1$0000 + IL_00b1: leave.s IL_00cd + + .line 479,479 : 4,5 '' + IL_00b3: nop + IL_00b4: ldloc.s CS$7$0003 + IL_00b6: ldc.i4.1 + IL_00b7: add + IL_00b8: stloc.s CS$7$0003 + .line 462,462 : 25,27 '' + IL_00ba: ldloc.s CS$7$0003 + IL_00bc: ldloc.s CS$6$0002 + IL_00be: ldlen + IL_00bf: conv.i4 + IL_00c0: clt + IL_00c2: stloc.s CS$4$0001 + IL_00c4: ldloc.s CS$4$0001 + IL_00c6: brtrue.s IL_0051 + + .line 480,480 : 4,19 '' + IL_00c8: ldloc.0 + IL_00c9: stloc.s CS$1$0000 + IL_00cb: br.s IL_00cd + + IL_00cd: nop + .line 481,481 : 3,4 '' + IL_00ce: ldloc.s CS$1$0000 + IL_00d0: ret + } // end of method IniStructure::InterpretIni + + .method private hidebysig static string + ReadFile(string filename) cil managed + { + // Code size 125 (0x7d) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Text.StringBuilder IniData, + [1] class [mscorlib]System.IO.FileStream IniStream, + [2] class [mscorlib]System.IO.StreamReader reader, + [3] string CS$1$0000, + [4] bool CS$4$0001) + .line 484,484 : 3,4 '' + IL_0000: nop + .line 485,485 : 4,31 '' + IL_0001: ldarg.0 + IL_0002: call bool [mscorlib]System.IO.File::Exists(string) + IL_0007: stloc.s CS$4$0001 + IL_0009: ldloc.s CS$4$0001 + IL_000b: brtrue.s IL_0011 + + .line 486,486 : 5,17 '' + IL_000d: ldnull + IL_000e: stloc.3 + IL_000f: br.s IL_007a + + .line 489,489 : 4,5 '' + .try + { + IL_0011: nop + .line 490,490 : 24,103 '' + IL_0012: ldarg.0 + IL_0013: ldc.i4.3 + IL_0014: ldc.i4.1 + IL_0015: newobj instance void [mscorlib]System.IO.FileStream::.ctor(string, + valuetype [mscorlib]System.IO.FileMode, + valuetype [mscorlib]System.IO.FileAccess) + IL_001a: stloc.1 + .line 491,491 : 17,18 '' + .try + { + IL_001b: nop + .line 492,492 : 21,44 '' + IL_001c: ldloc.1 + IL_001d: callvirt instance bool [mscorlib]System.IO.Stream::get_CanRead() + IL_0022: stloc.s CS$4$0001 + IL_0024: ldloc.s CS$4$0001 + IL_0026: brtrue.s IL_002c + + .line 493,493 : 25,37 '' + IL_0028: ldnull + IL_0029: stloc.3 + IL_002a: leave.s IL_007a + + .line 495,495 : 28,77 '' + IL_002c: ldloc.1 + IL_002d: newobj instance void [mscorlib]System.IO.StreamReader::.ctor(class [mscorlib]System.IO.Stream) + IL_0032: stloc.2 + .line 496,496 : 21,22 '' + .try + { + IL_0033: nop + .line 497,497 : 25,55 '' + IL_0034: newobj instance void [mscorlib]System.Text.StringBuilder::.ctor() + IL_0039: stloc.0 + .line 498,498 : 25,60 '' + IL_003a: ldloc.0 + IL_003b: ldloc.2 + IL_003c: callvirt instance string [mscorlib]System.IO.TextReader::ReadToEnd() + IL_0041: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::Append(string) + IL_0046: pop + .line 499,499 : 25,51 '' + IL_0047: ldloc.0 + IL_0048: callvirt instance string [mscorlib]System.Object::ToString() + IL_004d: stloc.3 + IL_004e: leave.s IL_007a + + } // end .try + finally + { + IL_0050: ldloc.2 + IL_0051: ldnull + IL_0052: ceq + IL_0054: stloc.s CS$4$0001 + IL_0056: ldloc.s CS$4$0001 + IL_0058: brtrue.s IL_0061 + + IL_005a: ldloc.2 + IL_005b: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0060: nop + IL_0061: endfinally + } // end handler + } // end .try + finally + { + IL_0062: ldloc.1 + IL_0063: ldnull + IL_0064: ceq + IL_0066: stloc.s CS$4$0001 + IL_0068: ldloc.s CS$4$0001 + IL_006a: brtrue.s IL_0073 + + IL_006c: ldloc.1 + IL_006d: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0072: nop + IL_0073: endfinally + .line 503,503 : 4,9 '' + } // end handler + } // end .try + catch [mscorlib]System.Object + { + IL_0074: pop + .line 504,504 : 4,5 '' + IL_0075: nop + .line 505,505 : 5,17 '' + IL_0076: ldnull + IL_0077: stloc.3 + IL_0078: leave.s IL_007a + + } // end handler + IL_007a: nop + .line 507,507 : 3,4 '' + IL_007b: ldloc.3 + IL_007c: ret + } // end of method IniStructure::ReadFile + + .method private hidebysig static string[] + GetDataFromLine(string Line) cil managed + { + // Code size 83 (0x53) + .maxstack 3 + .locals init ([0] int32 EqualPos, + [1] string LeftKey, + [2] string RightValue, + [3] string[] ToReturn, + [4] string[] CS$1$0000, + [5] bool CS$4$0001, + [6] string[] CS$0$0002) + .line 510,510 : 3,4 '' + IL_0000: nop + .line 512,512 : 4,21 '' + IL_0001: ldc.i4.0 + IL_0002: stloc.0 + .line 513,513 : 4,36 '' + IL_0003: ldarg.0 + IL_0004: ldstr "=" + IL_0009: ldc.i4.0 + IL_000a: callvirt instance int32 [mscorlib]System.String::IndexOf(string, + int32) + IL_000f: stloc.0 + .line 514,514 : 4,21 '' + IL_0010: ldloc.0 + IL_0011: ldc.i4.1 + IL_0012: clt + IL_0014: ldc.i4.0 + IL_0015: ceq + IL_0017: stloc.s CS$4$0001 + IL_0019: ldloc.s CS$4$0001 + IL_001b: brtrue.s IL_0023 + + .line 515,515 : 4,5 '' + IL_001d: nop + .line 516,516 : 5,17 '' + IL_001e: ldnull + IL_001f: stloc.s CS$1$0000 + IL_0021: br.s IL_0050 + + .line 518,518 : 4,49 '' + IL_0023: ldarg.0 + IL_0024: ldc.i4.0 + IL_0025: ldloc.0 + IL_0026: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_002b: stloc.1 + .line 519,519 : 4,53 '' + IL_002c: ldarg.0 + IL_002d: ldloc.0 + IL_002e: ldc.i4.1 + IL_002f: add + IL_0030: callvirt instance string [mscorlib]System.String::Substring(int32) + IL_0035: stloc.2 + .line 521,521 : 4,46 '' + IL_0036: ldc.i4.2 + IL_0037: newarr [mscorlib]System.String + IL_003c: stloc.s CS$0$0002 + IL_003e: ldloc.s CS$0$0002 + IL_0040: ldc.i4.0 + IL_0041: ldloc.1 + IL_0042: stelem.ref + IL_0043: ldloc.s CS$0$0002 + IL_0045: ldc.i4.1 + IL_0046: ldloc.2 + IL_0047: stelem.ref + IL_0048: ldloc.s CS$0$0002 + IL_004a: stloc.3 + .line 522,522 : 4,20 '' + IL_004b: ldloc.3 + IL_004c: stloc.s CS$1$0000 + IL_004e: br.s IL_0050 + + .line 523,523 : 3,4 '' + IL_0050: ldloc.s CS$1$0000 + IL_0052: ret + } // end of method IniStructure::GetDataFromLine + + .method private hidebysig static valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType + IsLineACategoryDef(string Line) cil managed + { + // Code size 133 (0x85) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType CS$1$0000, + [1] bool CS$4$0001) + .line 536,536 : 3,4 '' + IL_0000: nop + .line 537,537 : 4,24 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0007: ldc.i4.3 + IL_0008: clt + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.1 + IL_000e: ldloc.1 + IL_000f: brtrue.s IL_0015 + + .line 538,538 : 5,34 '' + IL_0011: ldc.i4.0 + IL_0012: stloc.0 + IL_0013: br.s IL_0083 + + .line 540,540 : 4,79 '' + IL_0015: ldarg.0 + IL_0016: ldc.i4.0 + IL_0017: ldc.i4.1 + IL_0018: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_001d: ldstr "[" + IL_0022: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0027: ldarg.0 + IL_0028: ldarg.0 + IL_0029: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_002e: ldc.i4.1 + IL_002f: sub + IL_0030: ldc.i4.1 + IL_0031: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_0036: ldstr "]" + IL_003b: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0040: and + IL_0041: ldc.i4.0 + IL_0042: ceq + IL_0044: stloc.1 + IL_0045: ldloc.1 + IL_0046: brtrue.s IL_007f + + .line 542,542 : 4,5 '' + IL_0048: nop + .line 543,543 : 5,33 '' + IL_0049: ldarg.0 + IL_004a: ldstr "=" + IL_004f: callvirt instance int32 [mscorlib]System.String::IndexOf(string) + IL_0054: ldc.i4.m1 + IL_0055: ceq + IL_0057: stloc.1 + IL_0058: ldloc.1 + IL_0059: brtrue.s IL_005f + + .line 545,545 : 6,29 '' + IL_005b: ldc.i4.2 + IL_005c: stloc.0 + IL_005d: br.s IL_0083 + + .line 546,546 : 5,72 '' + IL_005f: ldarg.0 + IL_0060: ldc.i4.s 91 + IL_0062: call bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::ContainsMoreThanOne(string, + char) + IL_0067: ldarg.0 + IL_0068: ldc.i4.s 93 + IL_006a: call bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::ContainsMoreThanOne(string, + char) + IL_006f: or + IL_0070: ldc.i4.0 + IL_0071: ceq + IL_0073: stloc.1 + IL_0074: ldloc.1 + IL_0075: brtrue.s IL_007b + + .line 548,548 : 6,29 '' + IL_0077: ldc.i4.2 + IL_0078: stloc.0 + IL_0079: br.s IL_0083 + + .line 549,549 : 5,30 '' + IL_007b: ldc.i4.1 + IL_007c: stloc.0 + IL_007d: br.s IL_0083 + + .line 551,551 : 4,33 '' + IL_007f: ldc.i4.0 + IL_0080: stloc.0 + IL_0081: br.s IL_0083 + + .line 552,552 : 3,4 '' + IL_0083: ldloc.0 + IL_0084: ret + } // end of method IniStructure::IsLineACategoryDef + + .method private hidebysig static string[] + DivideToLines(string Data) cil managed + { + // Code size 156 (0x9c) + .maxstack 6 + .locals init ([0] string[] Lines, + [1] int32 oldnewlinepos, + [2] int32 LineCounter, + [3] int32 i, + [4] string[] LinesTrimmed, + [5] string[] CS$1$0000, + [6] bool CS$4$0001) + .line 555,555 : 3,4 '' + IL_0000: nop + .line 556,556 : 4,45 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0007: newarr [mscorlib]System.String + IL_000c: stloc.0 + .line 557,557 : 4,26 '' + IL_000d: ldc.i4.0 + IL_000e: stloc.1 + .line 558,558 : 4,24 '' + IL_000f: ldc.i4.0 + IL_0010: stloc.2 + .line 559,559 : 9,19 '' + IL_0011: ldc.i4.0 + IL_0012: stloc.3 + IL_0013: br.s IL_004b + + .line 560,560 : 4,5 '' + IL_0015: nop + .line 561,561 : 5,42 '' + IL_0016: ldarg.0 + IL_0017: ldloc.3 + IL_0018: ldc.i4.1 + IL_0019: callvirt instance char[] [mscorlib]System.String::ToCharArray(int32, + int32) + IL_001e: ldc.i4.0 + IL_001f: ldelem.u2 + IL_0020: ldc.i4.s 10 + IL_0022: ceq + IL_0024: ldc.i4.0 + IL_0025: ceq + IL_0027: stloc.s CS$4$0001 + IL_0029: ldloc.s CS$4$0001 + IL_002b: brtrue.s IL_0046 + + .line 562,562 : 5,6 '' + IL_002d: nop + .line 563,563 : 6,80 '' + IL_002e: ldloc.0 + IL_002f: ldloc.2 + IL_0030: ldarg.0 + IL_0031: ldloc.1 + IL_0032: ldloc.3 + IL_0033: ldloc.1 + IL_0034: sub + IL_0035: ldc.i4.1 + IL_0036: sub + IL_0037: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_003c: stelem.ref + .line 564,564 : 6,28 '' + IL_003d: ldloc.3 + IL_003e: ldc.i4.1 + IL_003f: add + IL_0040: stloc.1 + .line 565,565 : 6,20 '' + IL_0041: ldloc.2 + IL_0042: ldc.i4.1 + IL_0043: add + IL_0044: stloc.2 + .line 566,566 : 5,6 '' + IL_0045: nop + .line 567,567 : 4,5 '' + IL_0046: nop + .line 559,559 : 37,40 '' + IL_0047: ldloc.3 + IL_0048: ldc.i4.1 + IL_0049: add + IL_004a: stloc.3 + .line 559,559 : 20,35 '' + IL_004b: ldloc.3 + IL_004c: ldarg.0 + IL_004d: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0052: clt + IL_0054: stloc.s CS$4$0001 + IL_0056: ldloc.s CS$4$0001 + IL_0058: brtrue.s IL_0015 + + .line 571,571 : 4,84 '' + IL_005a: ldloc.0 + IL_005b: ldloc.2 + IL_005c: ldarg.0 + IL_005d: ldloc.1 + IL_005e: ldarg.0 + IL_005f: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0064: ldloc.1 + IL_0065: sub + IL_0066: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_006b: stelem.ref + .line 572,572 : 4,56 '' + IL_006c: ldloc.2 + IL_006d: ldc.i4.1 + IL_006e: add + IL_006f: newarr [mscorlib]System.String + IL_0074: stloc.s LinesTrimmed + .line 573,573 : 9,19 '' + IL_0076: ldc.i4.0 + IL_0077: stloc.3 + IL_0078: br.s IL_0087 + + .line 574,574 : 4,5 '' + IL_007a: nop + .line 575,575 : 5,32 '' + IL_007b: ldloc.s LinesTrimmed + IL_007d: ldloc.3 + IL_007e: ldloc.0 + IL_007f: ldloc.3 + IL_0080: ldelem.ref + IL_0081: stelem.ref + .line 576,576 : 4,5 '' + IL_0082: nop + .line 573,573 : 41,44 '' + IL_0083: ldloc.3 + IL_0084: ldc.i4.1 + IL_0085: add + IL_0086: stloc.3 + .line 573,573 : 20,39 '' + IL_0087: ldloc.3 + IL_0088: ldloc.2 + IL_0089: ldc.i4.1 + IL_008a: add + IL_008b: clt + IL_008d: stloc.s CS$4$0001 + IL_008f: ldloc.s CS$4$0001 + IL_0091: brtrue.s IL_007a + + .line 577,577 : 4,24 '' + IL_0093: ldloc.s LinesTrimmed + IL_0095: stloc.s CS$1$0000 + IL_0097: br.s IL_0099 + + .line 578,578 : 3,4 '' + IL_0099: ldloc.s CS$1$0000 + IL_009b: ret + } // end of method IniStructure::DivideToLines + + .method private hidebysig static bool ContainsMoreThanOne(string Data, + char verify) cil managed + { + // Code size 87 (0x57) + .maxstack 2 + .locals init ([0] char[] data, + [1] int32 count, + [2] char c, + [3] bool CS$1$0000, + [4] char[] CS$6$0001, + [5] int32 CS$7$0002, + [6] bool CS$4$0003) + .line 581,581 : 3,4 '' + IL_0000: nop + .line 582,582 : 4,37 '' + IL_0001: ldarg.0 + IL_0002: callvirt instance char[] [mscorlib]System.String::ToCharArray() + IL_0007: stloc.0 + .line 583,583 : 4,18 '' + IL_0008: ldc.i4.0 + IL_0009: stloc.1 + .line 584,584 : 4,11 '' + IL_000a: nop + .line 584,584 : 23,27 '' + IL_000b: ldloc.0 + IL_000c: stloc.s CS$6$0001 + IL_000e: ldc.i4.0 + IL_000f: stloc.s CS$7$0002 + IL_0011: br.s IL_0032 + + .line 584,584 : 13,19 '' + IL_0013: ldloc.s CS$6$0001 + IL_0015: ldloc.s CS$7$0002 + IL_0017: ldelem.u2 + IL_0018: stloc.2 + .line 585,585 : 4,5 '' + IL_0019: nop + .line 586,586 : 5,21 '' + IL_001a: ldloc.2 + IL_001b: ldarg.1 + IL_001c: ceq + IL_001e: ldc.i4.0 + IL_001f: ceq + IL_0021: stloc.s CS$4$0003 + IL_0023: ldloc.s CS$4$0003 + IL_0025: brtrue.s IL_002b + + .line 587,587 : 6,14 '' + IL_0027: ldloc.1 + IL_0028: ldc.i4.1 + IL_0029: add + IL_002a: stloc.1 + .line 588,588 : 4,5 '' + IL_002b: nop + IL_002c: ldloc.s CS$7$0002 + IL_002e: ldc.i4.1 + IL_002f: add + IL_0030: stloc.s CS$7$0002 + .line 584,584 : 20,22 '' + IL_0032: ldloc.s CS$7$0002 + IL_0034: ldloc.s CS$6$0001 + IL_0036: ldlen + IL_0037: conv.i4 + IL_0038: clt + IL_003a: stloc.s CS$4$0003 + IL_003c: ldloc.s CS$4$0003 + IL_003e: brtrue.s IL_0013 + + .line 589,589 : 4,18 '' + IL_0040: ldloc.1 + IL_0041: ldc.i4.1 + IL_0042: cgt + IL_0044: ldc.i4.0 + IL_0045: ceq + IL_0047: stloc.s CS$4$0003 + IL_0049: ldloc.s CS$4$0003 + IL_004b: brtrue.s IL_0051 + + .line 590,590 : 5,17 '' + IL_004d: ldc.i4.1 + IL_004e: stloc.3 + IL_004f: br.s IL_0055 + + .line 591,591 : 4,17 '' + IL_0051: ldc.i4.0 + IL_0052: stloc.3 + IL_0053: br.s IL_0055 + + .line 592,592 : 3,4 '' + IL_0055: ldloc.3 + IL_0056: ret + } // end of method IniStructure::ContainsMoreThanOne + + .method private hidebysig static valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType + LineVerify(string line) cil managed + { + // Code size 200 (0xc8) + .maxstack 5 + .locals init ([0] int32 equalindex, + [1] valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType CS$1$0000, + [2] bool CS$4$0001) + .line 595,595 : 3,4 '' + IL_0000: nop + .line 596,596 : 4,19 '' + IL_0001: ldarg.0 + IL_0002: ldstr "" + IL_0007: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.2 + IL_0010: ldloc.2 + IL_0011: brtrue.s IL_001a + + .line 597,597 : 5,27 '' + IL_0013: ldc.i4.4 + IL_0014: stloc.1 + IL_0015: br IL_00c6 + + .line 599,599 : 4,82 '' + IL_001a: ldarg.0 + IL_001b: ldstr ";" + IL_0020: callvirt instance int32 [mscorlib]System.String::IndexOf(string) + IL_0025: ldc.i4.0 + IL_0026: ceq + IL_0028: ldarg.0 + IL_0029: ldstr "#" + IL_002e: callvirt instance int32 [mscorlib]System.String::IndexOf(string) + IL_0033: ldc.i4.0 + IL_0034: ceq + IL_0036: or + IL_0037: ldarg.0 + IL_0038: ldstr "//" + IL_003d: callvirt instance int32 [mscorlib]System.String::IndexOf(string) + IL_0042: ldc.i4.0 + IL_0043: ceq + IL_0045: or + IL_0046: ldc.i4.0 + IL_0047: ceq + IL_0049: stloc.2 + IL_004a: ldloc.2 + IL_004b: brtrue.s IL_0052 + + .line 600,600 : 4,5 '' + IL_004d: nop + .line 601,601 : 5,29 '' + IL_004e: ldc.i4.3 + IL_004f: stloc.1 + IL_0050: br.s IL_00c6 + + .line 604,604 : 4,39 '' + IL_0052: ldarg.0 + IL_0053: ldc.i4.s 61 + IL_0055: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_005a: stloc.0 + .line 605,605 : 4,24 '' + IL_005b: ldloc.0 + IL_005c: ldc.i4.0 + IL_005d: ceq + IL_005f: ldc.i4.0 + IL_0060: ceq + IL_0062: stloc.2 + IL_0063: ldloc.2 + IL_0064: brtrue.s IL_006a + + .line 606,606 : 5,28 '' + IL_0066: ldc.i4.2 + IL_0067: stloc.1 + IL_0068: br.s IL_00c6 + + .line 608,608 : 4,25 '' + IL_006a: ldloc.0 + IL_006b: ldc.i4.m1 + IL_006c: ceq + IL_006e: stloc.2 + IL_006f: ldloc.2 + IL_0070: brtrue.s IL_00c2 + + .line 609,609 : 4,5 '' + IL_0072: nop + .line 611,614 : 5,62 '' + IL_0073: ldarg.0 + IL_0074: ldc.i4.s 91 + IL_0076: ldc.i4.0 + IL_0077: ldloc.0 + IL_0078: callvirt instance int32 [mscorlib]System.String::IndexOf(char, + int32, + int32) + IL_007d: ldc.i4.m1 + IL_007e: ceq + IL_0080: ldc.i4.0 + IL_0081: ceq + IL_0083: ldarg.0 + IL_0084: ldc.i4.s 93 + IL_0086: ldc.i4.0 + IL_0087: ldloc.0 + IL_0088: callvirt instance int32 [mscorlib]System.String::IndexOf(char, + int32, + int32) + IL_008d: ldc.i4.m1 + IL_008e: ceq + IL_0090: ldc.i4.0 + IL_0091: ceq + IL_0093: or + IL_0094: ldarg.0 + IL_0095: ldc.i4.s 59 + IL_0097: ldc.i4.0 + IL_0098: ldloc.0 + IL_0099: callvirt instance int32 [mscorlib]System.String::IndexOf(char, + int32, + int32) + IL_009e: ldc.i4.m1 + IL_009f: ceq + IL_00a1: ldc.i4.0 + IL_00a2: ceq + IL_00a4: or + IL_00a5: ldarg.0 + IL_00a6: ldc.i4.s 35 + IL_00a8: ldc.i4.0 + IL_00a9: ldloc.0 + IL_00aa: callvirt instance int32 [mscorlib]System.String::IndexOf(char, + int32, + int32) + IL_00af: ldc.i4.m1 + IL_00b0: ceq + IL_00b2: ldc.i4.0 + IL_00b3: ceq + IL_00b5: or + IL_00b6: ldc.i4.0 + IL_00b7: ceq + IL_00b9: stloc.2 + IL_00ba: ldloc.2 + IL_00bb: brtrue.s IL_00c1 + + .line 615,615 : 6,29 '' + IL_00bd: ldc.i4.2 + IL_00be: stloc.1 + IL_00bf: br.s IL_00c6 + + .line 616,616 : 10,11 '' + IL_00c1: nop + .line 618,618 : 4,23 '' + IL_00c2: ldc.i4.5 + IL_00c3: stloc.1 + IL_00c4: br.s IL_00c6 + + .line 619,619 : 3,4 '' + IL_00c6: ldloc.1 + IL_00c7: ret + } // end of method IniStructure::LineVerify + + .method private hidebysig static string[] + RemoveAndVerifyIni(string[] Lines) cil managed + { + // Code size 151 (0x97) + .maxstack 4 + .locals init ([0] string[] temp, + [1] int32 TempCounter, + [2] string line, + [3] string[] OKLines, + [4] int32 i, + [5] string[] CS$1$0000, + [6] string[] CS$6$0001, + [7] int32 CS$7$0002, + [8] valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType CS$4$0003, + [9] bool CS$4$0004) + .line 622,622 : 3,4 '' + IL_0000: nop + .line 624,624 : 4,45 '' + IL_0001: ldarg.0 + IL_0002: ldlen + IL_0003: conv.i4 + IL_0004: newarr [mscorlib]System.String + IL_0009: stloc.0 + .line 625,625 : 4,24 '' + IL_000a: ldc.i4.0 + IL_000b: stloc.1 + .line 626,626 : 4,11 '' + IL_000c: nop + .line 626,626 : 28,33 '' + IL_000d: ldarg.0 + IL_000e: stloc.s CS$6$0001 + IL_0010: ldc.i4.0 + IL_0011: stloc.s CS$7$0002 + IL_0013: br.s IL_0059 + + .line 626,626 : 13,24 '' + IL_0015: ldloc.s CS$6$0001 + IL_0017: ldloc.s CS$7$0002 + IL_0019: ldelem.ref + IL_001a: stloc.2 + .line 627,627 : 4,5 '' + IL_001b: nop + .line 628,628 : 5,30 '' + IL_001c: ldloc.2 + IL_001d: call valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Virtuoso.Miranda.Plugins.Helpers.IniStructure::LineVerify(string) + IL_0022: stloc.s CS$4$0003 + IL_0024: ldloc.s CS$4$0003 + IL_0026: ldc.i4.2 + IL_0027: sub + IL_0028: switch ( + IL_003f, + IL_0044, + IL_0050, + IL_0046) + IL_003d: br.s IL_0052 + + .line 631,631 : 7,19 '' + IL_003f: ldnull + IL_0040: stloc.s CS$1$0000 + IL_0042: leave.s IL_0093 + + .line 633,633 : 7,16 '' + IL_0044: br.s IL_0053 + + .line 635,635 : 7,32 '' + IL_0046: ldloc.0 + IL_0047: ldloc.1 + IL_0048: ldloc.2 + IL_0049: stelem.ref + .line 636,636 : 7,21 '' + IL_004a: ldloc.1 + IL_004b: ldc.i4.1 + IL_004c: add + IL_004d: stloc.1 + .line 637,637 : 7,13 '' + IL_004e: br.s IL_0052 + + .line 639,639 : 7,16 '' + IL_0050: br.s IL_0053 + + .line 641,641 : 4,5 '' + IL_0052: nop + IL_0053: ldloc.s CS$7$0002 + IL_0055: ldc.i4.1 + IL_0056: add + IL_0057: stloc.s CS$7$0002 + .line 626,626 : 25,27 '' + IL_0059: ldloc.s CS$7$0002 + IL_005b: ldloc.s CS$6$0001 + IL_005d: ldlen + IL_005e: conv.i4 + IL_005f: clt + IL_0061: stloc.s CS$4$0004 + IL_0063: ldloc.s CS$4$0004 + IL_0065: brtrue.s IL_0015 + + .line 643,643 : 4,47 '' + IL_0067: ldloc.1 + IL_0068: newarr [mscorlib]System.String + IL_006d: stloc.3 + .line 644,644 : 9,19 '' + IL_006e: ldc.i4.0 + IL_006f: stloc.s i + IL_0071: br.s IL_0083 + + .line 645,645 : 4,5 '' + IL_0073: nop + .line 646,646 : 5,26 '' + IL_0074: ldloc.3 + IL_0075: ldloc.s i + IL_0077: ldloc.0 + IL_0078: ldloc.s i + IL_007a: ldelem.ref + IL_007b: stelem.ref + .line 647,647 : 4,5 '' + IL_007c: nop + .line 644,644 : 37,40 '' + IL_007d: ldloc.s i + IL_007f: ldc.i4.1 + IL_0080: add + IL_0081: stloc.s i + .line 644,644 : 20,35 '' + IL_0083: ldloc.s i + IL_0085: ldloc.1 + IL_0086: clt + IL_0088: stloc.s CS$4$0004 + IL_008a: ldloc.s CS$4$0004 + IL_008c: brtrue.s IL_0073 + + .line 648,648 : 4,19 '' + IL_008e: ldloc.3 + IL_008f: stloc.s CS$1$0000 + IL_0091: br.s IL_0093 + + IL_0093: nop + .line 649,649 : 3,4 '' + IL_0094: ldloc.s CS$1$0000 + IL_0096: ret + } // end of method IniStructure::RemoveAndVerifyIni + +} // end of class Virtuoso.Miranda.Plugins.Helpers.IniStructure + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs +{ + .field private class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol + .field private class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType 'type' + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult result + .field private native int processHandle + .field private native int lParam + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_Protocol() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol CS$1$0000) + .line 32,32 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocols\\AckEventArgs.cs' + IL_0000: nop + .line 32,32 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::protocol + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 32,32 : 36,37 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method AckEventArgs::get_Protocol + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_Contact() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 38,38 : 17,18 '' + IL_0000: nop + .line 38,38 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::contact + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 38,38 : 35,36 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method AckEventArgs::get_Contact + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType + get_Type() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType CS$1$0000) + .line 44,44 : 17,18 '' + IL_0000: nop + .line 44,44 : 19,31 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::'type' + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 44,44 : 32,33 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method AckEventArgs::get_Type + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult + get_Result() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult CS$1$0000) + .line 50,50 : 17,18 '' + IL_0000: nop + .line 50,50 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::result + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 50,50 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method AckEventArgs::get_Result + + .method public hidebysig specialname instance native int + get_ProcessHandle() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 56,56 : 17,18 '' + IL_0000: nop + .line 56,56 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::processHandle + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 56,56 : 41,42 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method AckEventArgs::get_ProcessHandle + + .method public hidebysig specialname instance native int + get_LParam() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 62,62 : 17,18 '' + IL_0000: nop + .line 62,62 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::lParam + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 62,62 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method AckEventArgs::get_LParam + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 69,69 : 9,30 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs::.ctor() + IL_0006: nop + .line 69,69 : 31,32 '' + IL_0007: nop + .line 69,69 : 33,34 '' + IL_0008: nop + IL_0009: ret + } // end of method AckEventArgs::.ctor + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs + FromACKDATA(native int pAckData) cil managed + { + // Code size 183 (0xb7) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA ackData, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs ackArgs, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs CS$1$0000, + [3] bool CS$4$0001) + .line 72,72 : 9,10 '' + IL_0000: nop + .line 73,73 : 13,41 '' + IL_0001: ldarg.0 + IL_0002: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0007: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.3 + IL_0010: ldloc.3 + IL_0011: brtrue.s IL_001e + + .line 74,74 : 17,61 '' + IL_0013: ldstr "pAckData" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 76,76 : 13,63 '' + IL_001e: ldarga.s pAckData + IL_0020: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0025: ldobj Virtuoso.Miranda.Plugins.Native.ACKDATA + IL_002a: stloc.0 + .line 77,77 : 13,55 '' + IL_002b: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::.ctor() + IL_0030: stloc.1 + .line 79,79 : 13,77 '' + IL_0031: ldloc.1 + IL_0032: ldloca.s ackData + IL_0034: ldfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ContactHandle + IL_0039: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_003e: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::contact + .line 80,80 : 13,45 '' + IL_0043: ldloc.1 + IL_0044: ldloca.s ackData + IL_0046: ldfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::LParam + IL_004b: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::lParam + .line 81,81 : 13,59 '' + IL_0050: ldloc.1 + IL_0051: ldloca.s ackData + IL_0053: ldfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ProcessHandle + IL_0058: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::processHandle + .line 82,82 : 13,56 '' + IL_005d: ldloc.1 + IL_005e: ldloca.s ackData + IL_0060: ldfld int32 Virtuoso.Miranda.Plugins.Native.ACKDATA::Result + IL_0065: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::result + .line 83,83 : 13,50 '' + IL_006a: ldloc.1 + IL_006b: ldloca.s ackData + IL_006d: ldfld int32 Virtuoso.Miranda.Plugins.Native.ACKDATA::Type + IL_0072: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::'type' + .line 85,85 : 13,51 '' + IL_0077: ldloca.s ackData + IL_0079: ldfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ModuleName + IL_007e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0083: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0088: ldc.i4.0 + IL_0089: ceq + IL_008b: stloc.3 + IL_008c: ldloc.3 + IL_008d: brtrue.s IL_00b1 + + .line 86,86 : 17,130 '' + IL_008f: ldloc.1 + IL_0090: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0095: callvirt instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Protocols() + IL_009a: ldloca.s ackData + IL_009c: ldfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ModuleName + IL_00a1: ldc.i4.0 + IL_00a2: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_00a7: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::get_Item(string) + IL_00ac: stfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::protocol + .line 88,88 : 13,28 '' + IL_00b1: ldloc.1 + IL_00b2: stloc.2 + IL_00b3: br.s IL_00b5 + + .line 89,89 : 9,10 '' + IL_00b5: ldloc.2 + IL_00b6: ret + } // end of method AckEventArgs::FromACKDATA + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + Protocol() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Protocol() + } // end of property AckEventArgs::Protocol + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + Contact() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Contact() + } // end of property AckEventArgs::Contact + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType + Type() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Type() + } // end of property AckEventArgs::Type + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult + Result() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Result() + } // end of property AckEventArgs::Result + .property instance native int ProcessHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_ProcessHandle() + } // end of property AckEventArgs::ProcessHandle + .property instance native int LParam() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_LParam() + } // end of property AckEventArgs::LParam +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter + extends [mscorlib]System.Object +{ + .field private static literal string MS_PROTO_CHAINSEND = "Proto/ChainSend" + .field private static literal string MS_PROTO_CHAINRECV = "Proto/ChainRecv" + .field private static literal string ME_PROTO_ACK = "Proto/Ack" + .field private static class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 AckReceivedEventHandler + .field private static class Virtuoso.Miranda.Plugins.Callback 'CS$<>9__CachedAnonymousMethodDelegate1' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method public hidebysig specialname static + void add_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 56 (0x38) + .maxstack 8 + .line 74,74 : 13,14 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocols\\AckRouter.cs' + IL_0000: nop + .line 75,75 : 17,119 '' + IL_0001: ldsflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::AckReceivedEventHandler + IL_0006: ldarg.0 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + IL_000c: nop + .line 76,83 : 17,24 '' + IL_000d: ldstr "Proto/Ack" + IL_0012: ldsfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0017: brtrue.s IL_002c + + IL_0019: ldnull + IL_001a: ldftn int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::'b__0'(native uint, + native int) + IL_0020: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0025: stsfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_002a: br.s IL_002c + + IL_002c: ldsfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0031: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0036: nop + .line 84,84 : 13,14 '' + IL_0037: ret + } // end of method AckRouter::add_AckReceived + + .method public hidebysig specialname static + void remove_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 30 (0x1e) + .maxstack 8 + .line 87,87 : 13,14 '' + IL_0000: nop + .line 88,88 : 17,119 '' + IL_0001: ldsflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::AckReceivedEventHandler + IL_0006: ldarg.0 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + IL_000c: nop + .line 89,89 : 17,91 '' + IL_000d: ldstr "Proto/Ack" + IL_0012: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::AckReceivedEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + IL_001c: nop + .line 90,90 : 13,14 '' + IL_001d: ret + } // end of method AckRouter::remove_AckReceived + + .method public hidebysig static int32 ChainSend(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData chainData) cil managed + { + // Code size 45 (0x2d) + .maxstack 2 + .locals init ([0] int32 CS$1$0000, + [1] bool CS$4$0001) + .line 98,98 : 9,10 '' + IL_0000: nop + .line 99,99 : 13,35 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 100,100 : 17,62 '' + IL_000c: ldstr "chainData" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 102,102 : 13,70 '' + IL_0017: ldarg.0 + IL_0018: callvirt instance native uint Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_WParam() + IL_001d: ldarg.0 + IL_001e: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_CcsDataPtr() + IL_0023: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::ChainSend(native uint, + native int) + IL_0028: stloc.0 + IL_0029: br.s IL_002b + + .line 103,103 : 9,10 '' + IL_002b: ldloc.0 + IL_002c: ret + } // end of method AckRouter::ChainSend + + .method public hidebysig static int32 ChainSend(native uint wParam, + native int lParam) cil managed + { + // Code size 23 (0x17) + .maxstack 4 + .locals init ([0] int32 CS$1$0000) + .line 106,106 : 9,10 '' + IL_0000: nop + .line 107,107 : 13,91 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "Proto/ChainSend" + IL_000b: ldarg.0 + IL_000c: ldarg.1 + IL_000d: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0012: stloc.0 + IL_0013: br.s IL_0015 + + .line 108,108 : 9,10 '' + IL_0015: ldloc.0 + IL_0016: ret + } // end of method AckRouter::ChainSend + + .method public hidebysig static int32 ChainReceive(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData chainData) cil managed + { + // Code size 45 (0x2d) + .maxstack 2 + .locals init ([0] int32 CS$1$0000, + [1] bool CS$4$0001) + .line 111,111 : 9,10 '' + IL_0000: nop + .line 112,112 : 13,35 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: brtrue.s IL_0017 + + .line 113,113 : 17,62 '' + IL_000c: ldstr "chainData" + IL_0011: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0016: throw + + .line 115,115 : 13,73 '' + IL_0017: ldarg.0 + IL_0018: callvirt instance native uint Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_WParam() + IL_001d: ldarg.0 + IL_001e: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_CcsDataPtr() + IL_0023: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::ChainReceive(native uint, + native int) + IL_0028: stloc.0 + IL_0029: br.s IL_002b + + .line 116,116 : 9,10 '' + IL_002b: ldloc.0 + IL_002c: ret + } // end of method AckRouter::ChainReceive + + .method public hidebysig static int32 ChainReceive(native uint wParam, + native int lParam) cil managed + { + // Code size 23 (0x17) + .maxstack 4 + .locals init ([0] int32 CS$1$0000) + .line 119,119 : 9,10 '' + IL_0000: nop + .line 120,120 : 13,91 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "Proto/ChainRecv" + IL_000b: ldarg.0 + IL_000c: ldarg.1 + IL_000d: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0012: stloc.0 + IL_0013: br.s IL_0015 + + .line 121,121 : 9,10 '' + IL_0015: ldloc.0 + IL_0016: ret + } // end of method AckRouter::ChainReceive + + .method private hidebysig static int32 + 'b__0'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 27 (0x1b) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs e, + [1] int32 CS$1$0000) + .line 78,78 : 21,22 '' + IL_0000: nop + .line 79,79 : 25,75 '' + IL_0001: ldarg.1 + IL_0002: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::FromACKDATA(native int) + IL_0007: stloc.0 + .line 81,81 : 25,110 '' + IL_0008: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::AckReceivedEventHandler + IL_000d: ldnull + IL_000e: ldloc.0 + IL_000f: call bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + object, + !!0) + IL_0014: pop + .line 82,82 : 25,60 '' + IL_0015: ldc.i4.0 + IL_0016: stloc.1 + IL_0017: br.s IL_0019 + + IL_0019: ldloc.1 + IL_001a: ret + } // end of method AckRouter::'b__0' + + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 AckReceived + { + .removeon void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::remove_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .addon void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::add_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event AckRouter::AckReceived +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs +{ + .field private string settingName + .field private string settingOwner + .field private object 'value' + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType valueType + .method public hidebysig specialname instance string + get_SettingName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 32,32 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaContactSettingEventArgs.cs' + IL_0000: nop + .line 32,32 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::settingName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 32,32 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContactSettingEventArgs::get_SettingName + + .method public hidebysig specialname instance string + get_SettingOwner() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 38,38 : 17,18 '' + IL_0000: nop + .line 38,38 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::settingOwner + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 38,38 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContactSettingEventArgs::get_SettingOwner + + .method public hidebysig specialname instance object + get_Value() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] object CS$1$0000) + .line 44,44 : 17,18 '' + IL_0000: nop + .line 44,44 : 19,32 '' + IL_0001: ldarg.0 + IL_0002: ldfld object Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::'value' + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 44,44 : 33,34 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContactSettingEventArgs::get_Value + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType + get_ValueType() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType CS$1$0000) + .line 50,50 : 17,18 '' + IL_0000: nop + .line 50,50 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::valueType + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 50,50 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method MirandaContactSettingEventArgs::get_ValueType + + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo, + string name, + string owner, + object 'value', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType valueType) cil managed + { + // Code size 65 (0x41) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 57,58 : 9,32 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: nop + .line 59,59 : 9,10 '' + IL_0008: nop + .line 60,60 : 13,44 '' + IL_0009: ldarg.2 + IL_000a: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000f: ldc.i4.0 + IL_0010: ceq + IL_0012: stloc.0 + IL_0013: ldloc.0 + IL_0014: brtrue.s IL_0021 + + .line 61,61 : 17,57 '' + IL_0016: ldstr "name" + IL_001b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0020: throw + + .line 63,63 : 13,37 '' + IL_0021: ldarg.0 + IL_0022: ldarg.2 + IL_0023: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::settingName + .line 64,64 : 13,39 '' + IL_0028: ldarg.0 + IL_0029: ldarg.3 + IL_002a: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::settingOwner + .line 65,65 : 13,32 '' + IL_002f: ldarg.0 + IL_0030: ldarg.s 'value' + IL_0032: stfld object Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::'value' + .line 66,66 : 13,40 '' + IL_0037: ldarg.0 + IL_0038: ldarg.s valueType + IL_003a: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::valueType + .line 67,67 : 9,10 '' + IL_003f: nop + IL_0040: ret + } // end of method MirandaContactSettingEventArgs::.ctor + + .property instance string SettingName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_SettingName() + } // end of property MirandaContactSettingEventArgs::SettingName + .property instance string SettingOwner() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_SettingOwner() + } // end of property MirandaContactSettingEventArgs::SettingOwner + .property instance object Value() + { + .get instance object Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_Value() + } // end of property MirandaContactSettingEventArgs::Value + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType + ValueType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_ValueType() + } // end of property MirandaContactSettingEventArgs::ValueType +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException + extends [mscorlib]System.Exception +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 28,28 : 9,40 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ConfigurationException.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Exception::.ctor() + IL_0006: nop + .line 28,28 : 41,42 '' + IL_0007: nop + .line 28,28 : 43,44 '' + IL_0008: nop + IL_0009: ret + } // end of method ConfigurationException::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string message) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 29,29 : 9,70 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void [mscorlib]System.Exception::.ctor(string) + IL_0007: nop + .line 29,29 : 71,72 '' + IL_0008: nop + .line 29,29 : 73,74 '' + IL_0009: nop + IL_000a: ret + } // end of method ConfigurationException::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string message, + class [mscorlib]System.Exception inner) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 30,30 : 9,94 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.Exception::.ctor(string, + class [mscorlib]System.Exception) + IL_0008: nop + .line 30,30 : 95,96 '' + IL_0009: nop + .line 30,30 : 97,98 '' + IL_000a: nop + IL_000b: ret + } // end of method ConfigurationException::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 31,31 : 9,113 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext) + IL_0008: nop + .line 31,31 : 114,115 '' + IL_0009: nop + .line 31,31 : 116,117 '' + IL_000a: nop + IL_000b: ret + } // end of method ConfigurationException::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + extends [mscorlib]System.Attribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 04 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ........T..Allow + 4D 75 6C 74 69 70 6C 65 00 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 00 ) // rited. + .field private initonly class [mscorlib]System.Version version + .field private bool profileBound + .field private bool encrypt + .field private class [mscorlib]System.Type 'storage' + .field private class [mscorlib]System.Type encryption + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 30,30 : 9,49 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ConfigurationOptionsAttribute.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + IL_0006: nop + .line 30,30 : 50,51 '' + IL_0007: nop + .line 30,30 : 52,53 '' + IL_0008: nop + IL_0009: ret + } // end of method ConfigurationOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string configurationVersion) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 32,32 : 9,116 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: ldc.i4.1 + IL_0004: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor(string, + bool, + bool) + IL_0009: nop + .line 32,32 : 117,118 '' + IL_000a: nop + .line 32,32 : 119,120 '' + IL_000b: nop + IL_000c: ret + } // end of method ConfigurationOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(bool encrypt, + bool profileBound) cil managed + { + .custom instance void [mscorlib]System.ObsoleteAttribute::.ctor(string, + bool) = ( 01 00 37 57 69 6C 6C 20 62 65 20 72 65 6D 6F 76 // ..7Will be remov + 65 64 20 69 6E 20 66 75 74 75 72 65 2E 20 55 73 // ed in future. Us + 65 20 6E 61 6D 65 64 20 61 72 67 75 6D 65 6E 74 // e named argument + 73 20 69 6E 73 74 65 61 64 2E 01 00 00 ) // s instead.... + // Code size 13 (0xd) + .maxstack 8 + .line 34,35 : 9,114 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor(string, + bool, + bool) + IL_0009: nop + .line 35,35 : 115,116 '' + IL_000a: nop + .line 35,35 : 117,118 '' + IL_000b: nop + IL_000c: ret + } // end of method ConfigurationOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string configurationVersion, + bool encrypt, + bool profileBound) cil managed + { + .custom instance void [mscorlib]System.ObsoleteAttribute::.ctor(string, + bool) = ( 01 00 37 57 69 6C 6C 20 62 65 20 72 65 6D 6F 76 // ..7Will be remov + 65 64 20 69 6E 20 66 75 74 75 72 65 2E 20 55 73 // ed in future. Us + 65 20 6E 61 6D 65 64 20 61 72 67 75 6D 65 6E 74 // e named argument + 73 20 69 6E 73 74 65 61 64 2E 00 00 00 ) // s instead.... + // Code size 46 (0x2e) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 37,38 : 9,107 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + IL_0006: nop + .line 39,39 : 9,10 '' + IL_0007: nop + .line 40,40 : 13,61 '' + IL_0008: ldarg.1 + IL_0009: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000e: stloc.0 + IL_000f: ldloc.0 + IL_0010: brtrue.s IL_001e + + .line 41,41 : 17,66 '' + IL_0012: ldarg.0 + IL_0013: ldarg.1 + IL_0014: newobj instance void [mscorlib]System.Version::.ctor(string) + IL_0019: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::version + .line 43,43 : 13,36 '' + IL_001e: ldarg.0 + IL_001f: ldarg.2 + IL_0020: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encrypt + .line 44,44 : 13,46 '' + IL_0025: ldarg.0 + IL_0026: ldarg.3 + IL_0027: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::profileBound + .line 45,45 : 9,10 '' + IL_002c: nop + IL_002d: ret + } // end of method ConfigurationOptionsAttribute::.ctor + + .method public hidebysig specialname instance class [mscorlib]System.Version + get_Version() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 54,54 : 17,18 '' + IL_0000: nop + .line 54,54 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::version + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 54,54 : 35,36 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ConfigurationOptionsAttribute::get_Version + + .method public hidebysig specialname instance bool + get_ProfileBound() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 60,60 : 17,18 '' + IL_0000: nop + .line 60,60 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::profileBound + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 60,60 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ConfigurationOptionsAttribute::get_ProfileBound + + .method public hidebysig specialname instance void + set_ProfileBound(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 61,61 : 17,18 '' + IL_0000: nop + .line 61,61 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::profileBound + .line 61,61 : 41,42 '' + IL_0008: ret + } // end of method ConfigurationOptionsAttribute::set_ProfileBound + + .method public hidebysig specialname instance bool + get_Encrypt() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 67,67 : 17,18 '' + IL_0000: nop + .line 67,67 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encrypt + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 67,67 : 35,36 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ConfigurationOptionsAttribute::get_Encrypt + + .method public hidebysig specialname instance void + set_Encrypt(bool 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 68,68 : 17,18 '' + IL_0000: nop + .line 68,68 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encrypt + .line 68,68 : 36,37 '' + IL_0008: ret + } // end of method ConfigurationOptionsAttribute::set_Encrypt + + .method public hidebysig specialname instance class [mscorlib]System.Type + get_Storage() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Type CS$1$0000) + .line 74,74 : 17,18 '' + IL_0000: nop + .line 74,74 : 19,34 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::'storage' + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 74,74 : 35,36 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ConfigurationOptionsAttribute::get_Storage + + .method public hidebysig specialname instance void + set_Storage(class [mscorlib]System.Type 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 75,75 : 17,18 '' + IL_0000: nop + .line 75,75 : 19,35 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::'storage' + .line 75,75 : 36,37 '' + IL_0008: ret + } // end of method ConfigurationOptionsAttribute::set_Storage + + .method public hidebysig specialname instance class [mscorlib]System.Type + get_Encryption() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Type CS$1$0000) + .line 81,81 : 17,18 '' + IL_0000: nop + .line 81,81 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encryption + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 81,81 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ConfigurationOptionsAttribute::get_Encryption + + .method public hidebysig specialname instance void + set_Encryption(class [mscorlib]System.Type 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 82,82 : 17,18 '' + IL_0000: nop + .line 82,82 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encryption + .line 82,82 : 39,40 '' + IL_0008: ret + } // end of method ConfigurationOptionsAttribute::set_Encryption + + .method assembly hidebysig instance class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + Finalize() cil managed + { + // Code size 83 (0x53) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute CS$1$0000, + [1] bool CS$4$0001) + .line 90,90 : 9,10 '' + IL_0000: nop + .line 91,91 : 13,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::'storage' + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: stloc.1 + IL_000e: ldloc.1 + IL_000f: brtrue.s IL_0021 + + .line 92,92 : 17,51 '' + IL_0011: ldarg.0 + IL_0012: ldtoken Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage + IL_0017: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_001c: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::'storage' + .line 94,94 : 13,47 '' + IL_0021: ldarg.0 + IL_0022: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encrypt + IL_0027: brfalse.s IL_0037 + + IL_0029: ldarg.0 + IL_002a: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encryption + IL_002f: ldnull + IL_0030: ceq + IL_0032: ldc.i4.0 + IL_0033: ceq + IL_0035: br.s IL_0038 + + IL_0037: ldc.i4.1 + IL_0038: nop + IL_0039: stloc.1 + IL_003a: ldloc.1 + IL_003b: brtrue.s IL_004d + + .line 95,95 : 17,56 '' + IL_003d: ldarg.0 + IL_003e: ldtoken Virtuoso.Miranda.Plugins.Configuration.WindowsEncryption + IL_0043: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0048: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encryption + .line 97,97 : 13,25 '' + IL_004d: ldarg.0 + IL_004e: stloc.0 + IL_004f: br.s IL_0051 + + .line 98,98 : 9,10 '' + IL_0051: ldloc.0 + IL_0052: ret + } // end of method ConfigurationOptionsAttribute::Finalize + + .property instance class [mscorlib]System.Version + Version() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Version() + } // end of property ConfigurationOptionsAttribute::Version + .property instance bool ProfileBound() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_ProfileBound(bool) + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_ProfileBound() + } // end of property ConfigurationOptionsAttribute::ProfileBound + .property instance bool Encrypt() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encrypt() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_Encrypt(bool) + } // end of property ConfigurationOptionsAttribute::Encrypt + .property instance class [mscorlib]System.Type + Storage() + { + .get instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Storage() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_Storage(class [mscorlib]System.Type) + } // end of property ConfigurationOptionsAttribute::Storage + .property instance class [mscorlib]System.Type + Encryption() + { + .get instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encryption() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_Encryption(class [mscorlib]System.Type) + } // end of property ConfigurationOptionsAttribute::Encryption +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Message = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Url = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType File = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Chat = int32(0x00000003) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType AwayMessage = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType AuthorizationRequest = int32(0x00000005) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Added = int32(0x00000006) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType GetInfo = int32(0x00000007) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType SetInfo = int32(0x00000008) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Login = int32(0x00000009) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Search = int32(0x0000000A) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType NewUser = int32(0x0000000B) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Status = int32(0x0000000C) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Contacts = int32(0x0000000D) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Avatar = int32(0x0000000E) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult Success = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult Failure = int32(0x00000001) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol + extends Virtuoso.Miranda.Plugins.Infrastructure.Protocol +{ + .field private static literal string MS_PROTO_ADDTOCONTACT = "Proto/AddToContact" + .field private bool Registered + .field private valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR nativeDescriptor + .method assembly hidebysig specialname rtspecialname + instance void .ctor(string name, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType 'type') cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 40,40 : 9,84 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocols\\ManagedProtocol.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType) + IL_0008: nop + .line 40,40 : 85,86 '' + IL_0009: nop + .line 40,40 : 87,88 '' + IL_000a: nop + IL_000b: ret + } // end of method ManagedProtocol::.ctor + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + get_NativeDescriptor() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR CS$1$0000) + .line 49,49 : 17,18 '' + IL_0000: nop + .line 49,49 : 19,43 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::nativeDescriptor + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 49,49 : 44,45 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ManagedProtocol::get_NativeDescriptor + + .method assembly hidebysig instance void + Register() cil managed + { + // Code size 149 (0x95) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR descriptor, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeHandle, + [2] int32 result, + [3] bool CS$4$0000) + .line 57,57 : 9,10 '' + IL_0000: nop + .line 58,58 : 13,28 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Registered + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.3 + IL_000b: ldloc.3 + IL_000c: brtrue.s IL_0014 + + .line 59,59 : 17,55 '' + IL_000e: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0013: throw + + .line 61,61 : 13,80 '' + IL_0014: ldloca.s descriptor + IL_0016: ldarg.0 + IL_0017: call instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_001c: ldarg.0 + IL_001d: call instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Type() + IL_0022: newobj instance void Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType) + IL_0027: stobj Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + .line 62,62 : 13,118 '' + IL_002c: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0031: stloc.1 + .line 65,65 : 13,14 '' + .try + { + IL_0032: nop + .line 66,66 : 17,94 '' + IL_0033: ldloca.s descriptor + IL_0035: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_003a: stloc.1 + .line 67,67 : 17,126 '' + IL_003b: ldarg.0 + IL_003c: call instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::get_Context() + IL_0041: ldstr "Proto/RegisterModule" + IL_0046: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_004b: ldloca.s nativeHandle + IL_004d: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0052: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0057: stloc.2 + .line 69,69 : 17,33 '' + IL_0058: ldloc.2 + IL_0059: ldc.i4.0 + IL_005a: ceq + IL_005c: stloc.3 + IL_005d: ldloc.3 + IL_005e: brtrue.s IL_0077 + + .line 70,70 : 21,152 '' + IL_0060: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0065: ldloca.s result + IL_0067: call instance string [mscorlib]System.Int32::ToString() + IL_006c: call string [mscorlib]System.String::Format(string, + object) + IL_0071: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0076: throw + + .line 72,72 : 17,52 '' + IL_0077: ldarg.0 + IL_0078: ldloc.0 + IL_0079: stfld valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::nativeDescriptor + .line 73,73 : 17,35 '' + IL_007e: ldarg.0 + IL_007f: ldc.i4.1 + IL_0080: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Registered + .line 74,74 : 13,14 '' + IL_0085: nop + IL_0086: leave.s IL_0093 + + .line 76,76 : 13,14 '' + } // end .try + finally + { + IL_0088: nop + .line 77,77 : 17,37 '' + IL_0089: ldloca.s nativeHandle + IL_008b: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_0090: nop + .line 78,78 : 13,14 '' + IL_0091: nop + IL_0092: endfinally + } // end handler + IL_0093: nop + .line 79,79 : 9,10 '' + IL_0094: ret + } // end of method ManagedProtocol::Register + + .method assembly hidebysig instance void + Unregister() cil managed + { + // Code size 18 (0x12) + .maxstack 1 + .locals init ([0] bool CS$4$0000) + .line 82,82 : 9,10 '' + IL_0000: nop + .line 83,83 : 13,29 '' + IL_0001: ldarg.0 + IL_0002: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Registered + IL_0007: stloc.0 + IL_0008: ldloc.0 + IL_0009: brtrue.s IL_0011 + + .line 84,84 : 17,55 '' + IL_000b: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0010: throw + + .line 87,87 : 9,10 '' + IL_0011: ret + } // end of method ManagedProtocol::Unregister + + .method public hidebysig instance void + AddToContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 40 (0x28) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 90,90 : 9,10 '' + IL_0000: nop + .line 91,91 : 13,33 '' + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: stloc.0 + IL_000c: ldloc.0 + IL_000d: brtrue.s IL_001a + + .line 92,92 : 17,60 '' + IL_000f: ldstr "contact" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 94,94 : 13,49 '' + IL_001a: ldarg.0 + IL_001b: ldarg.1 + IL_001c: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0021: call instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::AddToContact(native int) + IL_0026: nop + .line 95,95 : 9,10 '' + IL_0027: ret + } // end of method ManagedProtocol::AddToContact + + .method public hidebysig instance void + AddToContact(native int contactHandle) cil managed + { + // Code size 67 (0x43) + .maxstack 4 + .locals init ([0] int32 result, + [1] bool CS$4$0000) + .line 98,98 : 9,10 '' + IL_0000: nop + .line 99,99 : 13,107 '' + IL_0001: ldarg.0 + IL_0002: call instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::get_Context() + IL_0007: ldstr "Proto/AddToContact" + IL_000c: ldarg.1 + IL_000d: ldarg.0 + IL_000e: call instance valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::get_NativeDescriptor() + IL_0013: ldfld native int Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Name + IL_0018: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_001d: stloc.0 + .line 101,101 : 13,29 '' + IL_001e: ldloc.0 + IL_001f: ldc.i4.0 + IL_0020: ceq + IL_0022: stloc.1 + IL_0023: ldloc.1 + IL_0024: brtrue.s IL_0042 + + .line 102,102 : 17,171 '' + IL_0026: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_002b: ldstr "Proto/AddToContact" + IL_0030: ldloca.s result + IL_0032: call instance string [mscorlib]System.Int32::ToString() + IL_0037: call string [mscorlib]System.String::Format(string, + object, + object) + IL_003c: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0041: throw + + .line 103,103 : 9,10 '' + IL_0042: ret + } // end of method ManagedProtocol::AddToContact + + .property instance valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + NativeDescriptor() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::get_NativeDescriptor() + } // end of property ManagedProtocol::NativeDescriptor +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.Security.SuppressUnmanagedCodeSecurityAttribute::.ctor() = ( 01 00 00 00 ) + .field private static literal string MS_PROTO_BROADCASTACK = "Proto/BroadcastAck" + .field private static class [mscorlib]System.Threading.WaitCallback 'CS$<>9__CachedAnonymousMethodDelegate1' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method private hidebysig static valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA + BuildAckData(native int pModuleName, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType 'type', + bool success, + native int contactHandle, + native int processHandle, + native int lParam) cil managed + { + // Code size 51 (0x33) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA ack, + [1] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA CS$1$0000) + .line 39,39 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocols\\AckBroadcaster.cs' + IL_0000: nop + .line 40,40 : 13,122 '' + IL_0001: ldloca.s ack + IL_0003: ldarg.0 + IL_0004: ldarg.1 + IL_0005: ldarg.2 + IL_0006: brtrue.s IL_000b + + IL_0008: ldc.i4.1 + IL_0009: br.s IL_000c + + IL_000b: ldc.i4.0 + IL_000c: nop + IL_000d: call instance void Virtuoso.Miranda.Plugins.Native.ACKDATA::.ctor(native int, + int32, + int32) + IL_0012: nop + .line 41,41 : 13,47 '' + IL_0013: ldloca.s ack + IL_0015: ldarg.3 + IL_0016: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ContactHandle + .line 42,42 : 13,47 '' + IL_001b: ldloca.s ack + IL_001d: ldarg.s processHandle + IL_001f: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ProcessHandle + .line 43,43 : 13,33 '' + IL_0024: ldloca.s ack + IL_0026: ldarg.s lParam + IL_0028: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::LParam + .line 45,45 : 13,24 '' + IL_002d: ldloc.0 + IL_002e: stloc.1 + IL_002f: br.s IL_0031 + + .line 46,46 : 9,10 '' + IL_0031: ldloc.1 + IL_0032: ret + } // end of method AckBroadcaster::BuildAckData + + .method private hidebysig static int32 + BroadcastAck(valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA* ack) cil managed + { + // Code size 24 (0x18) + .maxstack 4 + .locals init ([0] int32 CS$1$0000) + .line 49,49 : 9,10 '' + IL_0000: nop + .line 50,50 : 13,95 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "Proto/BroadcastAck" + IL_000b: ldc.i4.0 + IL_000c: conv.u + IL_000d: ldarg.0 + IL_000e: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0013: stloc.0 + IL_0014: br.s IL_0016 + + .line 51,51 : 9,10 '' + IL_0016: ldloc.0 + IL_0017: ret + } // end of method AckBroadcaster::BroadcastAck + + .method public hidebysig static int32 BroadcastAck(string moduleName, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType 'type', + bool success, + native int contactHandle, + native int processHandle, + native int lParam) cil managed + { + // Code size 52 (0x34) + .maxstack 6 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle pModuleName, + [1] int32 CS$1$0000) + .line 58,58 : 9,10 '' + IL_0000: nop + .line 59,59 : 13,77 '' + IL_0001: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_0006: stloc.0 + .line 62,62 : 13,14 '' + .try + { + IL_0007: nop + .line 63,63 : 17,90 '' + IL_0008: ldarg.0 + IL_0009: ldc.i4.0 + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_000f: stloc.0 + .line 64,64 : 17,110 '' + IL_0010: ldloca.s pModuleName + IL_0012: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0017: ldarg.1 + IL_0018: ldarg.2 + IL_0019: ldarg.3 + IL_001a: ldarg.s processHandle + IL_001c: ldarg.s lParam + IL_001e: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType, + bool, + native int, + native int, + native int) + IL_0023: stloc.1 + IL_0024: leave.s IL_0031 + + .line 67,67 : 13,14 '' + } // end .try + finally + { + IL_0026: nop + .line 68,68 : 17,36 '' + IL_0027: ldloca.s pModuleName + IL_0029: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_002e: nop + .line 69,69 : 13,14 '' + IL_002f: nop + IL_0030: endfinally + } // end handler + IL_0031: nop + .line 70,70 : 9,10 '' + IL_0032: ldloc.1 + IL_0033: ret + } // end of method AckBroadcaster::BroadcastAck + + .method public hidebysig static void BroadcastMessageAckAsync(native int pModuleName, + bool success, + native int contactHandle, + int32 processCookie) cil managed + { + // Code size 66 (0x42) + .maxstack 6 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA ack) + .line 73,73 : 9,10 '' + IL_0000: nop + .line 74,74 : 13,130 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.0 + IL_0003: ldarg.1 + IL_0004: ldarg.2 + IL_0005: ldarg.3 + IL_0006: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_000b: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0010: call valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BuildAckData(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType, + bool, + native int, + native int, + native int) + IL_0015: stloc.0 + .line 75,79 : 13,21 '' + IL_0016: ldsfld class [mscorlib]System.Threading.WaitCallback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_001b: brtrue.s IL_0030 + + IL_001d: ldnull + IL_001e: ldftn void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::'b__0'(object) + IL_0024: newobj instance void [mscorlib]System.Threading.WaitCallback::.ctor(object, + native int) + IL_0029: stsfld class [mscorlib]System.Threading.WaitCallback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_002e: br.s IL_0030 + + IL_0030: ldsfld class [mscorlib]System.Threading.WaitCallback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0035: ldloc.0 + IL_0036: box Virtuoso.Miranda.Plugins.Native.ACKDATA + IL_003b: call bool [mscorlib]System.Threading.ThreadPool::QueueUserWorkItem(class [mscorlib]System.Threading.WaitCallback, + object) + IL_0040: pop + .line 80,80 : 9,10 '' + IL_0041: ret + } // end of method AckBroadcaster::BroadcastMessageAckAsync + + .method public hidebysig static int32 BroadcastAck(native int pModuleName, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType 'type', + bool success, + native int contactHandle, + native int processHandle, + native int lParam) cil managed + { + // Code size 28 (0x1c) + .maxstack 6 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA ack, + [1] int32 CS$1$0000) + .line 83,83 : 9,10 '' + IL_0000: nop + .line 84,84 : 13,106 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldarg.3 + IL_0005: ldarg.s processHandle + IL_0007: ldarg.s lParam + IL_0009: call valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BuildAckData(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType, + bool, + native int, + native int, + native int) + IL_000e: stloc.0 + .line 85,85 : 13,39 '' + IL_000f: ldloca.s ack + IL_0011: conv.u + IL_0012: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck(valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA*) + IL_0017: stloc.1 + IL_0018: br.s IL_001a + + .line 86,86 : 9,10 '' + IL_001a: ldloc.1 + IL_001b: ret + } // end of method AckBroadcaster::BroadcastAck + + .method private hidebysig static void 'b__0'(object ackObject) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 18 (0x12) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA _ack) + .line 76,76 : 13,14 '' + IL_0000: nop + .line 77,77 : 17,51 '' + IL_0001: ldarg.0 + IL_0002: unbox.any Virtuoso.Miranda.Plugins.Native.ACKDATA + IL_0007: stloc.0 + .line 78,78 : 17,37 '' + IL_0008: ldloca.s _ack + IL_000a: conv.u + IL_000b: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck(valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA*) + IL_0010: pop + IL_0011: ret + } // end of method AckBroadcaster::'b__0' + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData + extends [mscorlib]System.Object +{ + .field private class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo + .field private string serviceName + .field private native uint wParam + .field private native int lParam + .field private native int ccsDataPtr + .method assembly hidebysig specialname rtspecialname + instance void .ctor(native int pCcsData) cil managed + { + // Code size 122 (0x7a) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.CCSDATA ccsData, + [1] bool CS$4$0000) + .line 29,29 : 9,58 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocols\\ContactChainData.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 30,30 : 9,10 '' + IL_0007: nop + .line 31,31 : 13,41 '' + IL_0008: ldarg.1 + IL_0009: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000e: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0013: ldc.i4.0 + IL_0014: ceq + IL_0016: stloc.1 + IL_0017: ldloc.1 + IL_0018: brtrue.s IL_0025 + + .line 32,32 : 17,61 '' + IL_001a: ldstr "pCssData" + IL_001f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0024: throw + + .line 34,34 : 13,40 '' + IL_0025: ldarg.0 + IL_0026: ldarg.1 + IL_0027: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::ccsDataPtr + .line 36,36 : 13,63 '' + IL_002c: ldarga.s pCcsData + IL_002e: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0033: ldobj Virtuoso.Miranda.Plugins.Native.CCSDATA + IL_0038: stloc.0 + .line 37,37 : 13,78 '' + IL_0039: ldarg.0 + IL_003a: ldloca.s ccsData + IL_003c: ldfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ContactHandle + IL_0041: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_0046: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::contactInfo + .line 38,38 : 13,42 '' + IL_004b: ldarg.0 + IL_004c: ldloca.s ccsData + IL_004e: ldfld native uint Virtuoso.Miranda.Plugins.Native.CCSDATA::WParam + IL_0053: stfld native uint Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::wParam + .line 39,39 : 13,42 '' + IL_0058: ldarg.0 + IL_0059: ldloca.s ccsData + IL_005b: ldfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::LParam + IL_0060: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::lParam + .line 40,40 : 13,96 '' + IL_0065: ldarg.0 + IL_0066: ldloca.s ccsData + IL_0068: ldfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ServiceNamePtr + IL_006d: ldc.i4.0 + IL_006e: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0073: stfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::serviceName + .line 41,41 : 9,10 '' + IL_0078: nop + IL_0079: ret + } // end of method ContactChainData::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_ContactInfo() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 50,50 : 17,18 '' + IL_0000: nop + .line 50,50 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::contactInfo + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 50,50 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactChainData::get_ContactInfo + + .method public hidebysig specialname instance string + get_ServiceName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 56,56 : 17,18 '' + IL_0000: nop + .line 56,56 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::serviceName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 56,56 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactChainData::get_ServiceName + + .method public hidebysig specialname instance native uint + get_WParam() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native uint CS$1$0000) + .line 63,63 : 17,18 '' + IL_0000: nop + .line 63,63 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld native uint Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::wParam + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 63,63 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactChainData::get_WParam + + .method public hidebysig specialname instance native int + get_LParam() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 69,69 : 17,18 '' + IL_0000: nop + .line 69,69 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::lParam + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 69,69 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactChainData::get_LParam + + .method assembly hidebysig specialname + instance native int get_CcsDataPtr() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 75,75 : 17,18 '' + IL_0000: nop + .line 75,75 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::ccsDataPtr + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 75,75 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactChainData::get_CcsDataPtr + + .method public hidebysig instance string + GetLParamAsString(valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding encoding) cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .locals init ([0] string CS$1$0000) + .line 83,83 : 9,10 '' + IL_0000: nop + .line 84,84 : 13,57 '' + IL_0001: ldarg.0 + IL_0002: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_LParam() + IL_0007: ldarg.1 + IL_0008: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_000d: stloc.0 + IL_000e: br.s IL_0010 + + .line 85,85 : 9,10 '' + IL_0010: ldloc.0 + IL_0011: ret + } // end of method ContactChainData::GetLParamAsString + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + ContactInfo() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_ContactInfo() + } // end of property ContactChainData::ContactInfo + .property instance string ServiceName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_ServiceName() + } // end of property ContactChainData::ServiceName + .property instance native uint WParam() + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .get instance native uint Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_WParam() + } // end of property ContactChainData::WParam + .property instance native int LParam() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_LParam() + } // end of property ContactChainData::LParam + .property instance native int CcsDataPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_CcsDataPtr() + } // end of property ContactChainData::CcsDataPtr +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested private LanguagePackEncoding + extends [mscorlib]System.Enum + { + .field public specialname rtspecialname uint16 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack/LanguagePackEncoding Ansi = uint16(0x0000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack/LanguagePackEncoding Unicode = uint16(0x1000) + } // end of class LanguagePackEncoding + + .field private static literal string MS_LANGPACK_TRANSLATESTRING = "LangPack/TranslateString" + .method public hidebysig static string + TranslateString(string str) cil managed + { + // Code size 152 (0x98) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle stringHandle, + [1] valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding mirandaEncoding, + [2] valuetype Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack/LanguagePackEncoding encoding, + [3] native int translatedPtr, + [4] class [mscorlib]System.Exception e, + [5] string CS$1$0000, + [6] bool CS$4$0001) + .line 47,47 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\LanguagePack.cs' + IL_0000: nop + .line 48,48 : 13,43 '' + IL_0001: ldarg.0 + IL_0002: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: stloc.s CS$4$0001 + IL_000c: ldloc.s CS$4$0001 + IL_000e: brtrue.s IL_0015 + + .line 49,49 : 17,28 '' + IL_0010: ldarg.0 + IL_0011: stloc.s CS$1$0000 + IL_0013: br.s IL_0094 + + .line 51,51 : 13,78 '' + IL_0015: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_001a: stloc.0 + .line 54,54 : 13,14 '' + .try + { + .try + { + IL_001b: nop + .line 55,55 : 17,91 '' + IL_001c: call valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaStringEncoding() + IL_0021: stloc.1 + .line 56,56 : 17,152 '' + IL_0022: ldloc.1 + IL_0023: ldc.i4.1 + IL_0024: beq.s IL_0029 + + IL_0026: ldc.i4.0 + IL_0027: br.s IL_002e + + IL_0029: ldc.i4 0x1000 + IL_002e: nop + IL_002f: stloc.2 + .line 58,58 : 17,80 '' + IL_0030: ldarg.0 + IL_0031: ldloc.1 + IL_0032: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0037: stloc.0 + .line 59,59 : 17,152 '' + IL_0038: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_003d: ldstr "LangPack/TranslateString" + IL_0042: ldloc.2 + IL_0043: conv.u8 + IL_0044: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint64) + IL_0049: ldloca.s stringHandle + IL_004b: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0050: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0055: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_005a: stloc.3 + .line 61,61 : 17,120 '' + IL_005b: ldloc.3 + IL_005c: ldloca.s stringHandle + IL_005e: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0063: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0068: brtrue.s IL_0073 + + IL_006a: ldloc.3 + IL_006b: ldloc.1 + IL_006c: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0071: br.s IL_0074 + + IL_0073: ldarg.0 + IL_0074: nop + IL_0075: stloc.s CS$1$0000 + IL_0077: leave.s IL_0094 + + .line 63,63 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0079: stloc.s e + .line 64,64 : 13,14 '' + IL_007b: nop + .line 65,65 : 17,107 '' + IL_007c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0081: ldloc.s e + IL_0083: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_0088: throw + + .line 68,68 : 13,14 '' + } // end handler + } // end .try + finally + { + IL_0089: nop + .line 69,69 : 17,37 '' + IL_008a: ldloca.s stringHandle + IL_008c: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_0091: nop + .line 70,70 : 13,14 '' + IL_0092: nop + IL_0093: endfinally + } // end handler + IL_0094: nop + .line 71,71 : 9,10 '' + IL_0095: ldloc.s CS$1$0000 + IL_0097: ret + } // end of method LanguagePack::TranslateString + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1<(Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs) TEventArgs> + extends [mscorlib]System.MulticastDelegate +{ + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method MirandaEventHandler`1::.ctor + + .method public hidebysig newslot virtual + instance bool Invoke(object sender, + !TEventArgs e) runtime managed + { + } // end of method MirandaEventHandler`1::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(object sender, + !TEventArgs e, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method MirandaEventHandler`1::BeginInvoke + + .method public hidebysig newslot virtual + instance bool EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method MirandaEventHandler`1::EndInvoke + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment + extends [mscorlib]System.Object +{ + .field private static bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Initialized + .field private static bool hyphenIsLoading + .method assembly hidebysig static void + Initialize() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 44,44 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\RuntimeEnvironment.cs' + IL_0000: nop + .line 45,45 : 13,32 '' + IL_0001: ldc.i4.1 + IL_0002: volatile. + IL_0004: stsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::Initialized + .line 46,46 : 9,10 '' + IL_0009: ret + } // end of method RuntimeEnvironment::Initialize + + .method private hidebysig static void VerifyInitialized() cil managed + { + // Code size 19 (0x13) + .maxstack 1 + .locals init ([0] bool CS$4$0000) + .line 53,53 : 9,10 '' + IL_0000: nop + .line 54,54 : 13,30 '' + IL_0001: volatile. + IL_0003: ldsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::Initialized + IL_0008: stloc.0 + IL_0009: ldloc.0 + IL_000a: brtrue.s IL_0012 + + .line 55,55 : 17,51 '' + IL_000c: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_0011: throw + + .line 56,56 : 9,10 '' + IL_0012: ret + } // end of method RuntimeEnvironment::VerifyInitialized + + .method public hidebysig specialname static + bool get_HyphenIsLoading() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 70,70 : 17,18 '' + IL_0000: nop + .line 70,70 : 19,39 '' + IL_0001: call void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::VerifyInitialized() + IL_0006: nop + .line 70,70 : 40,63 '' + IL_0007: ldsfld bool Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::hyphenIsLoading + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 70,70 : 64,65 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method RuntimeEnvironment::get_HyphenIsLoading + + .method assembly hidebysig specialname static + void set_HyphenIsLoading(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 71,71 : 26,27 '' + IL_0000: nop + .line 71,71 : 28,52 '' + IL_0001: ldarg.0 + IL_0002: stsfld bool Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::hyphenIsLoading + .line 71,71 : 53,54 '' + IL_0007: ret + } // end of method RuntimeEnvironment::set_HyphenIsLoading + + .method public hidebysig specialname static + bool get_IsolatedModePluginsLoaded() cil managed + { + // Code size 22 (0x16) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 80,80 : 17,18 '' + IL_0000: nop + .line 80,80 : 19,39 '' + IL_0001: call void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::VerifyInitialized() + IL_0006: nop + .line 80,80 : 40,82 '' + IL_0007: call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance() + IL_000c: callvirt instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 80,80 : 83,84 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method RuntimeEnvironment::get_IsolatedModePluginsLoaded + + .property bool HyphenIsLoading() + { + .get bool Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::get_HyphenIsLoading() + .set void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::set_HyphenIsLoading(bool) + } // end of property RuntimeEnvironment::HyphenIsLoading + .property bool IsolatedModePluginsLoaded() + { + .get bool Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::get_IsolatedModePluginsLoaded() + } // end of property RuntimeEnvironment::IsolatedModePluginsLoaded +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper + extends [mscorlib]System.Object +{ + .field private string serviceName + .method public hidebysig specialname instance string + get_ServiceName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 31,31 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\CallbackWrapper.cs' + IL_0000: nop + .line 31,31 : 19,38 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::serviceName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 31,31 : 39,40 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method CallbackWrapper::get_ServiceName + + .method family hidebysig specialname instance void + set_ServiceName(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 32,32 : 27,28 '' + IL_0000: nop + .line 32,32 : 29,49 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::serviceName + .line 32,32 : 50,51 '' + IL_0008: ret + } // end of method CallbackWrapper::set_ServiceName + + .method private hidebysig specialname rtspecialname + instance void .ctor(string serviceName) cil managed + { + // Code size 41 (0x29) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 39,39 : 9,52 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 40,40 : 9,10 '' + IL_0007: nop + .line 41,41 : 13,51 '' + IL_0008: ldarg.1 + IL_0009: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000e: ldc.i4.0 + IL_000f: ceq + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_0020 + + .line 42,42 : 17,64 '' + IL_0015: ldstr "serviceName" + IL_001a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001f: throw + + .line 44,44 : 13,44 '' + IL_0020: ldarg.0 + IL_0021: ldarg.1 + IL_0022: stfld string Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::serviceName + .line 45,45 : 9,10 '' + IL_0027: nop + IL_0028: ret + } // end of method CallbackWrapper::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Callback + Create(string serviceName) cil managed + { + // Code size 23 (0x17) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Callback CS$1$0000) + .line 48,48 : 9,10 '' + IL_0000: nop + .line 49,49 : 13,76 '' + IL_0001: ldarg.0 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::.ctor(string) + IL_0007: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::Callback(native uint, + native int) + IL_000d: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0012: stloc.0 + IL_0013: br.s IL_0015 + + .line 50,50 : 9,10 '' + IL_0015: ldloc.0 + IL_0016: ret + } // end of method CallbackWrapper::Create + + .method family hidebysig instance int32 + Callback(native uint wParam, + native int lParam) cil managed + { + // Code size 24 (0x18) + .maxstack 4 + .locals init ([0] int32 CS$1$0000) + .line 57,57 : 9,10 '' + IL_0000: nop + .line 58,58 : 13,84 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldarg.0 + IL_0007: call instance string Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::get_ServiceName() + IL_000c: ldarg.1 + IL_000d: ldarg.2 + IL_000e: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0013: stloc.0 + IL_0014: br.s IL_0016 + + .line 59,59 : 9,10 '' + IL_0016: ldloc.0 + IL_0017: ret + } // end of method CallbackWrapper::Callback + + .property instance string ServiceName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::get_ServiceName() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::set_ServiceName(string) + } // end of property CallbackWrapper::ServiceName +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Skin + extends [mscorlib]System.Object +{ + .class abstract auto ansi sealed nested public beforefieldinit Icons + extends [mscorlib]System.Object + { + .field public static literal int32 Message = int32(0x00000064) + } // end of class Icons + + .field private static literal string MS_SKIN_LOADICON = "Skin/Icons/Load" + .field private static literal string MS_SKIN_LOADPROTOICON = "Skin/Icons/LoadProto" + .method public hidebysig static native int + LoadIcon(int32 id) cil managed + { + // Code size 37 (0x25) + .maxstack 4 + .locals init ([0] native int CS$1$0000) + .line 50,50 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Skin.cs' + IL_0000: nop + .line 51,51 : 13,113 '' + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: ldstr "Skin/Icons/Load" + IL_000b: ldarg.0 + IL_000c: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint32) + IL_0011: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0016: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_001b: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0020: stloc.0 + IL_0021: br.s IL_0023 + + .line 52,52 : 9,10 '' + IL_0023: ldloc.0 + IL_0024: ret + } // end of method Skin::LoadIcon + + .method public hidebysig static native int + LoadProtocolIcon(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode status) cil managed + { + // Code size 13 (0xd) + .maxstack 2 + .locals init ([0] native int CS$1$0000) + .line 55,55 : 9,10 '' + IL_0000: nop + .line 56,56 : 13,59 '' + IL_0001: ldnull + IL_0002: ldarg.0 + IL_0003: call native int Virtuoso.Miranda.Plugins.Infrastructure.Skin::LoadProtocolIcon(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + IL_0008: stloc.0 + IL_0009: br.s IL_000b + + .line 57,57 : 9,10 '' + IL_000b: ldloc.0 + IL_000c: ret + } // end of method Skin::LoadProtocolIcon + + .method public hidebysig static native int + LoadProtocolIcon(class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode status) cil managed + { + // Code size 25 (0x19) + .maxstack 2 + .locals init ([0] native int CS$1$0000) + .line 60,60 : 9,10 '' + IL_0000: nop + .line 61,61 : 13,88 '' + IL_0001: ldarg.0 + IL_0002: brtrue.s IL_0007 + + IL_0004: ldnull + IL_0005: br.s IL_000d + + IL_0007: ldarg.0 + IL_0008: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_000d: nop + IL_000e: ldarg.1 + IL_000f: call native int Virtuoso.Miranda.Plugins.Infrastructure.Skin::LoadProtocolIcon(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + IL_0014: stloc.0 + IL_0015: br.s IL_0017 + + .line 62,62 : 9,10 '' + IL_0017: ldloc.0 + IL_0018: ret + } // end of method Skin::LoadProtocolIcon + + .method public hidebysig static native int + LoadProtocolIcon(string protocolName, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode status) cil managed + { + // Code size 67 (0x43) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle protoNamePtr, + [1] native int CS$1$0000) + .line 65,65 : 9,10 '' + IL_0000: nop + .line 66,66 : 13,78 '' + IL_0001: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_0006: stloc.0 + .line 69,69 : 13,14 '' + .try + { + IL_0007: nop + .line 70,70 : 17,93 '' + IL_0008: ldarg.0 + IL_0009: ldc.i4.0 + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_000f: stloc.0 + .line 71,71 : 17,127 '' + IL_0010: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0015: ldstr "Skin/Icons/LoadProto" + IL_001a: ldloca.s protoNamePtr + IL_001c: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0021: ldarg.1 + IL_0022: conv.i8 + IL_0023: call native int [mscorlib]System.IntPtr::op_Explicit(int64) + IL_0028: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_002d: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0032: stloc.1 + IL_0033: leave.s IL_0040 + + .line 74,74 : 13,14 '' + } // end .try + finally + { + IL_0035: nop + .line 75,75 : 17,37 '' + IL_0036: ldloca.s protoNamePtr + IL_0038: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_003d: nop + .line 76,76 : 13,14 '' + IL_003e: nop + IL_003f: endfinally + } // end handler + IL_0040: nop + .line 77,77 : 9,10 '' + IL_0041: ldloc.1 + IL_0042: ret + } // end of method Skin::LoadProtocolIcon + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Skin + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 + extends class [mscorlib]System.Collections.Generic.Dictionary`2 +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 28,28 : 9,35 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\TypeInstanceCache.cs' + IL_0000: ldarg.0 + IL_0001: call instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor() + IL_0006: nop + .line 28,28 : 36,37 '' + IL_0007: nop + .line 28,28 : 38,39 '' + IL_0008: nop + IL_0009: ret + } // end of method TypeInstanceCache`1::.ctor + + .method public hidebysig instance !T Instantiate(class [mscorlib]System.Type 'type') cil managed + { + // Code size 72 (0x48) + .maxstack 3 + .locals init ([0] !T 'instance', + [1] !T CS$1$0000, + [2] class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 CS$2$0001, + [3] bool CS$4$0002) + .line 35,35 : 9,10 '' + IL_0000: nop + .line 36,36 : 13,24 '' + IL_0001: ldarg.0 + IL_0002: dup + IL_0003: stloc.2 + IL_0004: call void [mscorlib]System.Threading.Monitor::Enter(object) + IL_0009: nop + .line 37,37 : 13,14 '' + .try + { + IL_000a: nop + .line 38,38 : 17,39 '' + IL_000b: ldarg.0 + IL_000c: ldarg.1 + IL_000d: call instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0012: ldc.i4.0 + IL_0013: ceq + IL_0015: stloc.3 + IL_0016: ldloc.3 + IL_0017: brtrue.s IL_0023 + + .line 39,39 : 21,39 '' + IL_0019: ldarg.0 + IL_001a: ldarg.1 + IL_001b: call instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0020: stloc.1 + IL_0021: leave.s IL_0045 + + .line 41,41 : 17,18 '' + IL_0023: nop + .line 42,42 : 21,68 '' + IL_0024: ldarg.1 + IL_0025: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type) + IL_002a: unbox.any !T + IL_002f: stloc.0 + .line 43,43 : 21,43 '' + IL_0030: ldarg.0 + IL_0031: ldarg.1 + IL_0032: ldloc.0 + IL_0033: call instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + IL_0038: nop + .line 45,45 : 21,37 '' + IL_0039: ldloc.0 + IL_003a: stloc.1 + IL_003b: leave.s IL_0045 + + } // end .try + finally + { + IL_003d: ldloc.2 + IL_003e: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0043: nop + IL_0044: endfinally + } // end handler + IL_0045: nop + .line 48,48 : 9,10 '' + IL_0046: ldloc.1 + IL_0047: ret + } // end of method TypeInstanceCache`1::Instantiate + +} // end of class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache + extends class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 +{ + .field private static class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache singleton + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 35,35 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\StringResolverCache.cs' + IL_0000: ldarg.0 + IL_0001: call instance void class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::.ctor() + IL_0006: nop + .line 35,35 : 39,40 '' + IL_0007: nop + .line 35,35 : 41,42 '' + IL_0008: nop + IL_0009: ret + } // end of method StringResolverCache::.ctor + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache + get_Singleton() cil managed + { + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache CS$1$0000) + .line 44,44 : 13,14 '' + IL_0000: nop + .line 45,45 : 17,77 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::singleton + IL_0006: dup + IL_0007: brtrue.s IL_0015 + + IL_0009: pop + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::.ctor() + IL_000f: dup + IL_0010: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::singleton + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 46,46 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method StringResolverCache::get_Singleton + + .property class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache + Singleton() + { + .get class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::get_Singleton() + } // end of property StringResolverCache::Singleton +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.ACKDATA + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field public native int ModuleName + .field public native int ContactHandle + .field public int32 Type + .field public int32 Result + .field public native int ProcessHandle + .field public native int LParam + .method public hidebysig specialname rtspecialname + instance void .ctor(native int moduleName, + int32 'type', + int32 result) cil managed + { + // Code size 77 (0x4d) + .maxstack 2 + .line 37,37 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\ACKDATA.cs' + IL_0000: nop + .line 38,38 : 13,42 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ModuleName + .line 39,39 : 13,30 '' + IL_0008: ldarg.0 + IL_0009: ldarg.2 + IL_000a: stfld int32 Virtuoso.Miranda.Plugins.Native.ACKDATA::Type + .line 40,40 : 13,34 '' + IL_000f: ldarg.0 + IL_0010: ldarg.3 + IL_0011: stfld int32 Virtuoso.Miranda.Plugins.Native.ACKDATA::Result + .line 42,42 : 13,46 '' + IL_0016: ldarg.0 + IL_0017: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_001c: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ContactHandle + .line 43,43 : 13,46 '' + IL_0021: ldarg.0 + IL_0022: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0027: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ProcessHandle + .line 44,44 : 13,39 '' + IL_002c: ldarg.0 + IL_002d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0032: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::LParam + .line 46,46 : 13,57 '' + IL_0037: ldarg.0 + IL_0038: ldtoken Virtuoso.Miranda.Plugins.Native.ACKDATA + IL_003d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0042: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0047: stfld int32 Virtuoso.Miranda.Plugins.Native.ACKDATA::Size + .line 47,47 : 9,10 '' + IL_004c: ret + } // end of method ACKDATA::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Native.ACKDATA + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + extends [mscorlib]System.Object +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field assembly native int ContactHandle + .field assembly native int IconHandle + .field assembly uint32 Flags + .field assembly native int EventHandle + .field assembly native int lParam + .field assembly string ServiceName + .field assembly string Tooltip + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 43,43 : 9,36 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContactListEvent.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 44,44 : 9,10 '' + IL_0007: nop + .line 45,45 : 13,41 '' + IL_0008: ldarg.0 + IL_0009: ldarg.0 + IL_000a: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(object) + IL_000f: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::Size + .line 46,46 : 9,10 '' + IL_0014: nop + IL_0015: ret + } // end of method ContactListEvent::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + FromPointer(native int pClistEvent) cil managed + { + // Code size 56 (0x38) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent CS$1$0000, + [1] bool CS$4$0001) + .line 49,49 : 9,10 '' + IL_0000: nop + .line 50,50 : 13,44 '' + IL_0001: ldarg.0 + IL_0002: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0007: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.1 + IL_0010: ldloc.1 + IL_0011: brtrue.s IL_001e + + .line 51,51 : 17,70 '' + IL_0013: ldstr "pClistEventHandle" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 53,53 : 13,100 '' + IL_001e: ldarg.0 + IL_001f: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + IL_0024: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0029: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_002e: castclass Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + IL_0033: stloc.0 + IL_0034: br.s IL_0036 + + .line 54,54 : 9,10 '' + IL_0036: ldloc.0 + IL_0037: ret + } // end of method ContactListEvent::FromPointer + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_Contact() cil managed + { + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000) + .line 62,62 : 17,18 '' + IL_0000: nop + .line 62,62 : 19,64 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::ContactHandle + IL_0007: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_000c: stloc.0 + IL_000d: br.s IL_000f + + .line 62,62 : 65,66 '' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method ContactListEvent::get_Contact + + .method public hidebysig specialname instance native int + get_LParam() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] native int CS$1$0000) + .line 67,67 : 17,18 '' + IL_0000: nop + .line 67,67 : 19,33 '' + IL_0001: ldarg.0 + IL_0002: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::lParam + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 67,67 : 34,35 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method ContactListEvent::get_LParam + + .method assembly hidebysig specialname + instance void set_LParam(native int 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 68,68 : 26,27 '' + IL_0000: nop + .line 68,68 : 28,43 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::lParam + .line 68,68 : 44,45 '' + IL_0008: ret + } // end of method ContactListEvent::set_LParam + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + Contact() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::get_Contact() + } // end of property ContactListEvent::Contact + .property instance native int LParam() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::get_LParam() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::set_LParam(native int) + } // end of property ContactListEvent::LParam +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs + extends [mscorlib]System.EventArgs +{ + .field private initonly valuetype Virtuoso.Miranda.Plugins.PluginState previousState + .field private initonly valuetype Virtuoso.Miranda.Plugins.PluginState currentState + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.PluginState + get_CurrentState() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.PluginState CS$1$0000) + .line 32,32 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\PluginStateChangeEventArgs.cs' + IL_0000: nop + .line 32,32 : 19,39 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::currentState + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 32,32 : 40,41 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginStateChangeEventArgs::get_CurrentState + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.PluginState + get_PreviousState() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.PluginState CS$1$0000) + .line 37,37 : 17,18 '' + IL_0000: nop + .line 37,37 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::previousState + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 37,37 : 41,42 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PluginStateChangeEventArgs::get_PreviousState + + .method public hidebysig specialname rtspecialname + instance void .ctor(valuetype Virtuoso.Miranda.Plugins.PluginState previous, + valuetype Virtuoso.Miranda.Plugins.PluginState current) cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 44,44 : 9,85 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.EventArgs::.ctor() + IL_0006: nop + .line 45,45 : 9,10 '' + IL_0007: nop + .line 46,46 : 13,43 '' + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: stfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::previousState + .line 47,47 : 13,41 '' + IL_000f: ldarg.0 + IL_0010: ldarg.2 + IL_0011: stfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::currentState + .line 48,48 : 9,10 '' + IL_0016: nop + IL_0017: ret + } // end of method PluginStateChangeEventArgs::.ctor + + .property instance valuetype Virtuoso.Miranda.Plugins.PluginState + CurrentState() + { + .get instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::get_CurrentState() + } // end of property PluginStateChangeEventArgs::CurrentState + .property instance valuetype Virtuoso.Miranda.Plugins.PluginState + PreviousState() + { + .get instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::get_PreviousState() + } // end of property PluginStateChangeEventArgs::PreviousState +} // end of class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs + +.class private auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.PMConfiguration + extends Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration +{ + .custom instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor(string) = ( 01 00 07 30 2E 31 2E 30 2E 30 01 00 54 02 0C 50 // ...0.1.0.0..T..P + 72 6F 66 69 6C 65 42 6F 75 6E 64 01 ) // rofileBound. + .field private static class Virtuoso.Miranda.Plugins.PMConfiguration singleton + .field private class [mscorlib]System.Collections.Generic.List`1 disabledPlugins + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 30,30 : 9,34 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\PMConfiguration.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::.ctor() + IL_0006: nop + .line 30,30 : 35,36 '' + IL_0007: nop + .line 30,30 : 37,38 '' + IL_0008: nop + IL_0009: ret + } // end of method PMConfiguration::.ctor + + .method family hidebysig virtual instance void + InitializeDefaultConfiguration() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 33,33 : 9,10 '' + IL_0000: nop + .line 34,34 : 13,51 '' + IL_0001: ldarg.0 + IL_0002: ldc.i4.1 + IL_0003: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0008: stfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::disabledPlugins + .line 35,35 : 13,51 '' + IL_000d: ldarg.0 + IL_000e: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::InitializeDefaultConfiguration() + IL_0013: nop + .line 36,36 : 9,10 '' + IL_0014: ret + } // end of method PMConfiguration::InitializeDefaultConfiguration + + .method public hidebysig static void Initialize() cil managed + { + // Code size 30 (0x1e) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 39,39 : 9,10 '' + IL_0000: nop + .line 40,40 : 13,35 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::singleton + IL_0006: ldnull + IL_0007: ceq + IL_0009: stloc.0 + IL_000a: ldloc.0 + IL_000b: brtrue.s IL_0013 + + .line 41,41 : 17,55 '' + IL_000d: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0012: throw + + .line 43,43 : 13,49 '' + IL_0013: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Load() + IL_0018: stsfld class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::singleton + .line 44,44 : 9,10 '' + IL_001d: ret + } // end of method PMConfiguration::Initialize + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.PMConfiguration + get_Singleton() cil managed + { + // Code size 32 (0x20) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PMConfiguration CS$1$0000, + [1] bool CS$4$0001) + .line 54,54 : 13,14 '' + IL_0000: nop + .line 55,55 : 17,39 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::singleton + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: stloc.1 + IL_000d: ldloc.1 + IL_000e: brtrue.s IL_0016 + + .line 56,56 : 21,59 '' + IL_0010: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0015: throw + + .line 58,58 : 17,34 '' + IL_0016: ldsfld class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::singleton + IL_001b: stloc.0 + IL_001c: br.s IL_001e + + .line 59,59 : 13,14 '' + IL_001e: ldloc.0 + IL_001f: ret + } // end of method PMConfiguration::get_Singleton + + .method public hidebysig specialname instance class [mscorlib]System.Collections.Generic.List`1 + get_DisabledPlugins() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 CS$1$0000) + .line 65,65 : 17,18 '' + IL_0000: nop + .line 65,65 : 19,42 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::disabledPlugins + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 65,65 : 43,44 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method PMConfiguration::get_DisabledPlugins + + .method public hidebysig specialname instance void + set_DisabledPlugins(class [mscorlib]System.Collections.Generic.List`1 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 66,66 : 17,18 '' + IL_0000: nop + .line 66,66 : 19,43 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::disabledPlugins + .line 66,66 : 44,45 '' + IL_0008: ret + } // end of method PMConfiguration::set_DisabledPlugins + + .method public hidebysig static void Reset() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 74,74 : 9,10 '' + IL_0000: nop + .line 75,75 : 13,88 '' + IL_0001: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration() + IL_0006: stsfld class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::singleton + .line 76,76 : 9,10 '' + IL_000b: ret + } // end of method PMConfiguration::Reset + + .method public hidebysig static void Reload() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 79,79 : 9,10 '' + IL_0000: nop + .line 80,80 : 13,26 '' + IL_0001: call void Virtuoso.Miranda.Plugins.PMConfiguration::Initialize() + IL_0006: nop + .line 81,81 : 9,10 '' + IL_0007: ret + } // end of method PMConfiguration::Reload + + .property class Virtuoso.Miranda.Plugins.PMConfiguration + Singleton() + { + .get class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + } // end of property PMConfiguration::Singleton + .property instance class [mscorlib]System.Collections.Generic.List`1 + DisabledPlugins() + { + .get instance class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::get_DisabledPlugins() + .set instance void Virtuoso.Miranda.Plugins.PMConfiguration::set_DisabledPlugins(class [mscorlib]System.Collections.Generic.List`1) + } // end of property PMConfiguration::DisabledPlugins +} // end of class Virtuoso.Miranda.Plugins.PMConfiguration + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.PMConfigurator + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.IInternalConfigurator, + Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ + .field private static class Virtuoso.Miranda.Plugins.IConfigurablePlugin singleton + .field private class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] configuration + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 32,32 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\PMConfigurator.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 32,32 : 34,35 '' + IL_0007: nop + .line 32,32 : 36,37 '' + IL_0008: nop + IL_0009: ret + } // end of method PMConfigurator::.ctor + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.IConfigurablePlugin + get_Singleton() cil managed + { + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.IConfigurablePlugin CS$1$0000) + .line 42,42 : 13,14 '' + IL_0000: nop + .line 43,43 : 17,72 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::singleton + IL_0006: dup + IL_0007: brtrue.s IL_0015 + + IL_0009: pop + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::.ctor() + IL_000f: dup + IL_0010: stsfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::singleton + IL_0015: stloc.0 + IL_0016: br.s IL_0018 + + .line 44,44 : 13,14 '' + IL_0018: ldloc.0 + IL_0019: ret + } // end of method PMConfigurator::get_Singleton + + .method public hidebysig newslot specialname virtual final + instance string get_Name() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 53,53 : 17,18 '' + IL_0000: nop + .line 53,53 : 19,36 '' + IL_0001: ldstr "Plugins" + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 53,53 : 37,38 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method PMConfigurator::get_Name + + .method public hidebysig newslot specialname virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + get_Configuration() cil managed + { + // Code size 41 (0x29) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$1$0000, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$0$0001) + .line 59,59 : 17,18 '' + IL_0000: nop + .line 59,59 : 19,117 '' + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::configuration + IL_0007: dup + IL_0008: brtrue.s IL_0024 + + IL_000a: pop + IL_000b: ldarg.0 + IL_000c: ldc.i4.1 + IL_000d: newarr Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + IL_0012: stloc.1 + IL_0013: ldloc.1 + IL_0014: ldc.i4.0 + IL_0015: call class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + IL_001a: stelem.ref + IL_001b: ldloc.1 + IL_001c: dup + IL_001d: stloc.1 + IL_001e: stfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::configuration + IL_0023: ldloc.1 + IL_0024: stloc.0 + IL_0025: br.s IL_0027 + + .line 59,59 : 118,119 '' + IL_0027: ldloc.0 + IL_0028: ret + } // end of method PMConfigurator::get_Configuration + + .method public hidebysig newslot virtual final + instance void PopulateConfiguration(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories) cil managed + { + // Code size 77 (0x4d) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.Category category, + [1] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item) + .line 63,63 : 9,10 '' + IL_0000: nop + .line 64,64 : 13,124 '' + IL_0001: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management() + IL_0006: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Description() + IL_000b: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Category::.ctor(string, + string) + IL_0010: stloc.0 + .line 65,65 : 13,38 '' + IL_0011: ldarg.1 + IL_0012: ldloc.0 + IL_0013: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0018: nop + .line 67,67 : 13,177 '' + IL_0019: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins() + IL_001e: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins_Description() + IL_0023: ldtoken Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent + IL_0028: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_002d: newobj instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor(string, + string, + class [mscorlib]System.Type) + IL_0032: stloc.1 + .line 68,68 : 13,65 '' + IL_0033: ldloc.1 + IL_0034: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Management() + IL_0039: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_Image(class [System.Drawing]System.Drawing.Image) + IL_003e: nop + .line 69,69 : 13,38 '' + IL_003f: ldloc.0 + IL_0040: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::get_Items() + IL_0045: ldloc.1 + IL_0046: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_004b: nop + .line 70,70 : 9,10 '' + IL_004c: ret + } // end of method PMConfigurator::PopulateConfiguration + + .method public hidebysig newslot virtual final + instance void ResetConfiguration() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 73,73 : 9,10 '' + IL_0000: nop + .line 74,74 : 13,37 '' + IL_0001: call void Virtuoso.Miranda.Plugins.PMConfiguration::Reset() + IL_0006: nop + .line 75,75 : 9,10 '' + IL_0007: ret + } // end of method PMConfigurator::ResetConfiguration + + .method public hidebysig newslot virtual final + instance void ReloadConfiguration() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 78,78 : 9,10 '' + IL_0000: nop + .line 79,79 : 13,38 '' + IL_0001: call void Virtuoso.Miranda.Plugins.PMConfiguration::Reload() + IL_0006: nop + .line 80,80 : 9,10 '' + IL_0007: ret + } // end of method PMConfigurator::ReloadConfiguration + + .property class Virtuoso.Miranda.Plugins.IConfigurablePlugin + Singleton() + { + .get class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Singleton() + } // end of property PMConfigurator::Singleton + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Name() + } // end of property PMConfigurator::Name + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + Configuration() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Configuration() + } // end of property PMConfigurator::Configuration +} // end of class Virtuoso.Miranda.Plugins.Configuration.PMConfigurator + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Properties.Resources + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.CodeDom.Compiler.GeneratedCodeAttribute::.ctor(string, + string) = ( 01 00 33 53 79 73 74 65 6D 2E 52 65 73 6F 75 72 // ..3System.Resour + 63 65 73 2E 54 6F 6F 6C 73 2E 53 74 72 6F 6E 67 // ces.Tools.Strong + 6C 79 54 79 70 65 64 52 65 73 6F 75 72 63 65 42 // lyTypedResourceB + 75 69 6C 64 65 72 07 34 2E 30 2E 30 2E 30 00 00 ) // uilder.4.0.0.0.. + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private static class [mscorlib]System.Resources.ResourceManager resourceMan + .field private static class [mscorlib]System.Globalization.CultureInfo resourceCulture + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 31,32 : 9,29 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Properties\\Resources.Designer.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 32,32 : 30,31 '' + IL_0007: nop + .line 33,33 : 9,10 '' + IL_0008: nop + IL_0009: ret + } // end of method Resources::.ctor + + .method assembly hidebysig specialname static + class [mscorlib]System.Resources.ResourceManager + get_ResourceManager() cil managed + { + // Code size 63 (0x3f) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Resources.ResourceManager temp, + [1] class [mscorlib]System.Resources.ResourceManager CS$1$0000, + [2] bool CS$4$0001) + .line 40,40 : 17,18 '' + IL_0000: nop + .line 41,41 : 17,63 '' + IL_0001: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::resourceMan + IL_0006: ldnull + IL_0007: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.2 + IL_0010: ldloc.2 + IL_0011: brtrue.s IL_0035 + + .line 41,41 : 64,65 '' + IL_0013: nop + .line 42,42 : 21,191 '' + IL_0014: ldstr "Virtuoso.Miranda.Plugins.Properties.Resources" + IL_0019: ldtoken Virtuoso.Miranda.Plugins.Properties.Resources + IL_001e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0023: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0028: newobj instance void [mscorlib]System.Resources.ResourceManager::.ctor(string, + class [mscorlib]System.Reflection.Assembly) + IL_002d: stloc.0 + .line 43,43 : 21,40 '' + IL_002e: ldloc.0 + IL_002f: stsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::resourceMan + .line 44,44 : 17,18 '' + IL_0034: nop + .line 45,45 : 17,36 '' + IL_0035: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::resourceMan + IL_003a: stloc.1 + IL_003b: br.s IL_003d + + .line 46,46 : 13,14 '' + IL_003d: ldloc.1 + IL_003e: ret + } // end of method Resources::get_ResourceManager + + .method assembly hidebysig specialname static + class [mscorlib]System.Globalization.CultureInfo + get_Culture() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Globalization.CultureInfo CS$1$0000) + .line 55,55 : 17,18 '' + IL_0000: nop + .line 56,56 : 17,40 '' + IL_0001: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 57,57 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method Resources::get_Culture + + .method assembly hidebysig specialname static + void set_Culture(class [mscorlib]System.Globalization.CultureInfo 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 58,58 : 17,18 '' + IL_0000: nop + .line 59,59 : 17,41 '' + IL_0001: ldarg.0 + IL_0002: stsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + .line 60,60 : 13,14 '' + IL_0007: ret + } // end of method Resources::set_Culture + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Icon_232_32x32() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Bitmap CS$1$0000) + .line 67,67 : 17,18 '' + IL_0000: nop + .line 68,68 : 17,91 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager() + IL_0006: ldstr "Icon 232_32x32" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 69,69 : 17,55 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Bitmap + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 70,70 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method Resources::get_Icon_232_32x32 + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Icon_256_32x32() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Bitmap CS$1$0000) + .line 77,77 : 17,18 '' + IL_0000: nop + .line 78,78 : 17,91 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager() + IL_0006: ldstr "Icon 256_32x32" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 79,79 : 17,55 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Bitmap + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 80,80 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method Resources::get_Icon_256_32x32 + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_RibbonClick() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Bitmap CS$1$0000) + .line 87,87 : 17,18 '' + IL_0000: nop + .line 88,88 : 17,88 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager() + IL_0006: ldstr "RibbonClick" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 89,89 : 17,55 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Bitmap + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 90,90 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method Resources::get_RibbonClick + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_RibbonHover() cil managed + { + // Code size 33 (0x21) + .maxstack 3 + .locals init ([0] object obj, + [1] class [System.Drawing]System.Drawing.Bitmap CS$1$0000) + .line 97,97 : 17,18 '' + IL_0000: nop + .line 98,98 : 17,88 '' + IL_0001: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager() + IL_0006: ldstr "RibbonHover" + IL_000b: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + IL_0010: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0015: stloc.0 + .line 99,99 : 17,55 '' + IL_0016: ldloc.0 + IL_0017: castclass [System.Drawing]System.Drawing.Bitmap + IL_001c: stloc.1 + IL_001d: br.s IL_001f + + .line 100,100 : 13,14 '' + IL_001f: ldloc.1 + IL_0020: ret + } // end of method Resources::get_RibbonHover + + .property class [mscorlib]System.Resources.ResourceManager + ResourceManager() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .get class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager() + } // end of property Resources::ResourceManager + .property class [mscorlib]System.Globalization.CultureInfo + Culture() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .get class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::get_Culture() + .set void Virtuoso.Miranda.Plugins.Properties.Resources::set_Culture(class [mscorlib]System.Globalization.CultureInfo) + } // end of property Resources::Culture + .property class [System.Drawing]System.Drawing.Bitmap + Icon_232_32x32() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_232_32x32() + } // end of property Resources::Icon_232_32x32 + .property class [System.Drawing]System.Drawing.Bitmap + Icon_256_32x32() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_256_32x32() + } // end of property Resources::Icon_256_32x32 + .property class [System.Drawing]System.Drawing.Bitmap + RibbonClick() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_RibbonClick() + } // end of property Resources::RibbonClick + .property class [System.Drawing]System.Drawing.Bitmap + RibbonHover() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_RibbonHover() + } // end of property Resources::RibbonHover +} // end of class Virtuoso.Miranda.Plugins.Properties.Resources + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Properties.Settings + extends [System]System.Configuration.ApplicationSettingsBase +{ + .custom instance void [System]System.CodeDom.Compiler.GeneratedCodeAttribute::.ctor(string, + string) = ( 01 00 4B 4D 69 63 72 6F 73 6F 66 74 2E 56 69 73 // ..KMicrosoft.Vis + 75 61 6C 53 74 75 64 69 6F 2E 45 64 69 74 6F 72 // ualStudio.Editor + 73 2E 53 65 74 74 69 6E 67 73 44 65 73 69 67 6E // s.SettingsDesign + 65 72 2E 53 65 74 74 69 6E 67 73 53 69 6E 67 6C // er.SettingsSingl + 65 46 69 6C 65 47 65 6E 65 72 61 74 6F 72 08 31 // eFileGenerator.1 + 31 2E 30 2E 30 2E 30 00 00 ) // 1.0.0.0.. + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private static class Virtuoso.Miranda.Plugins.Properties.Settings defaultInstance + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Properties.Settings + get_Default() cil managed + { + // Code size 11 (0xb) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Properties.Settings CS$1$0000) + .line 21,21 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Properties\\Settings.Designer.cs' + IL_0000: nop + .line 22,22 : 17,40 '' + IL_0001: ldsfld class Virtuoso.Miranda.Plugins.Properties.Settings Virtuoso.Miranda.Plugins.Properties.Settings::defaultInstance + IL_0006: stloc.0 + IL_0007: br.s IL_0009 + + .line 23,23 : 13,14 '' + IL_0009: ldloc.0 + IL_000a: ret + } // end of method Settings::get_Default + + .method public hidebysig specialname instance bool + get_ConfigurationDialog_HideExpertOptions_Checked() cil managed + { + // Code size 22 (0x16) + .maxstack 2 + .locals init ([0] bool CS$1$0000) + .line 30,30 : 17,18 '' + IL_0000: nop + .line 31,31 : 17,88 '' + IL_0001: ldarg.0 + IL_0002: ldstr "ConfigurationDialog_HideExpertOptions_Checked" + IL_0007: callvirt instance object [System]System.Configuration.SettingsBase::get_Item(string) + IL_000c: unbox.any [mscorlib]System.Boolean + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 32,32 : 13,14 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method Settings::get_ConfigurationDialog_HideExpertOptions_Checked + + .method public hidebysig specialname instance void + set_ConfigurationDialog_HideExpertOptions_Checked(bool 'value') cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 33,33 : 17,18 '' + IL_0000: nop + .line 34,34 : 17,79 '' + IL_0001: ldarg.0 + IL_0002: ldstr "ConfigurationDialog_HideExpertOptions_Checked" + IL_0007: ldarg.1 + IL_0008: box [mscorlib]System.Boolean + IL_000d: callvirt instance void [System]System.Configuration.SettingsBase::set_Item(string, + object) + IL_0012: nop + .line 35,35 : 13,14 '' + IL_0013: ret + } // end of method Settings::set_ConfigurationDialog_HideExpertOptions_Checked + + .method public hidebysig specialname instance valuetype [System.Windows.Forms]System.Windows.Forms.View + get_ConfigurationPanel_CategoryItems_View() cil managed + { + // Code size 22 (0x16) + .maxstack 2 + .locals init ([0] valuetype [System.Windows.Forms]System.Windows.Forms.View CS$1$0000) + .line 42,42 : 17,18 '' + IL_0000: nop + .line 43,43 : 17,109 '' + IL_0001: ldarg.0 + IL_0002: ldstr "ConfigurationPanel_CategoryItems_View" + IL_0007: callvirt instance object [System]System.Configuration.SettingsBase::get_Item(string) + IL_000c: unbox.any [System.Windows.Forms]System.Windows.Forms.View + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 44,44 : 13,14 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method Settings::get_ConfigurationPanel_CategoryItems_View + + .method public hidebysig specialname instance void + set_ConfigurationPanel_CategoryItems_View(valuetype [System.Windows.Forms]System.Windows.Forms.View 'value') cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 45,45 : 17,18 '' + IL_0000: nop + .line 46,46 : 17,71 '' + IL_0001: ldarg.0 + IL_0002: ldstr "ConfigurationPanel_CategoryItems_View" + IL_0007: ldarg.1 + IL_0008: box [System.Windows.Forms]System.Windows.Forms.View + IL_000d: callvirt instance void [System]System.Configuration.SettingsBase::set_Item(string, + object) + IL_0012: nop + .line 47,47 : 13,14 '' + IL_0013: ret + } // end of method Settings::set_ConfigurationPanel_CategoryItems_View + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Size + get_ConfigurationDialog_ClientSize() cil managed + { + // Code size 22 (0x16) + .maxstack 2 + .locals init ([0] valuetype [System.Drawing]System.Drawing.Size CS$1$0000) + .line 54,54 : 17,18 '' + IL_0000: nop + .line 55,55 : 17,96 '' + IL_0001: ldarg.0 + IL_0002: ldstr "ConfigurationDialog_ClientSize" + IL_0007: callvirt instance object [System]System.Configuration.SettingsBase::get_Item(string) + IL_000c: unbox.any [System.Drawing]System.Drawing.Size + IL_0011: stloc.0 + IL_0012: br.s IL_0014 + + .line 56,56 : 13,14 '' + IL_0014: ldloc.0 + IL_0015: ret + } // end of method Settings::get_ConfigurationDialog_ClientSize + + .method public hidebysig specialname instance void + set_ConfigurationDialog_ClientSize(valuetype [System.Drawing]System.Drawing.Size 'value') cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 57,57 : 17,18 '' + IL_0000: nop + .line 58,58 : 17,64 '' + IL_0001: ldarg.0 + IL_0002: ldstr "ConfigurationDialog_ClientSize" + IL_0007: ldarg.1 + IL_0008: box [System.Drawing]System.Drawing.Size + IL_000d: callvirt instance void [System]System.Configuration.SettingsBase::set_Item(string, + object) + IL_0012: nop + .line 59,59 : 13,14 '' + IL_0013: ret + } // end of method Settings::set_ConfigurationDialog_ClientSize + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [System]System.Configuration.ApplicationSettingsBase::.ctor() + IL_0006: ret + } // end of method Settings::.ctor + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 18,18 : 9,147 '' + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.Properties.Settings::.ctor() + IL_0005: call class [System]System.Configuration.SettingsBase [System]System.Configuration.SettingsBase::Synchronized(class [System]System.Configuration.SettingsBase) + IL_000a: castclass Virtuoso.Miranda.Plugins.Properties.Settings + IL_000f: stsfld class Virtuoso.Miranda.Plugins.Properties.Settings Virtuoso.Miranda.Plugins.Properties.Settings::defaultInstance + IL_0014: ret + } // end of method Settings::.cctor + + .property class Virtuoso.Miranda.Plugins.Properties.Settings + Default() + { + .get class Virtuoso.Miranda.Plugins.Properties.Settings Virtuoso.Miranda.Plugins.Properties.Settings::get_Default() + } // end of property Settings::Default + .property instance bool ConfigurationDialog_HideExpertOptions_Checked() + { + .custom instance void [System]System.Configuration.UserScopedSettingAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.Configuration.DefaultSettingValueAttribute::.ctor(string) = ( 01 00 05 46 61 6C 73 65 00 00 ) // ...False.. + .set instance void Virtuoso.Miranda.Plugins.Properties.Settings::set_ConfigurationDialog_HideExpertOptions_Checked(bool) + .get instance bool Virtuoso.Miranda.Plugins.Properties.Settings::get_ConfigurationDialog_HideExpertOptions_Checked() + } // end of property Settings::ConfigurationDialog_HideExpertOptions_Checked + .property instance valuetype [System.Windows.Forms]System.Windows.Forms.View + ConfigurationPanel_CategoryItems_View() + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.Configuration.UserScopedSettingAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.Configuration.DefaultSettingValueAttribute::.ctor(string) = ( 01 00 04 54 69 6C 65 00 00 ) // ...Tile.. + .get instance valuetype [System.Windows.Forms]System.Windows.Forms.View Virtuoso.Miranda.Plugins.Properties.Settings::get_ConfigurationPanel_CategoryItems_View() + .set instance void Virtuoso.Miranda.Plugins.Properties.Settings::set_ConfigurationPanel_CategoryItems_View(valuetype [System.Windows.Forms]System.Windows.Forms.View) + } // end of property Settings::ConfigurationPanel_CategoryItems_View + .property instance valuetype [System.Drawing]System.Drawing.Size + ConfigurationDialog_ClientSize() + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.Configuration.UserScopedSettingAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.Configuration.DefaultSettingValueAttribute::.ctor(string) = ( 01 00 08 37 39 32 2C 20 35 36 32 00 00 ) // ...792, 562.. + .get instance valuetype [System.Drawing]System.Drawing.Size Virtuoso.Miranda.Plugins.Properties.Settings::get_ConfigurationDialog_ClientSize() + .set instance void Virtuoso.Miranda.Plugins.Properties.Settings::set_ConfigurationDialog_ClientSize(valuetype [System.Drawing]System.Drawing.Size) + } // end of property Settings::ConfigurationDialog_ClientSize +} // end of class Virtuoso.Miranda.Plugins.Properties.Settings + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.RuntimeNotSupportedException + extends [mscorlib]System.NotSupportedException +{ + .field private class [mscorlib]System.Version requiredVersion + .field private class [mscorlib]System.Version availableVersion + .method public hidebysig specialname instance class [mscorlib]System.Version + get_AvailableVersion() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 35,35 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\RuntimeNotSupportedException.cs' + IL_0000: nop + .line 35,35 : 19,43 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::availableVersion + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 35,35 : 44,45 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method RuntimeNotSupportedException::get_AvailableVersion + + .method public hidebysig specialname instance class [mscorlib]System.Version + get_RequiredVersion() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 40,40 : 17,18 '' + IL_0000: nop + .line 40,40 : 19,42 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::requiredVersion + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 40,40 : 43,44 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method RuntimeNotSupportedException::get_RequiredVersion + + .method public hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Type pluginType, + class [mscorlib]System.Version requiredVersion) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 47,48 : 9,54 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldc.i4.1 + IL_0004: call instance void Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor(class [mscorlib]System.Type, + class [mscorlib]System.Version, + bool) + IL_0009: nop + .line 48,48 : 55,56 '' + IL_000a: nop + .line 48,48 : 57,58 '' + IL_000b: nop + IL_000c: ret + } // end of method RuntimeNotSupportedException::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Type pluginType, + class [mscorlib]System.Version requiredVersion, + bool isHyphenVersion) cil managed + { + // Code size 124 (0x7c) + .maxstack 6 + .locals init ([0] bool CS$4$0000) + .line 50,53 : 9,142 '' + IL_0000: ldarg.0 + IL_0001: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable() + IL_0006: ldarg.1 + IL_0007: brfalse.s IL_0011 + + IL_0009: ldarg.1 + IL_000a: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_000f: br.s IL_0016 + + IL_0011: ldsfld string [mscorlib]System.String::Empty + IL_0016: nop + IL_0017: ldarg.2 + IL_0018: ldnull + IL_0019: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_001e: brtrue.s IL_003d + + IL_0020: ldstr "{0} {1}" + IL_0025: ldarg.3 + IL_0026: brfalse.s IL_002f + + IL_0028: ldstr "Hyphen" + IL_002d: br.s IL_0034 + + IL_002f: ldstr "Miranda" + IL_0034: nop + IL_0035: ldarg.2 + IL_0036: call string [mscorlib]System.String::Format(string, + object, + object) + IL_003b: br.s IL_0042 + + IL_003d: ldsfld string [mscorlib]System.String::Empty + IL_0042: nop + IL_0043: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0048: call instance void [mscorlib]System.NotSupportedException::.ctor(string) + IL_004d: nop + .line 54,54 : 9,10 '' + IL_004e: nop + .line 55,55 : 13,41 '' + IL_004f: ldarg.2 + IL_0050: ldnull + IL_0051: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_0056: ldc.i4.0 + IL_0057: ceq + IL_0059: stloc.0 + IL_005a: ldloc.0 + IL_005b: brtrue.s IL_0068 + + .line 56,56 : 17,68 '' + IL_005d: ldstr "requiredVersion" + IL_0062: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0067: throw + + .line 58,58 : 13,52 '' + IL_0068: ldarg.0 + IL_0069: ldarg.2 + IL_006a: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::requiredVersion + .line 59,59 : 13,58 '' + IL_006f: ldarg.0 + IL_0070: call class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + IL_0075: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::availableVersion + .line 60,60 : 9,10 '' + IL_007a: nop + IL_007b: ret + } // end of method RuntimeNotSupportedException::.ctor + + .method private hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 62,62 : 9,117 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.NotSupportedException::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext) + IL_0008: nop + .line 62,62 : 118,119 '' + IL_0009: nop + .line 62,62 : 120,121 '' + IL_000a: nop + IL_000b: ret + } // end of method RuntimeNotSupportedException::.ctor + + .property instance class [mscorlib]System.Version + AvailableVersion() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::get_AvailableVersion() + } // end of property RuntimeNotSupportedException::AvailableVersion + .property instance class [mscorlib]System.Version + RequiredVersion() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::get_RequiredVersion() + } // end of property RuntimeNotSupportedException::RequiredVersion +} // end of class Virtuoso.Miranda.Plugins.RuntimeNotSupportedException + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public int32 Size + .field public string ComponentName + .field public string VersionUrl + .field public string VersionPrefix + .field public int32 VersionPrefixLength + .field public string UpdateUrl + .field public string BetaVersionUrl + .field public string BetaVersionPrefix + .field public int32 BetaVersionPrefixLength + .field public string BetaUpdateUrl + .field public string Version + .field public int32 VersionLength + .field public string BetaChangelogUrl +} // end of class Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update + extends [mscorlib]System.Object +{ + .field private initonly string pluginName + .field private initonly class [mscorlib]System.Version currentVersion + .field private initonly class [System]System.Uri updateUrl + .field private initonly class [System]System.Uri versionUrl + .field private class [System]System.Uri betaVersionUrl + .field private class [System]System.Uri betaUpdateUrl + .field private class [System]System.Uri betaChangelogUrl + .field private initonly string versionTextPrefix + .field private string betaVersionTextPrefix + .method public hidebysig specialname instance string + get_PluginName() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 34,34 : 17,18 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\ThirdParty\\Updater\\Update.cs' + IL_0000: nop + .line 34,34 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::pluginName + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 34,34 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Update::get_PluginName + + .method public hidebysig specialname instance class [mscorlib]System.Version + get_CurrentVersion() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [mscorlib]System.Version CS$1$0000) + .line 41,41 : 17,18 '' + IL_0000: nop + .line 41,41 : 19,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::currentVersion + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 41,41 : 42,43 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Update::get_CurrentVersion + + .method public hidebysig specialname instance class [System]System.Uri + get_BetaChangelogUrl() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [System]System.Uri CS$1$0000) + .line 49,49 : 17,18 '' + IL_0000: nop + .line 49,49 : 19,43 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaChangelogUrl + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 49,49 : 44,45 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Update::get_BetaChangelogUrl + + .method public hidebysig specialname instance void + set_BetaChangelogUrl(class [System]System.Uri 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 50,50 : 17,18 '' + IL_0000: nop + .line 50,50 : 19,44 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaChangelogUrl + .line 50,50 : 45,46 '' + IL_0008: ret + } // end of method Update::set_BetaChangelogUrl + + .method public hidebysig specialname instance class [System]System.Uri + get_BetaUpdateUrl() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [System]System.Uri CS$1$0000) + .line 55,55 : 17,18 '' + IL_0000: nop + .line 55,55 : 19,40 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaUpdateUrl + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 55,55 : 41,42 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Update::get_BetaUpdateUrl + + .method public hidebysig specialname instance void + set_BetaUpdateUrl(class [System]System.Uri 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 56,56 : 17,18 '' + IL_0000: nop + .line 56,56 : 19,41 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaUpdateUrl + .line 56,56 : 42,43 '' + IL_0008: ret + } // end of method Update::set_BetaUpdateUrl + + .method public hidebysig specialname instance class [System]System.Uri + get_BetaVersionUrl() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [System]System.Uri CS$1$0000) + .line 61,61 : 17,18 '' + IL_0000: nop + .line 61,61 : 19,41 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionUrl + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 61,61 : 42,43 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Update::get_BetaVersionUrl + + .method public hidebysig specialname instance void + set_BetaVersionUrl(class [System]System.Uri 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 62,62 : 17,18 '' + IL_0000: nop + .line 62,62 : 19,42 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionUrl + .line 62,62 : 43,44 '' + IL_0008: ret + } // end of method Update::set_BetaVersionUrl + + .method public hidebysig specialname instance class [System]System.Uri + get_VersionUrl() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [System]System.Uri CS$1$0000) + .line 67,67 : 17,18 '' + IL_0000: nop + .line 67,67 : 19,37 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionUrl + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 67,67 : 38,39 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Update::get_VersionUrl + + .method public hidebysig specialname instance class [System]System.Uri + get_UpdateUrl() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] class [System]System.Uri CS$1$0000) + .line 72,72 : 17,18 '' + IL_0000: nop + .line 72,72 : 19,36 '' + IL_0001: ldarg.0 + IL_0002: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::updateUrl + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 72,72 : 37,38 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Update::get_UpdateUrl + + .method public hidebysig specialname instance string + get_BetaVersionTextPrefix() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 80,80 : 17,18 '' + IL_0000: nop + .line 80,80 : 19,48 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionTextPrefix + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 80,80 : 49,50 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Update::get_BetaVersionTextPrefix + + .method public hidebysig specialname instance void + set_BetaVersionTextPrefix(string 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 81,81 : 17,18 '' + IL_0000: nop + .line 81,81 : 19,49 '' + IL_0001: ldarg.0 + IL_0002: ldarg.1 + IL_0003: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionTextPrefix + .line 81,81 : 50,51 '' + IL_0008: ret + } // end of method Update::set_BetaVersionTextPrefix + + .method public hidebysig specialname instance string + get_VersionTextPrefix() cil managed + { + // Code size 12 (0xc) + .maxstack 1 + .locals init ([0] string CS$1$0000) + .line 86,86 : 17,18 '' + IL_0000: nop + .line 86,86 : 19,44 '' + IL_0001: ldarg.0 + IL_0002: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionTextPrefix + IL_0007: stloc.0 + IL_0008: br.s IL_000a + + .line 86,86 : 45,46 '' + IL_000a: ldloc.0 + IL_000b: ret + } // end of method Update::get_VersionTextPrefix + + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin, + class [System]System.Uri updateUrl, + class [System]System.Uri versionUrl, + string versionTextPrefix) cil managed + { + // Code size 151 (0x97) + .maxstack 2 + .locals init ([0] bool CS$4$0000) + .line 93,93 : 9,101 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: nop + .line 94,94 : 9,10 '' + IL_0007: nop + .line 95,95 : 13,32 '' + IL_0008: ldarg.1 + IL_0009: ldnull + IL_000a: ceq + IL_000c: ldc.i4.0 + IL_000d: ceq + IL_000f: stloc.0 + IL_0010: ldloc.0 + IL_0011: brtrue.s IL_001e + + .line 95,95 : 33,75 '' + IL_0013: ldstr "plugin" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 96,96 : 13,35 '' + IL_001e: ldarg.2 + IL_001f: ldnull + IL_0020: call bool [System]System.Uri::op_Equality(class [System]System.Uri, + class [System]System.Uri) + IL_0025: ldc.i4.0 + IL_0026: ceq + IL_0028: stloc.0 + IL_0029: ldloc.0 + IL_002a: brtrue.s IL_0037 + + .line 96,96 : 36,81 '' + IL_002c: ldstr "updateUrl" + IL_0031: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0036: throw + + .line 97,97 : 13,36 '' + IL_0037: ldarg.3 + IL_0038: ldnull + IL_0039: call bool [System]System.Uri::op_Equality(class [System]System.Uri, + class [System]System.Uri) + IL_003e: ldc.i4.0 + IL_003f: ceq + IL_0041: stloc.0 + IL_0042: ldloc.0 + IL_0043: brtrue.s IL_0050 + + .line 97,97 : 37,83 '' + IL_0045: ldstr "versionUrl" + IL_004a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_004f: throw + + .line 98,98 : 13,43 '' + IL_0050: ldarg.s versionTextPrefix + IL_0052: ldnull + IL_0053: ceq + IL_0055: ldc.i4.0 + IL_0056: ceq + IL_0058: stloc.0 + IL_0059: ldloc.0 + IL_005a: brtrue.s IL_0067 + + .line 98,98 : 44,97 '' + IL_005c: ldstr "versionTextPrefix" + IL_0061: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0066: throw + + .line 100,100 : 13,43 '' + IL_0067: ldarg.0 + IL_0068: ldarg.1 + IL_0069: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_006e: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::pluginName + .line 101,101 : 13,50 '' + IL_0073: ldarg.0 + IL_0074: ldarg.1 + IL_0075: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + IL_007a: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::currentVersion + .line 102,102 : 13,40 '' + IL_007f: ldarg.0 + IL_0080: ldarg.2 + IL_0081: stfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::updateUrl + .line 103,103 : 13,42 '' + IL_0086: ldarg.0 + IL_0087: ldarg.3 + IL_0088: stfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionUrl + .line 104,104 : 13,56 '' + IL_008d: ldarg.0 + IL_008e: ldarg.s versionTextPrefix + IL_0090: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionTextPrefix + .line 105,105 : 9,10 '' + IL_0095: nop + IL_0096: ret + } // end of method Update::.ctor + + .method assembly hidebysig instance void + MarshalToNative([out] valuetype Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE& update) cil managed + { + // Code size 286 (0x11e) + .maxstack 3 + .line 108,108 : 9,10 '' + IL_0000: nop + .line 109,109 : 13,35 '' + IL_0001: ldarg.1 + IL_0002: initobj Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE + .line 110,110 : 13,58 '' + IL_0008: ldarg.1 + IL_0009: ldtoken Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE + IL_000e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0013: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0018: stfld int32 Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::Size + .line 112,112 : 13,47 '' + IL_001d: ldarg.1 + IL_001e: ldarg.0 + IL_001f: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::pluginName + IL_0024: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::ComponentName + .line 113,113 : 13,53 '' + IL_0029: ldarg.1 + IL_002a: ldarg.0 + IL_002b: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::updateUrl + IL_0030: callvirt instance string [mscorlib]System.Object::ToString() + IL_0035: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::UpdateUrl + .line 115,115 : 13,55 '' + IL_003a: ldarg.1 + IL_003b: ldarg.0 + IL_003c: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionUrl + IL_0041: callvirt instance string [mscorlib]System.Object::ToString() + IL_0046: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::VersionUrl + .line 116,116 : 13,54 '' + IL_004b: ldarg.1 + IL_004c: ldarg.0 + IL_004d: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionTextPrefix + IL_0052: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::VersionPrefix + .line 117,117 : 13,67 '' + IL_0057: ldarg.1 + IL_0058: ldarg.0 + IL_0059: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionTextPrefix + IL_005e: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0063: stfld int32 Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::VersionPrefixLength + .line 119,119 : 13,57 '' + IL_0068: ldarg.1 + IL_0069: ldarg.0 + IL_006a: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::currentVersion + IL_006f: ldc.i4.4 + IL_0070: callvirt instance string [mscorlib]System.Version::ToString(int32) + IL_0075: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::Version + .line 120,120 : 13,58 '' + IL_007a: ldarg.1 + IL_007b: ldarg.1 + IL_007c: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::Version + IL_0081: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0086: stfld int32 Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::VersionLength + .line 122,122 : 13,101 '' + IL_008b: ldarg.1 + IL_008c: ldarg.0 + IL_008d: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaChangelogUrl + IL_0092: ldnull + IL_0093: call bool [System]System.Uri::op_Inequality(class [System]System.Uri, + class [System]System.Uri) + IL_0098: brtrue.s IL_009d + + IL_009a: ldnull + IL_009b: br.s IL_00a8 + + IL_009d: ldarg.0 + IL_009e: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaChangelogUrl + IL_00a3: callvirt instance string [mscorlib]System.Object::ToString() + IL_00a8: nop + IL_00a9: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::BetaChangelogUrl + .line 123,123 : 13,92 '' + IL_00ae: ldarg.1 + IL_00af: ldarg.0 + IL_00b0: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaUpdateUrl + IL_00b5: ldnull + IL_00b6: call bool [System]System.Uri::op_Inequality(class [System]System.Uri, + class [System]System.Uri) + IL_00bb: brtrue.s IL_00c0 + + IL_00bd: ldnull + IL_00be: br.s IL_00cb + + IL_00c0: ldarg.0 + IL_00c1: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaUpdateUrl + IL_00c6: callvirt instance string [mscorlib]System.Object::ToString() + IL_00cb: nop + IL_00cc: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::BetaUpdateUrl + .line 124,124 : 13,95 '' + IL_00d1: ldarg.1 + IL_00d2: ldarg.0 + IL_00d3: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionUrl + IL_00d8: ldnull + IL_00d9: call bool [System]System.Uri::op_Inequality(class [System]System.Uri, + class [System]System.Uri) + IL_00de: brtrue.s IL_00e3 + + IL_00e0: ldnull + IL_00e1: br.s IL_00ee + + IL_00e3: ldarg.0 + IL_00e4: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionUrl + IL_00e9: callvirt instance string [mscorlib]System.Object::ToString() + IL_00ee: nop + IL_00ef: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::BetaVersionUrl + .line 125,125 : 13,62 '' + IL_00f4: ldarg.1 + IL_00f5: ldarg.0 + IL_00f6: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionTextPrefix + IL_00fb: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::BetaVersionPrefix + .line 126,126 : 13,111 '' + IL_0100: ldarg.1 + IL_0101: ldarg.0 + IL_0102: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionTextPrefix + IL_0107: brtrue.s IL_010c + + IL_0109: ldc.i4.0 + IL_010a: br.s IL_0117 + + IL_010c: ldarg.0 + IL_010d: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionTextPrefix + IL_0112: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0117: nop + IL_0118: stfld int32 Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::BetaVersionPrefixLength + .line 127,127 : 9,10 '' + IL_011d: ret + } // end of method Update::MarshalToNative + + .property instance string PluginName() + { + .get instance string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_PluginName() + } // end of property Update::PluginName + .property instance class [mscorlib]System.Version + CurrentVersion() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_CurrentVersion() + } // end of property Update::CurrentVersion + .property instance class [System]System.Uri + BetaChangelogUrl() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaChangelogUrl() + .set instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaChangelogUrl(class [System]System.Uri) + } // end of property Update::BetaChangelogUrl + .property instance class [System]System.Uri + BetaUpdateUrl() + { + .set instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaUpdateUrl(class [System]System.Uri) + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaUpdateUrl() + } // end of property Update::BetaUpdateUrl + .property instance class [System]System.Uri + BetaVersionUrl() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaVersionUrl() + .set instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaVersionUrl(class [System]System.Uri) + } // end of property Update::BetaVersionUrl + .property instance class [System]System.Uri + VersionUrl() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_VersionUrl() + } // end of property Update::VersionUrl + .property instance class [System]System.Uri + UpdateUrl() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_UpdateUrl() + } // end of property Update::UpdateUrl + .property instance string BetaVersionTextPrefix() + { + .get instance string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaVersionTextPrefix() + .set instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaVersionTextPrefix(string) + } // end of property Update::BetaVersionTextPrefix + .property instance string VersionTextPrefix() + { + .get instance string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_VersionTextPrefix() + } // end of property Update::VersionTextPrefix +} // end of class Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin + extends [mscorlib]System.Object +{ + .field private static literal string MS_UPDATE_REGISTER = "Update/Register" + .method public hidebysig static bool IsUpdateSupported() cil managed + { + // Code size 16 (0x10) + .maxstack 1 + .locals init ([0] bool CS$1$0000) + .line 33,33 : 9,10 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\ThirdParty\\Updater\\UpdaterPlugin.cs' + IL_0000: nop + .line 34,34 : 13,69 '' + IL_0001: ldstr "Update/Register" + IL_0006: call bool Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::ServiceExists(string) + IL_000b: stloc.0 + IL_000c: br.s IL_000e + + .line 35,35 : 9,10 '' + IL_000e: ldloc.0 + IL_000f: ret + } // end of method UpdaterPlugin::IsUpdateSupported + + .method public hidebysig static void RegisterForUpdate(class Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update update) cil managed + { + // Code size 169 (0xa9) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 updateHandle, + [1] valuetype Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE updateNative, + [2] int32 result, + [3] class [mscorlib]System.Exception e, + [4] bool CS$4$0000) + .line 38,38 : 9,10 '' + IL_0000: nop + .line 39,39 : 13,32 '' + IL_0001: ldarg.0 + IL_0002: ldnull + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: stloc.s CS$4$0000 + IL_000a: ldloc.s CS$4$0000 + IL_000c: brtrue.s IL_0019 + + .line 39,39 : 33,75 '' + IL_000e: ldstr "update" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 40,40 : 13,38 '' + IL_0019: call bool Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin::IsUpdateSupported() + IL_001e: stloc.s CS$4$0000 + IL_0020: ldloc.s CS$4$0000 + IL_0022: brtrue.s IL_002a + + .line 40,40 : 39,73 '' + IL_0024: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_0029: throw + + .line 42,42 : 13,94 '' + IL_002a: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_002f: stloc.0 + .line 45,45 : 13,14 '' + .try + { + .try + { + IL_0030: nop + .line 47,47 : 17,58 '' + IL_0031: ldarg.0 + IL_0032: ldloca.s updateNative + IL_0034: callvirt instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::MarshalToNative(valuetype Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE&) + IL_0039: nop + .line 49,49 : 17,84 '' + IL_003a: ldloca.s updateNative + IL_003c: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0041: stloc.0 + .line 50,50 : 17,120 '' + IL_0042: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0047: ldstr "Update/Register" + IL_004c: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0051: ldloca.s updateHandle + IL_0053: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0058: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_005d: stloc.2 + .line 52,52 : 17,33 '' + IL_005e: ldloc.2 + IL_005f: ldc.i4.0 + IL_0060: ceq + IL_0062: stloc.s CS$4$0000 + IL_0064: ldloc.s CS$4$0000 + IL_0066: brtrue.s IL_0084 + + .line 53,53 : 21,172 '' + IL_0068: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_006d: ldstr "Update/Register" + IL_0072: ldloca.s result + IL_0074: call instance string [mscorlib]System.Int32::ToString() + IL_0079: call string [mscorlib]System.String::Format(string, + object, + object) + IL_007e: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0083: throw + + .line 54,54 : 13,14 '' + IL_0084: nop + IL_0085: leave.s IL_0099 + + .line 55,55 : 13,37 '' + } // end .try + catch Virtuoso.Miranda.Plugins.Native.MirandaException + { + IL_0087: pop + .line 56,56 : 13,14 '' + IL_0088: nop + .line 57,57 : 17,23 '' + IL_0089: rethrow + .line 59,59 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_008b: stloc.3 + .line 60,60 : 13,14 '' + IL_008c: nop + .line 61,61 : 17,107 '' + IL_008d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0092: ldloc.3 + IL_0093: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_0098: throw + + } // end handler + IL_0099: nop + IL_009a: leave.s IL_00a7 + + .line 64,64 : 13,14 '' + } // end .try + finally + { + IL_009c: nop + .line 65,65 : 17,37 '' + IL_009d: ldloca.s updateHandle + IL_009f: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_00a4: nop + .line 66,66 : 13,14 '' + IL_00a5: nop + IL_00a6: endfinally + } // end handler + IL_00a7: nop + .line 67,67 : 9,10 '' + IL_00a8: ret + } // end of method UpdaterPlugin::RegisterForUpdate + +} // end of class Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin + +.class private auto ansi '{3FFF4D13-FF0A-429D-9B95-394048CE8C68}' + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .class explicit ansi sealed nested private '__StaticArrayInitTypeSize=10' + extends [mscorlib]System.ValueType + { + .pack 1 + .size 10 + } // end of class '__StaticArrayInitTypeSize=10' + + .field static assembly valuetype '{3FFF4D13-FF0A-429D-9B95-394048CE8C68}'/'__StaticArrayInitTypeSize=10' '$$method0x6000651-1' at I_00012ED0 +} // end of class '{3FFF4D13-FF0A-429D-9B95-394048CE8C68}' + + +// ============================================================= + +.data cil I_00012ED0 = bytearray ( + 0D 4A 40 00 0B 80 20 2C 71 2A) // .J@... ,q* +// *********** DISASSEMBLY COMPLETE *********************** +// Warnung: Win32-Ressourcendatei "IL\Plugins.res" wurde erstellt. diff --git a/Hyphen/Plugins/bin/IL/Plugins.res b/Hyphen/Plugins/bin/IL/Plugins.res new file mode 100644 index 0000000..c8b35dc Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Plugins.res differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources new file mode 100644 index 0000000..51278b3 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources new file mode 100644 index 0000000..1558aac Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources new file mode 100644 index 0000000..96cef11 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources new file mode 100644 index 0000000..b035c7c Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources new file mode 100644 index 0000000..d680403 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources new file mode 100644 index 0000000..49ec6f6 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources new file mode 100644 index 0000000..0474222 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources new file mode 100644 index 0000000..9940e91 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Properties.Resources.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Properties.Resources.resources new file mode 100644 index 0000000..a784a01 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Properties.Resources.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.Configure.ico b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.Configure.ico new file mode 100644 index 0000000..0ed7851 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.Configure.ico differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.LoadUnloadPlugins.ico b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.LoadUnloadPlugins.ico new file mode 100644 index 0000000..6593b82 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.LoadUnloadPlugins.ico differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.ShowManagedMenuItems.ico b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.ShowManagedMenuItems.ico new file mode 100644 index 0000000..3dd0b50 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.ShowManagedMenuItems.ico differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.TextResources.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.TextResources.resources new file mode 100644 index 0000000..8b2cd21 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.TextResources.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.VisualResources.resources b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.VisualResources.resources new file mode 100644 index 0000000..2ed4022 Binary files /dev/null and b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.VisualResources.resources differ diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.miranda32.exe.config b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.miranda32.exe.config new file mode 100644 index 0000000..c2c11f2 --- /dev/null +++ b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.Resources.miranda32.exe.config @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.il b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.il new file mode 100644 index 0000000..1250da7 --- /dev/null +++ b/Hyphen/Plugins/bin/IL/Virtuoso.Miranda.Plugins.il @@ -0,0 +1,51450 @@ + +// Microsoft (R) .NET Framework IL Disassembler. Version 3.5.30729.1 +// Copyright (c) Microsoft Corporation. Alle Rechte vorbehalten. + + + +// Metadata version: v2.0.50727 +.assembly extern mscorlib +{ + .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. + .ver 2:0:0:0 +} +.assembly extern System.Windows.Forms +{ + .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. + .ver 2:0:0:0 +} +.assembly extern System +{ + .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4.. + .ver 2:0:0:0 +} +.assembly extern System.Drawing +{ + .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: + .ver 2:0:0:0 +} +.assembly extern TabStripControlLibrary +{ + .publickeytoken = (FA E8 F1 19 9E 71 06 DC ) // .....q.. + .ver 1:0:0:0 +} +.assembly extern System.Security +{ + .publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....: + .ver 2:0:0:0 +} +.assembly Hyphen +{ + .custom instance void [mscorlib]System.Reflection.AssemblyCopyrightAttribute::.ctor(string) = ( 01 00 16 C2 A9 20 32 30 30 36 2D 32 30 31 30 2C // ..... 2006-2010, + 20 76 69 72 74 75 6F 73 6F 00 00 ) // virtuoso.. + .custom instance void [mscorlib]System.Runtime.InteropServices.ComVisibleAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Reflection.AssemblyCompanyAttribute::.ctor(string) = ( 01 00 08 76 69 72 74 75 6F 73 6F 00 00 ) // ...virtuoso.. + .custom instance void [mscorlib]System.Reflection.AssemblyProductAttribute::.ctor(string) = ( 01 00 0F 56 69 72 74 75 6F 73 6F 2E 48 79 70 68 // ...Virtuoso.Hyph + 65 6E 00 00 ) // en.. + .custom instance void [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::.ctor() = ( 01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78 // ....T..WrapNonEx + 63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01 ) // ceptionThrows. + .custom instance void [mscorlib]System.Reflection.AssemblyConfigurationAttribute::.ctor(string) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.GuidAttribute::.ctor(string) = ( 01 00 24 30 30 63 39 31 66 63 31 2D 64 63 38 65 // ..$00c91fc1-dc8e + 2D 34 37 33 64 2D 62 65 39 65 2D 33 63 37 32 32 // -473d-be9e-3c722 + 38 39 61 62 64 66 32 00 00 ) // 89abdf2.. + .custom instance void [mscorlib]System.Reflection.AssemblyDescriptionAttribute::.ctor(string) = ( 01 00 00 00 00 ) + + // --- The following custom attribute is added automatically, do not uncomment ------- + // .custom instance void [mscorlib]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 02 00 00 00 00 00 ) + + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilationRelaxationsAttribute::.ctor(int32) = ( 01 00 08 00 00 00 00 00 ) + .custom instance void [mscorlib]System.Reflection.AssemblyTrademarkAttribute::.ctor(string) = ( 01 00 08 76 69 72 74 75 6F 73 6F 00 00 ) // ...virtuoso.. + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [mscorlib]System.Reflection.AssemblyFileVersionAttribute::.ctor(string) = ( 01 00 0E 30 2E 38 2E 33 30 30 30 2E 30 30 39 30 // ...0.8.3000.0090 + 39 00 00 ) // 9.. + .custom instance void [mscorlib]System.Runtime.CompilerServices.InternalsVisibleToAttribute::.ctor(string) = ( 01 00 81 60 56 69 72 74 75 6F 73 6F 2E 48 79 70 // ...`Virtuoso.Hyp + 68 65 6E 2E 4D 69 6E 69 2C 20 50 75 62 6C 69 63 // hen.Mini, Public + 4B 65 79 3D 30 30 32 34 30 30 30 30 30 34 38 30 // Key=002400000480 + 30 30 30 30 39 34 30 30 30 30 30 30 30 36 30 32 // 0000940000000602 + 30 30 30 30 30 30 32 34 30 30 30 30 35 32 35 33 // 0000002400005253 + 34 31 33 31 30 30 30 34 30 30 30 30 30 31 30 30 // 4131000400000100 + 30 31 30 30 35 64 39 62 64 33 35 38 32 64 30 63 // 01005d9bd3582d0c + 30 31 64 63 64 35 34 38 35 34 61 63 32 66 33 36 // 01dcd54854ac2f36 + 63 39 34 66 37 62 65 66 32 33 35 62 32 65 32 62 // c94f7bef235b2e2b + 35 34 37 39 32 34 38 65 66 64 64 64 36 35 34 33 // 5479248efddd6543 + 31 62 63 65 65 66 36 63 39 32 64 37 35 39 64 37 // 1bceef6c92d759d7 + 66 32 33 66 33 36 39 32 37 30 34 63 64 31 38 66 // f23f3692704cd18f + 30 63 35 62 37 65 65 33 34 33 36 61 30 66 37 62 // 0c5b7ee3436a0f7b + 39 62 32 65 61 66 38 66 62 66 32 30 35 62 38 35 // 9b2eaf8fbf205b85 + 31 35 30 64 31 37 31 61 30 66 62 62 37 36 35 38 // 150d171a0fbb7658 + 66 62 35 30 63 31 35 33 31 66 36 65 65 65 33 65 // fb50c1531f6eee3e + 63 37 30 32 33 39 61 65 33 38 61 63 33 38 33 64 // c70239ae38ac383d + 64 37 34 32 61 37 35 34 36 39 31 63 39 36 35 63 // d742a754691c965c + 63 32 33 63 64 37 31 36 36 31 38 62 38 63 38 39 // c23cd716618b8c89 + 62 32 35 63 61 30 34 34 30 32 65 61 34 61 35 37 // b25ca04402ea4a57 + 39 61 36 36 62 64 66 35 30 33 33 35 65 34 62 36 // 9a66bdf50335e4b6 + 64 32 62 30 63 37 32 62 64 31 38 33 33 32 38 34 // d2b0c72bd1833284 + 38 37 62 35 00 00 ) // 87b5.. + .custom instance void [mscorlib]System.Runtime.CompilerServices.InternalsVisibleToAttribute::.ctor(string) = ( 01 00 81 6E 56 69 72 74 75 6F 73 6F 2E 4D 69 72 // ...nVirtuoso.Mir + 61 6E 64 61 2E 50 6C 75 67 69 6E 73 2E 55 6E 69 // anda.Plugins.Uni + 74 54 65 73 74 73 2C 20 50 75 62 6C 69 63 4B 65 // tTests, PublicKe + 79 3D 30 30 32 34 30 30 30 30 30 34 38 30 30 30 // y=00240000048000 + 30 30 39 34 30 30 30 30 30 30 30 36 30 32 30 30 // 0094000000060200 + 30 30 30 30 32 34 30 30 30 30 35 32 35 33 34 31 // 0000240000525341 + 33 31 30 30 30 34 30 30 30 30 30 31 30 30 30 31 // 3100040000010001 + 30 30 31 39 30 65 30 63 64 30 39 36 32 62 66 65 // 00190e0cd0962bfe + 37 38 33 35 62 32 32 62 65 34 33 63 65 34 39 61 // 7835b22be43ce49a + 63 64 31 30 39 64 35 64 30 63 30 35 31 32 35 33 // cd109d5d0c051253 + 34 66 37 34 61 61 66 30 31 66 63 64 62 37 37 31 // 4f74aaf01fcdb771 + 32 66 63 61 37 62 38 31 62 35 30 34 38 61 35 31 // 2fca7b81b5048a51 + 61 34 33 37 35 30 66 61 38 64 65 35 63 31 36 38 // a43750fa8de5c168 + 36 32 38 63 32 65 34 66 39 30 61 63 66 34 33 35 // 628c2e4f90acf435 + 35 39 62 63 33 32 38 30 32 34 32 36 35 64 66 35 // 59bc328024265df5 + 33 64 35 62 32 31 61 36 31 37 32 30 63 33 62 65 // 3d5b21a61720c3be + 37 35 65 39 61 33 62 31 35 30 34 36 61 34 62 30 // 75e9a3b15046a4b0 + 38 39 32 66 36 30 61 32 31 35 65 31 63 62 38 64 // 892f60a215e1cb8d + 62 34 36 37 64 38 34 64 32 36 32 36 31 30 30 65 // b467d84d2626100e + 37 33 39 30 61 39 32 39 66 33 35 62 35 33 63 34 // 7390a929f35b53c4 + 66 38 35 33 64 32 35 32 33 63 66 65 38 37 64 34 // f853d2523cfe87d4 + 38 34 32 34 36 64 64 66 34 34 36 63 31 38 34 39 // 84246ddf446c1849 + 63 36 62 35 65 34 33 30 62 31 32 63 63 30 62 36 // c6b5e430b12cc0b6 + 61 61 00 00 ) // aa.. + .custom instance void [mscorlib]System.Reflection.AssemblyTitleAttribute::.ctor(string) = ( 01 00 0F 56 69 72 74 75 6F 73 6F 2E 48 79 70 68 // ...Virtuoso.Hyph + 65 6E 00 00 ) // en.. + .permissionset reqmin + = {[mscorlib]System.Security.Permissions.SecurityPermissionAttribute = {property enum class 'System.Security.Permissions.SecurityPermissionFlag, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' 'Flags' = int32(1306)}, + [mscorlib]System.Security.Permissions.SecurityPermissionAttribute = {property bool 'SkipVerification' = bool(true)}} + .hash algorithm 0x00008004 + .ver 0:8:3000:909 +} +.mresource public Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources +{ + // Offset: 0x00000000 Length: 0x000046E0 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.TextResources.resources +{ + // Offset: 0x000046E8 Length: 0x0000320D + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.TextResources.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.VisualResources.resources +{ + // Offset: 0x00007900 Length: 0x000082F0 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.VisualResources.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources +{ + // Offset: 0x0000FBF8 Length: 0x00004835 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources +{ + // Offset: 0x00014438 Length: 0x000000B4 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources +{ + // Offset: 0x000144F0 Length: 0x000000B4 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources +{ + // Offset: 0x000145A8 Length: 0x00000957 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources" wurde erstellt. +} +.mresource public Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources +{ + // Offset: 0x00014F08 Length: 0x00000CC8 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources +{ + // Offset: 0x00015BD8 Length: 0x00001847 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources +{ + // Offset: 0x00017428 Length: 0x000000B4 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources +{ + // Offset: 0x000174E0 Length: 0x000000B4 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources +{ + // Offset: 0x00017598 Length: 0x00000561 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources +{ + // Offset: 0x00017B00 Length: 0x00006AF1 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources +{ + // Offset: 0x0001E5F8 Length: 0x0000599E + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Properties.Resources.resources +{ + // Offset: 0x00023FA0 Length: 0x000024CF + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Properties.Resources.resources" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.ShowManagedMenuItems.ico +{ + // Offset: 0x00026478 Length: 0x0000057E + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.ShowManagedMenuItems.ico" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.Configure.ico +{ + // Offset: 0x00026A00 Length: 0x0000047E + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.Configure.ico" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.LoadUnloadPlugins.ico +{ + // Offset: 0x00026E88 Length: 0x0000047E + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.LoadUnloadPlugins.ico" wurde erstellt. +} +.mresource public Virtuoso.Miranda.Plugins.Resources.miranda32.exe.config +{ + // Offset: 0x00027310 Length: 0x00000298 + // WARNUNG: Die verwaltete Ressourcendatei "Virtuoso.Miranda.Plugins.Resources.miranda32.exe.config" wurde erstellt. +} +.module Hyphen.dll +// MVID: {FD0927AC-A943-4855-87EE-E6F69D6BD04C} +.custom instance void [mscorlib]System.Security.UnverifiableCodeAttribute::.ctor() = ( 01 00 00 00 ) +.imagebase 0x10000000 +.file alignment 0x00000200 +.stackreserve 0x00100000 +.subsystem 0x0003 // WINDOWS_CUI +.corflags 0x00000003 // ILONLY 32BITREQUIRED +// Image base: 0x0000000000800000 + + +// =============== CLASS MEMBERS DECLARATION =================== + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.ExposingPluginAttribute + extends [mscorlib]System.Attribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 01 00 00 00 01 00 54 02 0D 41 6C 6C 6F 77 // ........T..Allow + 4D 75 6C 74 69 70 6C 65 01 ) // Multiple. + .field private class [mscorlib]System.Type pluginType + .method public hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Type pluginType) cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .language '{3F5162F8-07C6-11D3-9053-00C04FA302A1}', '{994B45C4-E6E9-11D2-903F-00C04FA302A1}', '{5A869D0B-6611-11D3-BD2A-0000F80849BD}' + .line 35,35 : 9,56 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\ExposingPluginAttribute.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + .line 37,37 : 13,36 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 38,38 : 17,63 '' + IL_0009: ldstr "pluginType" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 40,40 : 13,42 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.ExposingPluginAttribute::pluginType + .line 41,41 : 9,10 '' + IL_001b: ret + } // end of method ExposingPluginAttribute::.ctor + + .method public hidebysig specialname instance class [mscorlib]System.Type + get_PluginType() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 51,51 : 17,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.ExposingPluginAttribute::pluginType + IL_0006: ret + } // end of method ExposingPluginAttribute::get_PluginType + + .property instance class [mscorlib]System.Type + PluginType() + { + .get instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.ExposingPluginAttribute::get_PluginType() + } // end of property ExposingPluginAttribute::PluginType +} // end of class Virtuoso.Miranda.Plugins.ExposingPluginAttribute + +.class public auto ansi sealed beforefieldinit Virtuoso.Hyphen.Mini.Module + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested private beforefieldinit AuxiliaryPluginManager + extends Virtuoso.Miranda.Plugins.PluginManagerBase + { + .field private static class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Singleton + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 42,43 : 13,58 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Module.AuxiliaryPluginManager.cs' + IL_0000: ldarg.0 + IL_0001: call class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.FusionContext::get_Empty() + IL_0006: ldc.i4.0 + IL_0007: ldc.i4.0 + IL_0008: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::.ctor(class Virtuoso.Hyphen.FusionContext, + bool, + bool) + .line 43,43 : 61,62 '' + IL_000d: ret + } // end of method AuxiliaryPluginManager::.ctor + + .method famorassem hidebysig virtual + instance void FindAndLoadPlugins() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 51,51 : 17,51 '' + IL_0000: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_0005: throw + } // end of method AuxiliaryPluginManager::FindAndLoadPlugins + + .method public hidebysig static class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager + GetInstance() cil managed synchronized + { + // Code size 21 (0x15) + .maxstack 8 + .line 57,57 : 17,80 '' + IL_0000: ldsfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager::Singleton + IL_0005: dup + IL_0006: brtrue.s IL_0014 + + IL_0008: pop + IL_0009: newobj instance void Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager::.ctor() + IL_000e: dup + IL_000f: stsfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager::Singleton + IL_0014: ret + } // end of method AuxiliaryPluginManager::GetInstance + + .method public hidebysig instance void + FinishInitialization() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 66,66 : 17,69 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateContextInformation() + .line 67,67 : 13,14 '' + IL_000a: ret + } // end of method AuxiliaryPluginManager::FinishInitialization + + } // end of class AuxiliaryPluginManager + + .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass3`1' + extends [mscorlib]System.Object + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field public string exportName + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method '<>c__DisplayClass3`1'::.ctor + + .method public hidebysig instance bool + 'b__2'(class Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor _handler) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 518,518 : 17,58 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Module.cs' + IL_0000: ldarg.1 + IL_0001: callvirt instance string Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::get_ExportName() + IL_0006: ldarg.0 + IL_0007: ldfld string class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::exportName + IL_000c: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0011: ret + } // end of method '<>c__DisplayClass3`1'::'b__2' + + } // end of class '<>c__DisplayClass3`1' + + .field private static literal string LogCategory = "HyphenMini" + .field private static literal string MasterSuffx = ".master.dll" + .field private class [mscorlib]System.Reflection.Assembly MasterAssembly + .field private class Virtuoso.Hyphen.Mini.StandalonePlugin standalonePlugin + .field private class Virtuoso.Miranda.Plugins.PluginDescriptor PluginDescriptor + .field private bool isPostV07Build20Api + .field private native int PluginInfoPtr + .field private native int MirandaPluginInterfacesPtr + .field private initonly class [mscorlib]System.Reflection.Assembly MiniAssembly + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Loaded + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Unloaded + .field private valuetype Virtuoso.Miranda.Plugins.LoaderOptions LoaderOptions + .field private class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager PluginManager + .field private class Virtuoso.Hyphen.Loader HyphenLoader + .field private initonly string MasterDirectory + .field private initonly string MasterAssemblyPath + .field private static class [mscorlib]System.Predicate`1 'CS$<>9__CachedAnonymousMethodDelegate1' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method assembly hidebysig specialname rtspecialname + instance void .ctor(bool exApi) cil managed noinlining + { + // Code size 142 (0x8e) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Version supportedVersion) + .line 73,74 : 9,36 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 77,77 : 13,33 '' + IL_0006: call void Virtuoso.Hyphen.Loader::Initialize() + .line 80,80 : 13,58 '' + IL_000b: ldarg.0 + IL_000c: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetCallingAssembly() + IL_0011: stfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MiniAssembly + .line 83,83 : 13,71 '' + IL_0016: ldarg.0 + IL_0017: ldfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MiniAssembly + IL_001c: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_0021: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_0026: stloc.0 + .line 84,84 : 13,90 '' + IL_0027: ldarg.0 + IL_0028: ldloc.0 + IL_0029: ldc.i4.3 + IL_002a: callvirt instance string [mscorlib]System.Version::ToString(int32) + IL_002f: newobj instance void [mscorlib]System.Version::.ctor(string) + IL_0034: call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance(class [mscorlib]System.Version) + IL_0039: stfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Mini.Module::HyphenLoader + .line 86,86 : 13,38 '' + IL_003e: ldarg.0 + IL_003f: ldfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Mini.Module::HyphenLoader + IL_0044: brtrue.s IL_005a + + .line 88,88 : 17,170 '' + IL_0046: ldstr "Hyphen.Mini module requested a Loader of version {" + + "0}, but that one is not available. Upgrade Hyphen." + IL_004b: ldloc.0 + IL_004c: call string [mscorlib]System.String::Format(string, + object) + IL_0051: pop + .line 91,91 : 17,80 '' + IL_0052: ldnull + IL_0053: ldloc.0 + IL_0054: newobj instance void Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor(class [mscorlib]System.Type, + class [mscorlib]System.Version) + IL_0059: throw + + .line 94,94 : 13,41 '' + IL_005a: ldarg.0 + IL_005b: ldarg.1 + IL_005c: stfld bool Virtuoso.Hyphen.Mini.Module::isPostV07Build20Api + .line 95,95 : 13,76 '' + IL_0061: ldarg.0 + IL_0062: ldarg.0 + IL_0063: ldfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MiniAssembly + IL_0068: callvirt instance string [mscorlib]System.Reflection.Assembly::get_Location() + IL_006d: call string [mscorlib]System.IO.Path::GetDirectoryName(string) + IL_0072: stfld string Virtuoso.Hyphen.Mini.Module::MasterDirectory + .line 96,96 : 13,74 '' + IL_0077: ldarg.0 + IL_0078: ldarg.0 + IL_0079: ldfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MiniAssembly + IL_007e: callvirt instance string [mscorlib]System.Reflection.Assembly::get_Location() + IL_0083: call string [mscorlib]System.IO.Path::GetFileName(string) + IL_0088: stfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + .line 99,99 : 9,10 '' + IL_008d: ret + } // end of method Module::.ctor + + .method family hidebysig virtual instance void + Finalize() cil managed + { + // Code size 19 (0x13) + .maxstack 2 + .line 106,106 : 13,29 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: volatile. + IL_0004: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Module::Unloaded + IL_0009: leave.s IL_0012 + + .line 107,107 : 9,10 '' + } // end .try + finally + { + IL_000b: ldarg.0 + IL_000c: call instance void [mscorlib]System.Object::Finalize() + IL_0011: endfinally + .line 107,107 : 9,10 '' + } // end handler + IL_0012: ret + } // end of method Module::Finalize + + .method assembly hidebysig instance native int + MirandaPluginInfo(uint32 version) cil managed + { + // Code size 147 (0x93) + .maxstack 3 + .locals init ([0] class Virtuoso.Hyphen.Mini.StandalonePlugin plugin, + [1] class [mscorlib]System.Exception e, + [2] native int CS$1$0000, + [3] native int CS$0$0001) + .line 121,121 : 13,46 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0010: brfalse.s IL_0019 + + .line 122,122 : 17,38 '' + IL_0012: ldarg.0 + IL_0013: ldfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + IL_0018: ret + + .line 125,125 : 13,44 '' + IL_0019: ldnull + IL_001a: stloc.0 + .line 130,130 : 17,63 '' + .try + { + IL_001b: ldarg.0 + IL_001c: ldfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Mini.Module::HyphenLoader + IL_0021: ldarg.1 + IL_0022: callvirt instance void Virtuoso.Hyphen.Loader::MirandaPluginInfoShared(uint32) + .line 133,133 : 17,45 '' + IL_0027: ldarg.0 + IL_0028: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::LoadActualPlugin() + IL_002d: stloc.0 + .line 136,136 : 17,36 '' + IL_002e: ldloc.0 + IL_002f: brfalse.s IL_0070 + + .line 138,138 : 21,42 '' + IL_0031: ldloc.0 + IL_0032: ldarg.0 + IL_0033: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::set_Module(class Virtuoso.Hyphen.Mini.Module) + .line 139,139 : 21,64 '' + IL_0038: ldloc.0 + IL_0039: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::AfterModuleInitializationInternal() + .line 142,142 : 21,67 '' + IL_003e: ldarg.0 + IL_003f: ldloc.0 + IL_0040: ldarg.1 + IL_0041: call instance bool Virtuoso.Hyphen.Mini.Module::PublishPluginInformation(class Virtuoso.Hyphen.Mini.StandalonePlugin, + uint32) + IL_0046: brfalse.s IL_0070 + + .line 144,144 : 25,51 '' + IL_0048: ldarg.0 + IL_0049: ldloc.0 + IL_004a: stfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + .line 145,145 : 25,68 '' + IL_004f: ldarg.0 + IL_0050: ldloc.0 + IL_0051: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0056: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_005b: stfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MasterAssembly + .line 147,147 : 25,55 '' + IL_0060: ldarg.0 + IL_0061: ldloc.0 + IL_0062: call instance void Virtuoso.Hyphen.Mini.Module::ProbeCustomApiExports(class Virtuoso.Hyphen.Mini.StandalonePlugin) + .line 148,148 : 25,46 '' + IL_0067: ldarg.0 + IL_0068: ldfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + IL_006d: stloc.2 + IL_006e: leave.s IL_0091 + + IL_0070: leave.s IL_0082 + + .line 154,154 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0072: stloc.1 + .line 156,156 : 17,81 '' + IL_0073: ldloc.0 + IL_0074: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0079: ldloc.1 + IL_007a: ldnull + IL_007b: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0080: leave.s IL_0082 + + .line 161,161 : 13,64 '' + } // end handler + IL_0082: ldarg.0 + IL_0083: call native int Virtuoso.Hyphen.Loader::GetDummyPluginInfo() + IL_0088: dup + IL_0089: stloc.3 + IL_008a: stfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + IL_008f: ldloc.3 + IL_0090: ret + + .line 162,162 : 9,10 '' + IL_0091: ldloc.2 + IL_0092: ret + } // end of method Module::MirandaPluginInfo + + .method assembly hidebysig instance native int + MirandaPluginInterfaces() cil managed + { + // Code size 87 (0x57) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Exception e, + [1] native int CS$1$0000, + [2] native int CS$0$0001) + .line 170,170 : 13,59 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Hyphen.Mini.Module::MirandaPluginInterfacesPtr + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0010: brfalse.s IL_0019 + + .line 171,171 : 17,51 '' + IL_0012: ldarg.0 + IL_0013: ldfld native int Virtuoso.Hyphen.Mini.Module::MirandaPluginInterfacesPtr + IL_0018: ret + + .line 175,175 : 17,98 '' + .try + { + IL_0019: ldarg.0 + IL_001a: ldarg.0 + IL_001b: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0020: callvirt instance native int Virtuoso.Hyphen.Mini.StandalonePlugin::MirandaPluginInterfaces() + IL_0025: dup + IL_0026: stloc.2 + IL_0027: stfld native int Virtuoso.Hyphen.Mini.Module::MirandaPluginInterfacesPtr + IL_002c: ldloc.2 + IL_002d: stloc.1 + IL_002e: leave.s IL_0055 + + .line 177,177 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0030: stloc.0 + .line 179,179 : 17,114 '' + IL_0031: ldarg.0 + IL_0032: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_0037: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_003c: ldloc.0 + IL_003d: ldarg.0 + IL_003e: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_0043: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0048: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_004d: leave.s IL_004f + + .line 183,183 : 13,32 '' + } // end handler + IL_004f: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0054: ret + + .line 184,184 : 9,10 '' + IL_0055: ldloc.1 + IL_0056: ret + } // end of method Module::MirandaPluginInterfaces + + .method assembly hidebysig instance int32 + Load(native int pPluginLink) cil managed + { + // Code size 162 (0xa2) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Exception e, + [1] int32 CS$1$0000) + .line 195,195 : 17,28 '' + .try + { + .try + { + IL_0000: ldarg.0 + IL_0001: volatile. + IL_0003: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Module::Loaded + IL_0008: brfalse.s IL_0015 + + .line 196,196 : 21,110 '' + IL_000a: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginAlreadyInitialized() + IL_000f: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0014: throw + + .line 201,201 : 17,61 '' + IL_0015: ldarg.0 + IL_0016: ldfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Mini.Module::HyphenLoader + IL_001b: ldarg.1 + IL_001c: callvirt instance void Virtuoso.Hyphen.Loader::ModuleInducedLoad(native int) + .line 202,202 : 17,62 '' + IL_0021: call class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + IL_0026: ldarg.0 + IL_0027: callvirt instance void Virtuoso.Hyphen.Mini.ModuleManager::RegisterModule(class Virtuoso.Hyphen.Mini.Module) + .line 205,205 : 17,70 '' + IL_002c: ldarg.0 + IL_002d: call class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager::GetInstance() + IL_0032: stfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + .line 206,206 : 17,86 '' + IL_0037: ldarg.0 + IL_0038: ldarg.0 + IL_0039: ldfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + IL_003e: ldarg.0 + IL_003f: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0044: ldc.i4.0 + IL_0045: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.PluginManagerBase::LoadPlugin(class Virtuoso.Miranda.Plugins.MirandaPlugin, + bool) + IL_004a: stfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + .line 209,209 : 17,60 '' + IL_004f: ldarg.0 + IL_0050: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0055: ldarg.1 + IL_0056: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::LoadInternal(native int) + .line 212,212 : 17,78 '' + IL_005b: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0060: ldarg.0 + IL_0061: ldftn instance void Virtuoso.Hyphen.Mini.Module::ModulesLoadedHandler(object, + class [mscorlib]System.EventArgs) + IL_0067: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_006c: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::add_ModulesLoaded(class [mscorlib]System.EventHandler) + .line 215,215 : 17,52 '' + IL_0071: ldc.i4.0 + IL_0072: stloc.1 + IL_0073: leave.s IL_00a0 + + .line 217,217 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0075: stloc.0 + .line 219,219 : 17,114 '' + IL_0076: ldarg.0 + IL_0077: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_007c: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0081: ldloc.0 + IL_0082: ldarg.0 + IL_0083: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_0088: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_008d: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 222,222 : 17,52 '' + IL_0092: ldc.i4.m1 + IL_0093: stloc.1 + IL_0094: leave.s IL_00a0 + + .line 226,226 : 17,31 '' + } // end handler + } // end .try + finally + { + IL_0096: ldarg.0 + IL_0097: ldc.i4.1 + IL_0098: volatile. + IL_009a: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Module::Loaded + IL_009f: endfinally + .line 228,228 : 9,10 '' + } // end handler + IL_00a0: ldloc.1 + IL_00a1: ret + } // end of method Module::Load + + .method private hidebysig instance void + ModulesLoadedHandler(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 104 (0x68) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Exception ex) + .line 238,238 : 17,54 '' + .try + { + .try + { + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + IL_0006: callvirt instance void Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager::FinishInitialization() + .line 242,242 : 17,77 '' + IL_000b: ldarg.0 + IL_000c: ldfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Mini.Module::HyphenLoader + IL_0011: ldarg.0 + IL_0012: ldfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + IL_0017: callvirt instance void Virtuoso.Hyphen.Loader::PromoteManagedMenuIntoAppDomain(class Virtuoso.Miranda.Plugins.PluginManagerBase) + .line 245,245 : 17,55 '' + IL_001c: ldarg.0 + IL_001d: call instance bool Virtuoso.Hyphen.Mini.Module::get_PluginLoaded() + IL_0022: brfalse.s IL_003e + + IL_0024: ldarg.0 + IL_0025: call instance bool Virtuoso.Hyphen.Mini.Module::get_PluginInitialized() + IL_002a: brfalse.s IL_003e + + .line 246,246 : 21,89 '' + IL_002c: ldarg.0 + IL_002d: ldfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + IL_0032: ldarg.0 + IL_0033: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + IL_0038: ldc.i4.1 + IL_0039: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_003e: leave.s IL_005f + + .line 248,248 : 13,33 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0040: stloc.0 + .line 250,250 : 17,111 '' + IL_0041: ldarg.0 + IL_0042: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + IL_0047: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_004c: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0051: ldloc.0 + IL_0052: ldarg.0 + IL_0053: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + IL_0058: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_005d: leave.s IL_005f + + } // end handler + IL_005f: leave.s IL_0067 + + .line 254,254 : 17,51 '' + } // end .try + finally + { + IL_0061: call void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::FlushCaches() + IL_0066: endfinally + .line 256,256 : 9,10 '' + } // end handler + IL_0067: ret + } // end of method Module::ModulesLoadedHandler + + .method assembly hidebysig instance int32 + Unload() cil managed + { + // Code size 168 (0xa8) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Exception e, + [1] int32 CS$1$0000) + .line 266,266 : 17,34 '' + .try + { + .try + { + IL_0000: ldarg.0 + IL_0001: call instance bool Virtuoso.Hyphen.Mini.Module::CanUnload() + IL_0006: brtrue.s IL_000f + + .line 267,267 : 21,56 '' + IL_0008: ldc.i4.0 + IL_0009: stloc.1 + IL_000a: leave IL_00a6 + + .line 270,270 : 17,51 '' + IL_000f: ldarg.0 + IL_0010: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0015: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::UnloadInternal() + .line 272,272 : 17,86 '' + IL_001a: ldarg.0 + IL_001b: ldfld class Virtuoso.Hyphen.Mini.Module/AuxiliaryPluginManager Virtuoso.Hyphen.Mini.Module::PluginManager + IL_0020: ldarg.0 + IL_0021: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + IL_0026: ldc.i4.0 + IL_0027: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState) + .line 273,273 : 17,64 '' + IL_002c: call class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + IL_0031: ldarg.0 + IL_0032: callvirt instance void Virtuoso.Hyphen.Mini.ModuleManager::UnregisterModule(class Virtuoso.Hyphen.Mini.Module) + .line 275,275 : 17,59 '' + IL_0037: ldarg.0 + IL_0038: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_003d: callvirt instance bool Virtuoso.Hyphen.Mini.StandalonePlugin::get_HasCustomPluginInfo() + IL_0042: brtrue.s IL_004f + + .line 276,276 : 21,56 '' + IL_0044: ldarg.0 + IL_0045: ldfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + IL_004a: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + .line 278,278 : 17,65 '' + IL_004f: ldarg.0 + IL_0050: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0055: callvirt instance bool Virtuoso.Hyphen.Mini.StandalonePlugin::get_HasCustomPluginInterfaces() + IL_005a: brtrue.s IL_0067 + + .line 279,279 : 21,69 '' + IL_005c: ldarg.0 + IL_005d: ldfld native int Virtuoso.Hyphen.Mini.Module::MirandaPluginInterfacesPtr + IL_0062: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + .line 281,281 : 17,41 '' + IL_0067: ldarg.0 + IL_0068: ldnull + IL_0069: stfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + .line 282,282 : 17,41 '' + IL_006e: ldarg.0 + IL_006f: ldnull + IL_0070: stfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0075: leave.s IL_0098 + + .line 286,286 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0077: stloc.0 + .line 288,288 : 17,114 '' + IL_0078: ldarg.0 + IL_0079: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_007e: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0083: ldloc.0 + IL_0084: ldarg.0 + IL_0085: call instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_008a: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_008f: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 291,291 : 17,52 '' + IL_0094: ldc.i4.m1 + IL_0095: stloc.1 + IL_0096: leave.s IL_00a6 + + } // end handler + IL_0098: leave.s IL_00a4 + + .line 295,295 : 17,33 '' + } // end .try + finally + { + IL_009a: ldarg.0 + IL_009b: ldc.i4.1 + IL_009c: volatile. + IL_009e: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Module::Unloaded + IL_00a3: endfinally + .line 298,298 : 13,48 '' + } // end handler + IL_00a4: ldc.i4.0 + IL_00a5: ret + + .line 299,299 : 9,10 '' + IL_00a6: ldloc.1 + IL_00a7: ret + } // end of method Module::Unload + + .method private hidebysig instance bool + CanUnload() cil managed + { + // Code size 35 (0x23) + .maxstack 8 + .line 307,308 : 13,100 '' + IL_0000: ldarg.0 + IL_0001: volatile. + IL_0003: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Module::Unloaded + IL_0008: brtrue.s IL_0021 + + IL_000a: ldarg.0 + IL_000b: call instance bool Virtuoso.Hyphen.Mini.Module::get_PluginInitialized() + IL_0010: brfalse.s IL_0021 + + IL_0012: ldarg.0 + IL_0013: ldfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Hyphen.Mini.Module::LoaderOptions + IL_0018: ldc.i4.4 + IL_0019: and + IL_001a: ldc.i4.4 + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: ret + + IL_0021: ldc.i4.0 + IL_0022: ret + } // end of method Module::CanUnload + + .method private hidebysig instance bool + PublishPluginInformation(class Virtuoso.Hyphen.Mini.StandalonePlugin plugin, + uint32 version) cil managed + { + // Code size 93 (0x5d) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute loaderOptions, + [1] bool CS$1$0000) + .line 323,323 : 13,32 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 324,324 : 17,59 '' + IL_0003: ldstr "plugin" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 328,328 : 17,126 '' + .try + { + IL_000e: ldarg.1 + IL_000f: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0014: ldc.i4.0 + IL_0015: call class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::Get(class [mscorlib]System.Type, + valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner) + IL_001a: stloc.0 + .line 330,330 : 17,68 '' + IL_001b: ldloc.0 + IL_001c: ldarg.2 + IL_001d: callvirt instance bool Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::SupportsMirandaVersion(uint32) + IL_0022: brtrue.s IL_0028 + + .line 331,331 : 21,34 '' + IL_0024: ldc.i4.0 + IL_0025: stloc.1 + IL_0026: leave.s IL_005b + + .line 333,333 : 17,55 '' + IL_0028: ldarg.0 + IL_0029: ldloc.0 + IL_002a: callvirt instance valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_Options() + IL_002f: stfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Hyphen.Mini.Module::LoaderOptions + .line 334,334 : 17,88 '' + IL_0034: ldarg.0 + IL_0035: ldarg.1 + IL_0036: ldarg.2 + IL_0037: ldarg.0 + IL_0038: ldfld bool Virtuoso.Hyphen.Mini.Module::isPostV07Build20Api + IL_003d: callvirt instance native int Virtuoso.Hyphen.Mini.StandalonePlugin::MirandaPluginInfo(uint32, + bool) + IL_0042: stfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + .line 336,336 : 17,29 '' + IL_0047: ldc.i4.1 + IL_0048: stloc.1 + IL_0049: leave.s IL_005b + + .line 338,338 : 13,30 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_004b: pop + .line 340,340 : 17,45 '' + IL_004c: ldarg.0 + IL_004d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0052: stfld native int Virtuoso.Hyphen.Mini.Module::PluginInfoPtr + .line 341,341 : 17,30 '' + IL_0057: ldc.i4.0 + IL_0058: stloc.1 + IL_0059: leave.s IL_005b + + .line 343,343 : 9,10 '' + } // end handler + IL_005b: ldloc.1 + IL_005c: ret + } // end of method Module::PublishPluginInformation + + .method private hidebysig instance void + ProbeCustomApiExports(class Virtuoso.Hyphen.Mini.StandalonePlugin plugin) cil managed + { + // Code size 163 (0xa3) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Type customApiHandlerAttribType, + [1] class [mscorlib]System.Type customApiHandlerCallbackType, + [2] class [mscorlib]System.Reflection.MethodInfo 'method', + [3] class [mscorlib]System.Delegate callbackDeleg, + [4] class Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute attrib, + [5] class [mscorlib]System.Reflection.MethodInfo[] CS$6$0000, + [6] int32 CS$7$0001) + .line 351,351 : 13,32 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 352,352 : 17,59 '' + IL_0003: ldstr "plugin" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 354,354 : 13,106 '' + IL_000e: ldarg.0 + IL_000f: ldfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Hyphen.Mini.Module::LoaderOptions + IL_0014: ldc.i4.2 + IL_0015: and + IL_0016: ldc.i4.2 + IL_0017: beq.s IL_001a + + .line 355,355 : 17,24 '' + IL_0019: ret + + .line 358,358 : 17,91 '' + .try + { + IL_001a: ldtoken Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute + IL_001f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0024: stloc.0 + .line 359,359 : 22,85 '' + IL_0025: ldtoken Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + IL_002a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_002f: stloc.1 + .line 361,361 : 47,176 '' + IL_0030: ldarg.1 + IL_0031: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0036: ldc.i4.s 116 + IL_0038: callvirt instance class [mscorlib]System.Reflection.MethodInfo[] [mscorlib]System.Type::GetMethods(valuetype [mscorlib]System.Reflection.BindingFlags) + IL_003d: stloc.s CS$6$0000 + IL_003f: ldc.i4.0 + IL_0040: stloc.s CS$7$0001 + IL_0042: br.s IL_0095 + + .line 361,361 : 26,43 '' + IL_0044: ldloc.s CS$6$0000 + IL_0046: ldloc.s CS$7$0001 + IL_0048: ldelem.ref + IL_0049: stloc.2 + .line 363,363 : 21,77 '' + IL_004a: ldloc.2 + IL_004b: ldloc.0 + IL_004c: ldc.i4.1 + IL_004d: callvirt instance bool [mscorlib]System.Reflection.MemberInfo::IsDefined(class [mscorlib]System.Type, + bool) + IL_0052: brfalse.s IL_008f + + .line 366,366 : 21,123 '' + IL_0054: ldloc.1 + IL_0055: ldarg.1 + IL_0056: ldloc.2 + IL_0057: ldc.i4.0 + IL_0058: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::CreateDelegate(class [mscorlib]System.Type, + object, + class [mscorlib]System.Reflection.MethodInfo, + bool) + IL_005d: stloc.3 + .line 368,368 : 21,47 '' + IL_005e: ldloc.3 + IL_005f: brfalse.s IL_008f + + .line 371,371 : 21,159 '' + IL_0061: ldloc.2 + IL_0062: ldloc.0 + IL_0063: ldc.i4.1 + IL_0064: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_0069: ldc.i4.0 + IL_006a: ldelem.ref + IL_006b: castclass Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute + IL_0070: stloc.s attrib + .line 372,372 : 21,140 '' + IL_0072: ldarg.1 + IL_0073: callvirt instance class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection Virtuoso.Hyphen.Mini.StandalonePlugin::get_CustomApiHandlers() + IL_0078: ldloc.s attrib + IL_007a: callvirt instance string Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::get_ExportName() + IL_007f: ldloc.3 + IL_0080: castclass Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + IL_0085: newobj instance void Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::.ctor(string, + class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback) + IL_008a: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_008f: ldloc.s CS$7$0001 + IL_0091: ldc.i4.1 + IL_0092: add + IL_0093: stloc.s CS$7$0001 + .line 361,361 : 44,46 '' + IL_0095: ldloc.s CS$7$0001 + IL_0097: ldloc.s CS$6$0000 + IL_0099: ldlen + IL_009a: conv.i4 + IL_009b: blt.s IL_0044 + + IL_009d: leave.s IL_00a2 + + .line 376,376 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_009f: pop + .line 379,379 : 17,23 '' + IL_00a0: rethrow + .line 381,381 : 9,10 '' + } // end handler + IL_00a2: ret + } // end of method Module::ProbeCustomApiExports + + .method private hidebysig instance class Virtuoso.Hyphen.Mini.StandalonePlugin + LoadActualPlugin() cil managed + { + // Code size 187 (0xbb) + .maxstack 4 + .locals init ([0] string assemblyPath, + [1] class [mscorlib]System.Reflection.Assembly masterAssembly, + [2] class [mscorlib]System.Type[] exposedTypes, + [3] class [mscorlib]System.Type masterType, + [4] class Virtuoso.Miranda.Plugins.RuntimeNotSupportedException rvnsE, + [5] class Virtuoso.Hyphen.Mini.StandalonePlugin CS$1$0000) + .line 391,391 : 17,137 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Hyphen.Mini.Module::MasterDirectory + IL_0006: ldarg.0 + IL_0007: ldfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + IL_000c: call string [mscorlib]System.IO.Path::GetFileNameWithoutExtension(string) + IL_0011: ldstr ".master.dll" + IL_0016: call string [mscorlib]System.String::Concat(string, + string) + IL_001b: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_0020: stloc.0 + .line 393,393 : 17,48 '' + IL_0021: ldloc.0 + IL_0022: call bool [mscorlib]System.IO.File::Exists(string) + IL_0027: brtrue.s IL_0031 + + .line 394,394 : 21,33 '' + IL_0029: ldnull + IL_002a: stloc.s CS$1$0000 + IL_002c: leave IL_00b8 + + .line 396,396 : 17,75 '' + IL_0031: ldloc.0 + IL_0032: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::LoadFile(string) + IL_0037: stloc.1 + .line 397,397 : 17,91 '' + IL_0038: ldloc.1 + IL_0039: call class [mscorlib]System.Type[] Virtuoso.Miranda.Plugins.PluginManagerBase::GetExposedPlugins(class [mscorlib]System.Reflection.Assembly) + IL_003e: stloc.2 + .line 400,403 : 17,20 '' + IL_003f: ldloc.2 + IL_0040: ldsfld class [mscorlib]System.Predicate`1 Virtuoso.Hyphen.Mini.Module::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0045: brtrue.s IL_0058 + + IL_0047: ldnull + IL_0048: ldftn bool Virtuoso.Hyphen.Mini.Module::'b__0'(class [mscorlib]System.Type) + IL_004e: newobj instance void class [mscorlib]System.Predicate`1::.ctor(object, + native int) + IL_0053: stsfld class [mscorlib]System.Predicate`1 Virtuoso.Hyphen.Mini.Module::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0058: ldsfld class [mscorlib]System.Predicate`1 Virtuoso.Hyphen.Mini.Module::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_005d: call !!0 [mscorlib]System.Array::Find(!!0[], + class [mscorlib]System.Predicate`1) + IL_0062: stloc.3 + .line 406,406 : 17,40 '' + IL_0063: ldloc.3 + IL_0064: brtrue.s IL_007c + + .line 407,407 : 21,147 '' + IL_0066: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnableToLoadMasterType() + IL_006b: ldarg.0 + IL_006c: ldfld string Virtuoso.Hyphen.Mini.Module::MasterAssemblyPath + IL_0071: call string [mscorlib]System.String::Format(string, + object) + IL_0076: newobj instance void [mscorlib]System.TypeLoadException::.ctor(string) + IL_007b: throw + + .line 411,411 : 21,100 '' + .try + { + IL_007c: ldloc.3 + IL_007d: ldc.i4.1 + IL_007e: call class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginManagerBase::InstantiatePlugin(class [mscorlib]System.Type, + bool) + IL_0083: castclass Virtuoso.Hyphen.Mini.StandalonePlugin + IL_0088: stloc.s CS$1$0000 + IL_008a: leave.s IL_00b8 + + .line 413,413 : 17,59 '' + } // end .try + catch Virtuoso.Miranda.Plugins.RuntimeNotSupportedException + { + IL_008c: stloc.s rvnsE + .line 415,415 : 21,264 '' + IL_008e: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable() + IL_0093: ldloc.3 + IL_0094: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0099: ldloc.s rvnsE + IL_009b: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::get_RequiredVersion() + IL_00a0: call string [mscorlib]System.String::Format(string, + object, + object) + IL_00a5: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_RuntimeVersionNotAvailable() + IL_00aa: ldc.i4.0 + IL_00ab: ldc.i4.s 16 + IL_00ad: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_00b2: pop + .line 416,416 : 21,27 '' + IL_00b3: rethrow + .line 419,419 : 13,32 '' + } // end handler + } // end .try + catch [mscorlib]System.Exception + { + IL_00b5: pop + .line 422,422 : 17,23 '' + IL_00b6: rethrow + .line 424,424 : 9,10 '' + } // end handler + IL_00b8: ldloc.s CS$1$0000 + IL_00ba: ret + } // end of method Module::LoadActualPlugin + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 432,432 : 13,58 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Reflection.Assembly Virtuoso.Hyphen.Mini.Module::MiniAssembly + IL_0006: callvirt instance string [mscorlib]System.Object::ToString() + IL_000b: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0010: ret + } // end of method Module::GetHashCode + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 27 (0x1b) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Mini.Module other) + .line 437,437 : 13,42 '' + IL_0000: ldarg.1 + IL_0001: isinst Virtuoso.Hyphen.Mini.Module + IL_0006: stloc.0 + .line 439,439 : 13,31 '' + IL_0007: ldloc.0 + IL_0008: brtrue.s IL_000c + + .line 440,440 : 17,30 '' + IL_000a: ldc.i4.0 + IL_000b: ret + + .line 442,442 : 13,57 '' + IL_000c: ldloc.0 + IL_000d: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0012: ldarg.0 + IL_0013: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0018: ceq + IL_001a: ret + } // end of method Module::Equals + + .method public hidebysig specialname instance class Virtuoso.Hyphen.Mini.StandalonePlugin + get_StandalonePlugin() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 456,456 : 17,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0006: ret + } // end of method Module::get_StandalonePlugin + + .method public hidebysig specialname instance bool + get_IsPostV07Build20Api() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 467,467 : 17,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Hyphen.Mini.Module::isPostV07Build20Api + IL_0006: ret + } // end of method Module::get_IsPostV07Build20Api + + .method private hidebysig specialname instance bool + get_PluginLoaded() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 478,478 : 17,49 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: ret + } // end of method Module::get_PluginLoaded + + .method private hidebysig specialname instance bool + get_PluginInitialized() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 489,489 : 17,49 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Hyphen.Mini.Module::PluginDescriptor + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: ret + } // end of method Module::get_PluginInitialized + + .method assembly hidebysig instance !!T + ExecuteCustomApiExport(string exportName, + object[] data) cil managed + { + .param [2] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 122 (0x7a) + .maxstack 3 + .locals init ([0] class Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor descriptor, + [1] class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1' 'CS$<>8__locals4') + IL_0000: newobj instance void class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::.ctor() + IL_0005: stloc.1 + IL_0006: ldloc.1 + IL_0007: ldarg.1 + IL_0008: stfld string class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::exportName + .line 506,506 : 13,50 '' + IL_000d: ldloc.1 + IL_000e: ldfld string class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::exportName + IL_0013: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0018: brfalse.s IL_0025 + + .line 507,507 : 17,63 '' + IL_001a: ldstr "exportName" + IL_001f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0024: throw + + .line 509,509 : 13,30 '' + IL_0025: ldarg.2 + IL_0026: brtrue.s IL_0033 + + .line 510,510 : 17,57 '' + IL_0028: ldstr "data" + IL_002d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0032: throw + + .line 512,512 : 13,31 '' + IL_0033: ldarg.0 + IL_0034: call instance bool Virtuoso.Hyphen.Mini.Module::get_PluginLoaded() + IL_0039: brtrue.s IL_0046 + + .line 513,513 : 17,102 '' + IL_003b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_0040: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0045: throw + + .line 516,519 : 13,16 '' + IL_0046: ldarg.0 + IL_0047: ldfld class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::standalonePlugin + IL_004c: callvirt instance class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection Virtuoso.Hyphen.Mini.StandalonePlugin::get_CustomApiHandlers() + IL_0051: ldloc.1 + IL_0052: ldftn instance bool class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::'b__2'(class Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor) + IL_0058: newobj instance void class [mscorlib]System.Predicate`1::.ctor(object, + native int) + IL_005d: callvirt instance !0 class [mscorlib]System.Collections.Generic.List`1::Find(class [mscorlib]System.Predicate`1) + IL_0062: stloc.0 + .line 521,521 : 13,36 '' + IL_0063: ldloc.0 + IL_0064: brtrue.s IL_0072 + + .line 522,522 : 17,63 '' + IL_0066: ldloc.1 + IL_0067: ldfld string class Virtuoso.Hyphen.Mini.Module/'<>c__DisplayClass3`1'::exportName + IL_006c: newobj instance void [mscorlib]System.NotImplementedException::.ctor(string) + IL_0071: throw + + .line 524,524 : 17,52 '' + IL_0072: ldloc.0 + IL_0073: ldarg.2 + IL_0074: callvirt instance !!0 Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::Execute(object[]) + IL_0079: ret + } // end of method Module::ExecuteCustomApiExport + + .method private hidebysig static bool 'b__0'(class [mscorlib]System.Type _type) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 17 (0x11) + .maxstack 8 + .line 402,402 : 21,73 '' + IL_0000: ldarg.0 + IL_0001: ldtoken Virtuoso.Hyphen.Mini.StandalonePlugin + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0010: ret + } // end of method Module::'b__0' + + .property instance class Virtuoso.Hyphen.Mini.StandalonePlugin + StandalonePlugin() + { + .get instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + } // end of property Module::StandalonePlugin + .property instance bool IsPostV07Build20Api() + { + .get instance bool Virtuoso.Hyphen.Mini.Module::get_IsPostV07Build20Api() + } // end of property Module::IsPostV07Build20Api + .property instance bool PluginLoaded() + { + .get instance bool Virtuoso.Hyphen.Mini.Module::get_PluginLoaded() + } // end of property Module::PluginLoaded + .property instance bool PluginInitialized() + { + .get instance bool Virtuoso.Hyphen.Mini.Module::get_PluginInitialized() + } // end of property Module::PluginInitialized +} // end of class Virtuoso.Hyphen.Mini.Module + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject + extends [mscorlib]System.MarshalByRefObject +{ + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 26,26 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\RemoteObject.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.MarshalByRefObject::.ctor() + .line 26,26 : 36,37 '' + IL_0006: ret + } // end of method RemoteObject::.ctor + + .method public hidebysig virtual instance object + InitializeLifetimeService() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 30,30 : 13,25 '' + IL_0000: ldnull + IL_0001: ret + } // end of method RemoteObject::InitializeLifetimeService + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject +{ + .method famorassem hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 29,29 : 9,43 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContextWorker.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + .line 29,29 : 46,47 '' + IL_0006: ret + } // end of method ContextWorker::.ctor + + .method family hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + get_Context() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 33,33 : 19,49 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ret + } // end of method ContextWorker::get_Context + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + Context() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::get_Context() + } // end of property ContextWorker::Context +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.IExceptionHandler +{ + .method public hidebysig newslot abstract virtual + instance void HandleException(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) cil managed + { + } // end of method IExceptionHandler::HandleException + +} // end of class Virtuoso.Miranda.Plugins.IExceptionHandler + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.PluginManagerBase + extends Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + implements Virtuoso.Miranda.Plugins.IExceptionHandler +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .class auto ansi sealed nested public PluginManagerContextCallback`1 + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method PluginManagerContextCallback`1::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(class Virtuoso.Miranda.Plugins.PluginManagerBase sender, + !T state) runtime managed + { + } // end of method PluginManagerContextCallback`1::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class Virtuoso.Miranda.Plugins.PluginManagerBase sender, + !T state, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method PluginManagerContextCallback`1::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method PluginManagerContextCallback`1::EndInvoke + + } // end of class PluginManagerContextCallback`1 + + .field static assembly literal string LogCategory = "Hyphen::PluginManagerBase" + .field static famorassem initonly class [mscorlib]System.Type PluginType + .field static famorassem initonly class [mscorlib]System.Type ExposingPluginAttributeType + .field private bool initialized + .field private initonly class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection pluginDescriptors + .field private initonly class [mscorlib]System.AppDomain livingDomain + .field private initonly class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection pluginDescriptorsAsReadOnly + .field private initonly class Virtuoso.Hyphen.FusionContext fusionContext + .field private static class [mscorlib]System.EventHandler PrimaryPluginManagerInitialized + .field private class [mscorlib]System.EventHandler FusionCompleted + .field private class [mscorlib]System.EventHandler`1 PluginStateChange + .field private static class [mscorlib]System.Converter`2 'CS$<>9__CachedAnonymousMethodDelegate6' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method family hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Hyphen.FusionContext fusionContext) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 56,56 : 9,99 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\PluginManagerBase.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.1 + IL_0003: ldc.i4.1 + IL_0004: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::.ctor(class Virtuoso.Hyphen.FusionContext, + bool, + bool) + .line 56,56 : 102,103 '' + IL_0009: ret + } // end of method PluginManagerBase::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Hyphen.FusionContext fusionContext, + bool initializeMirandaContext, + bool initializeConfiguration) cil managed + { + // Code size 123 (0x7b) + .maxstack 2 + .locals init ([0] native int pluginLink) + .line 58,58 : 9,125 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor() + .line 60,60 : 13,39 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 61,61 : 17,66 '' + IL_0009: ldstr "fusionContext" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 63,63 : 13,57 '' + IL_0014: ldarg.0 + IL_0015: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_001a: stfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.PluginManagerBase::livingDomain + .line 64,64 : 13,48 '' + IL_001f: ldarg.0 + IL_0020: ldarg.1 + IL_0021: stfld class Virtuoso.Hyphen.FusionContext Virtuoso.Miranda.Plugins.PluginManagerBase::fusionContext + .line 66,66 : 13,71 '' + IL_0026: ldarg.0 + IL_0027: newobj instance void Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::.ctor() + IL_002c: stfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + .line 67,67 : 13,111 '' + IL_0031: ldarg.0 + IL_0032: ldarg.0 + IL_0033: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0038: newobj instance void Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection::.ctor(class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection) + IL_003d: stfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptorsAsReadOnly + .line 69,69 : 13,42 '' + IL_0042: ldarg.2 + IL_0043: brfalse.s IL_0072 + + .line 71,71 : 17,46 '' + IL_0045: ldarg.1 + IL_0046: callvirt instance bool Virtuoso.Hyphen.FusionContext::get_IsInvalid() + IL_004b: brtrue.s IL_0067 + + .line 73,73 : 21,72 '' + IL_004d: ldarg.1 + IL_004e: callvirt instance native int Virtuoso.Hyphen.FusionContext::get_NativePluginLink() + IL_0053: stloc.0 + .line 76,76 : 21,56 '' + IL_0054: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InvalidateCurrent() + .line 80,80 : 21,103 '' + IL_0059: ldloc.0 + IL_005a: call class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.MirandaPluginLink::FromPointer(native int) + IL_005f: ldarg.0 + IL_0060: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink, + class Virtuoso.Miranda.Plugins.PluginManagerBase) + IL_0065: br.s IL_0072 + + .line 83,83 : 21,66 '' + IL_0067: ldstr "fusionContext" + IL_006c: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0071: throw + + .line 86,86 : 13,41 '' + IL_0072: ldarg.3 + IL_0073: brfalse.s IL_007a + + .line 87,87 : 17,46 '' + IL_0075: call void Virtuoso.Miranda.Plugins.PMConfiguration::Initialize() + .line 88,88 : 9,10 '' + IL_007a: ret + } // end of method PluginManagerBase::.ctor + + .method public hidebysig specialname static + void add_PrimaryPluginManagerInitialized(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 39 (0x27) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldsfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_0005: stloc.0 + IL_0006: ldloc.0 + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: ldarg.0 + IL_000a: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_000f: castclass [mscorlib]System.EventHandler + IL_0014: stloc.2 + IL_0015: ldsflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_001a: ldloc.2 + IL_001b: ldloc.1 + IL_001c: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0021: stloc.0 + IL_0022: ldloc.0 + IL_0023: ldloc.1 + IL_0024: bne.un.s IL_0006 + + IL_0026: ret + } // end of method PluginManagerBase::add_PrimaryPluginManagerInitialized + + .method public hidebysig specialname static + void remove_PrimaryPluginManagerInitialized(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 39 (0x27) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldsfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_0005: stloc.0 + IL_0006: ldloc.0 + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: ldarg.0 + IL_000a: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_000f: castclass [mscorlib]System.EventHandler + IL_0014: stloc.2 + IL_0015: ldsflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_001a: ldloc.2 + IL_001b: ldloc.1 + IL_001c: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0021: stloc.0 + IL_0022: ldloc.0 + IL_0023: ldloc.1 + IL_0024: bne.un.s IL_0006 + + IL_0026: ret + } // end of method PluginManagerBase::remove_PrimaryPluginManagerInitialized + + .method public hidebysig specialname instance void + add_FusionCompleted(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method PluginManagerBase::add_FusionCompleted + + .method public hidebysig specialname instance void + remove_FusionCompleted(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method PluginManagerBase::remove_FusionCompleted + + .method public hidebysig specialname instance void + add_PluginStateChange(class [mscorlib]System.EventHandler`1 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler`1 V_0, + class [mscorlib]System.EventHandler`1 V_1, + class [mscorlib]System.EventHandler`1 V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass class [mscorlib]System.EventHandler`1 + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange>(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method PluginManagerBase::add_PluginStateChange + + .method public hidebysig specialname instance void + remove_PluginStateChange(class [mscorlib]System.EventHandler`1 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler`1 V_0, + class [mscorlib]System.EventHandler`1 V_1, + class [mscorlib]System.EventHandler`1 V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass class [mscorlib]System.EventHandler`1 + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange>(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method PluginManagerBase::remove_PluginStateChange + + .method family hidebysig static void FirePrimaryPluginManagerInitializedEvent(class Virtuoso.Miranda.Plugins.PluginManagerBase sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 102,102 : 13,57 '' + IL_0000: ldsfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_0005: brfalse.s IL_0013 + + .line 103,103 : 17,60 '' + IL_0007: ldsfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::PrimaryPluginManagerInitialized + IL_000c: ldarg.0 + IL_000d: ldarg.1 + IL_000e: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + .line 104,104 : 9,10 '' + IL_0013: ret + } // end of method PluginManagerBase::FirePrimaryPluginManagerInitializedEvent + + .method family hidebysig instance void + RaiseFusionCompletedEvent(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 108,108 : 13,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_0006: brfalse.s IL_0015 + + .line 109,109 : 17,42 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.PluginManagerBase::FusionCompleted + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + .line 110,110 : 9,10 '' + IL_0015: ret + } // end of method PluginManagerBase::RaiseFusionCompletedEvent + + .method family hidebysig instance void + FirePluginStateChangeEvent(class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs e) cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 114,114 : 13,43 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_0006: brfalse.s IL_0015 + + .line 115,115 : 17,44 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.PluginManagerBase::PluginStateChange + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: callvirt instance void class [mscorlib]System.EventHandler`1::Invoke(object, + !0) + .line 116,116 : 9,10 '' + IL_0015: ret + } // end of method PluginManagerBase::FirePluginStateChangeEvent + + .method family hidebysig specialname instance bool + get_Initialized() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 126,126 : 17,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.PluginManagerBase::initialized + IL_0006: ret + } // end of method PluginManagerBase::get_Initialized + + .method family hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + get_PluginDescriptors() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 132,132 : 19,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0006: ret + } // end of method PluginManagerBase::get_PluginDescriptors + + .method family hidebysig specialname instance class [mscorlib]System.AppDomain + get_LivingDomain() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 139,139 : 17,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.PluginManagerBase::livingDomain + IL_0006: ret + } // end of method PluginManagerBase::get_LivingDomain + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection + get_Plugins() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 147,147 : 17,52 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptorsAsReadOnly + IL_0006: ret + } // end of method PluginManagerBase::get_Plugins + + .method public hidebysig specialname instance class Virtuoso.Hyphen.FusionContext + get_FusionContext() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 155,155 : 17,38 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.FusionContext Virtuoso.Miranda.Plugins.PluginManagerBase::fusionContext + IL_0006: ret + } // end of method PluginManagerBase::get_FusionContext + + .method famorassem hidebysig newslot abstract virtual + instance void FindAndLoadPlugins() cil managed + { + } // end of method PluginManagerBase::FindAndLoadPlugins + + .method famorassem hidebysig static class [mscorlib]System.Type[] + GetExposedPlugins(class [mscorlib]System.Reflection.Assembly 'assembly') cil managed + { + // Code size 73 (0x49) + .maxstack 3 + .line 167,167 : 13,73 '' + IL_0000: ldarg.0 + IL_0001: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::ExposingPluginAttributeType + IL_0006: ldc.i4.0 + IL_0007: callvirt instance bool [mscorlib]System.Reflection.Assembly::IsDefined(class [mscorlib]System.Type, + bool) + IL_000c: brtrue.s IL_0015 + + .line 168,168 : 17,36 '' + IL_000e: ldc.i4.0 + IL_000f: newarr [mscorlib]System.Type + IL_0014: ret + + .line 170,174 : 13,20 '' + IL_0015: ldarg.0 + IL_0016: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::ExposingPluginAttributeType + IL_001b: ldc.i4.0 + IL_001c: callvirt instance object[] [mscorlib]System.Reflection.Assembly::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_0021: castclass class Virtuoso.Miranda.Plugins.ExposingPluginAttribute[] + IL_0026: ldsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.PluginManagerBase::'CS$<>9__CachedAnonymousMethodDelegate6' + IL_002b: brtrue.s IL_003e + + IL_002d: ldnull + IL_002e: ldftn class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::'b__5'(class Virtuoso.Miranda.Plugins.ExposingPluginAttribute) + IL_0034: newobj instance void class [mscorlib]System.Converter`2::.ctor(object, + native int) + IL_0039: stsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.PluginManagerBase::'CS$<>9__CachedAnonymousMethodDelegate6' + IL_003e: ldsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.PluginManagerBase::'CS$<>9__CachedAnonymousMethodDelegate6' + IL_0043: call !!1[] [mscorlib]System.Array::ConvertAll(!!0[], + class [mscorlib]System.Converter`2) + IL_0048: ret + } // end of method PluginManagerBase::GetExposedPlugins + + .method family hidebysig instance void + DeclareInitialized() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 179,179 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.PluginManagerBase::initialized + .line 180,180 : 9,10 '' + IL_0007: ret + } // end of method PluginManagerBase::DeclareInitialized + + .method family hidebysig newslot virtual + instance void AccountPluginDescriptor(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 82 (0x52) + .maxstack 2 + .line 184,184 : 13,42 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 185,185 : 17,69 '' + IL_0003: ldstr "pluginDescriptor" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 189,189 : 17,80 '' + .try + { + IL_000e: ldarg.0 + IL_000f: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0014: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 191,191 : 17,85 '' + IL_0019: ldarg.0 + IL_001a: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_001f: ldarg.1 + IL_0020: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0025: callvirt instance bool Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::ContainsDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_002a: brfalse.s IL_0037 + + .line 192,192 : 21,110 '' + IL_002c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginAlreadyInitialized() + IL_0031: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0036: throw + + .line 194,194 : 17,57 '' + IL_0037: ldarg.0 + IL_0038: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_003d: ldarg.1 + IL_003e: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0043: leave.s IL_0051 + + .line 198,198 : 17,68 '' + } // end .try + finally + { + IL_0045: ldarg.0 + IL_0046: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_004b: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0050: endfinally + .line 200,200 : 9,10 '' + } // end handler + IL_0051: ret + } // end of method PluginManagerBase::AccountPluginDescriptor + + .method famorassem hidebysig static class Virtuoso.Miranda.Plugins.MirandaPlugin + InstantiatePlugin(class [mscorlib]System.Type 'type') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 204,204 : 13,51 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: call class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginManagerBase::InstantiatePlugin(class [mscorlib]System.Type, + bool) + IL_0007: ret + } // end of method PluginManagerBase::InstantiatePlugin + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.MirandaPlugin + InstantiatePlugin(class [mscorlib]System.Type 'type', + bool acceptIndividualPlugins) cil managed + { + // Code size 124 (0x7c) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute loaderOptions) + .line 209,209 : 13,30 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 210,210 : 17,57 '' + IL_0003: ldstr "type" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 212,212 : 13,128 '' + IL_000e: ldarg.0 + IL_000f: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::PluginType + IL_0014: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0019: brfalse.s IL_002b + + IL_001b: ldarg.1 + IL_001c: brtrue.s IL_002d + + IL_001e: ldarg.0 + IL_001f: ldsfld class [mscorlib]System.Type Virtuoso.Hyphen.Mini.StandalonePlugin::PluginType + IL_0024: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0029: brfalse.s IL_002d + + .line 213,213 : 17,29 '' + IL_002b: ldnull + IL_002c: ret + + .line 215,215 : 13,110 '' + IL_002d: ldarg.0 + IL_002e: ldc.i4.0 + IL_002f: call class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::Get(class [mscorlib]System.Type, + valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner) + IL_0034: stloc.0 + .line 217,217 : 13,70 '' + IL_0035: ldloc.0 + IL_0036: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_RequiredVersion() + IL_003b: call class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + IL_0040: call bool [mscorlib]System.Version::op_GreaterThan(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_0045: brfalse.s IL_0054 + + .line 218,218 : 17,93 '' + IL_0047: ldarg.0 + IL_0048: ldloc.0 + IL_0049: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_RequiredVersion() + IL_004e: newobj instance void Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor(class [mscorlib]System.Type, + class [mscorlib]System.Version) + IL_0053: throw + + .line 220,220 : 13,90 '' + IL_0054: ldloc.0 + IL_0055: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaVersion() + IL_005a: callvirt instance bool Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::SupportsMirandaVersion(class [mscorlib]System.Version) + IL_005f: brtrue.s IL_006f + + .line 221,221 : 17,106 '' + IL_0061: ldarg.0 + IL_0062: ldloc.0 + IL_0063: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion() + IL_0068: ldc.i4.0 + IL_0069: newobj instance void Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor(class [mscorlib]System.Type, + class [mscorlib]System.Version, + bool) + IL_006e: throw + + .line 223,223 : 13,72 '' + IL_006f: ldarg.0 + IL_0070: ldc.i4.1 + IL_0071: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type, + bool) + IL_0076: castclass Virtuoso.Miranda.Plugins.MirandaPlugin + IL_007b: ret + } // end of method PluginManagerBase::InstantiatePlugin + + .method family hidebysig static void RegisterMenuItems(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 89 (0x59) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactList list, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItemAttrib, + [3] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000) + .line 230,230 : 17,79 '' + .try + { + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + .line 231,231 : 17,63 '' + IL_0006: ldarg.0 + IL_0007: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_000c: stloc.0 + .line 233,233 : 17,71 '' + IL_000d: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0012: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList() + IL_0017: stloc.1 + .line 235,235 : 73,98 '' + IL_0018: ldloc.0 + IL_0019: callvirt instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection() + IL_001e: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0023: stloc.3 + .try + { + IL_0024: br.s IL_0036 + + .line 235,235 : 26,69 '' + IL_0026: ldloca.s CS$5$0000 + IL_0028: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_002d: stloc.2 + .line 236,236 : 21,61 '' + IL_002e: ldloc.1 + IL_002f: ldloc.0 + IL_0030: ldloc.2 + IL_0031: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + .line 235,235 : 70,72 '' + IL_0036: ldloca.s CS$5$0000 + IL_0038: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_003d: brtrue.s IL_0026 + + IL_003f: leave.s IL_004f + + } // end .try + finally + { + IL_0041: ldloca.s CS$5$0000 + IL_0043: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0049: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_004e: endfinally + } // end handler + IL_004f: leave.s IL_0058 + + .line 240,240 : 17,67 '' + } // end .try + finally + { + IL_0051: ldarg.0 + IL_0052: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0057: endfinally + .line 242,242 : 9,10 '' + } // end handler + IL_0058: ret + } // end of method PluginManagerBase::RegisterMenuItems + + .method family hidebysig static void UnregisterMenuItems(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 89 (0x59) + .maxstack 8 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactList list, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItemAttrib, + [3] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000) + .line 248,248 : 17,79 '' + .try + { + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + .line 249,249 : 17,63 '' + IL_0006: ldarg.0 + IL_0007: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_000c: stloc.0 + .line 251,251 : 17,71 '' + IL_000d: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0012: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList() + IL_0017: stloc.1 + .line 253,253 : 73,88 '' + IL_0018: ldloc.0 + IL_0019: callvirt instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItems() + IL_001e: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_0023: stloc.3 + .try + { + IL_0024: br.s IL_003b + + .line 253,253 : 26,69 '' + IL_0026: ldloc.3 + IL_0027: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_002c: stloc.2 + .line 255,255 : 21,127 '' + IL_002d: ldloc.1 + IL_002e: ldloc.0 + IL_002f: ldloc.2 + IL_0030: ldnull + IL_0031: ldc.i4.4 + IL_0032: ldnull + IL_0033: ldc.i4.0 + IL_0034: ldc.i4.0 + IL_0035: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_003a: pop + .line 253,253 : 70,72 '' + IL_003b: ldloc.3 + IL_003c: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0041: brtrue.s IL_0026 + + IL_0043: leave.s IL_004f + + } // end .try + finally + { + IL_0045: ldloc.3 + IL_0046: brfalse.s IL_004e + + IL_0048: ldloc.3 + IL_0049: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_004e: endfinally + } // end handler + IL_004f: leave.s IL_0058 + + .line 261,261 : 17,67 '' + } // end .try + finally + { + IL_0051: ldarg.0 + IL_0052: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0057: endfinally + .line 263,263 : 9,10 '' + } // end handler + IL_0058: ret + } // end of method PluginManagerBase::UnregisterMenuItems + + .method family hidebysig instance void + HookPlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 54 (0x36) + .maxstack 1 + .line 269,269 : 17,79 '' + .try + { + IL_0000: ldarg.1 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + .line 271,271 : 17,65 '' + IL_0006: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_000b: pop + .line 273,273 : 17,86 '' + IL_000c: ldarg.1 + IL_000d: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_0012: callvirt instance !0[] class [mscorlib]System.Collections.Generic.List`1::ToArray() + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHooks(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor[]) + .line 274,274 : 17,80 '' + IL_001c: ldarg.1 + IL_001d: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_0022: callvirt instance !0[] class [mscorlib]System.Collections.Generic.List`1::ToArray() + IL_0027: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHooks(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor[]) + IL_002c: leave.s IL_0035 + + .line 278,278 : 17,67 '' + } // end .try + finally + { + IL_002e: ldarg.1 + IL_002f: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0034: endfinally + .line 280,280 : 9,10 '' + } // end handler + IL_0035: ret + } // end of method PluginManagerBase::HookPlugin + + .method public hidebysig instance void + DoContextCallback(class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 del, + !!T state) cil managed + { + // Code size 23 (0x17) + .maxstack 8 + .line 288,288 : 13,29 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 289,289 : 17,56 '' + IL_0003: ldstr "del" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 291,291 : 13,30 '' + IL_000e: ldarg.1 + IL_000f: ldarg.0 + IL_0010: ldarg.2 + IL_0011: callvirt instance void class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1::Invoke(class Virtuoso.Miranda.Plugins.PluginManagerBase, + !0) + .line 292,292 : 9,10 '' + IL_0016: ret + } // end of method PluginManagerBase::DoContextCallback + + .method public hidebysig newslot virtual + instance void SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState newState) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 296,296 : 13,63 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldc.i4.0 + IL_0004: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState, + bool) + .line 297,297 : 9,10 '' + IL_0009: ret + } // end of method PluginManagerBase::SetPluginState + + .method public hidebysig newslot virtual + instance void SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState newState, + bool rememberState) cil managed + { + // Code size 79 (0x4f) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.PluginState previousState) + .line 303,303 : 17,79 '' + .try + { + IL_0000: ldarg.1 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + .line 304,304 : 17,74 '' + IL_0006: ldarg.1 + IL_0007: callvirt instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState() + IL_000c: stloc.0 + .line 306,306 : 17,128 '' + IL_000d: ldloc.0 + IL_000e: ldarg.2 + IL_000f: beq.s IL_0019 + + IL_0011: ldloc.0 + IL_0012: ldc.i4.2 + IL_0013: bne.un.s IL_001b + + IL_0015: ldarg.2 + IL_0016: ldc.i4.1 + IL_0017: beq.s IL_001b + + .line 307,307 : 21,28 '' + IL_0019: leave.s IL_004e + + .line 309,309 : 17,62 '' + IL_001b: ldarg.1 + IL_001c: ldarg.2 + IL_001d: callvirt instance void Virtuoso.Miranda.Plugins.PluginDescriptor::UpdatePluginState(valuetype Virtuoso.Miranda.Plugins.PluginState) + .line 310,310 : 17,101 '' + IL_0022: ldarg.0 + IL_0023: ldloc.0 + IL_0024: ldarg.2 + IL_0025: newobj instance void Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::.ctor(valuetype Virtuoso.Miranda.Plugins.PluginState, + valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_002a: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::FirePluginStateChangeEvent(class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs) + .line 312,312 : 17,53 '' + IL_002f: ldarg.2 + IL_0030: ldc.i4.1 + IL_0031: bne.un.s IL_003d + + .line 313,313 : 21,67 '' + IL_0033: ldarg.0 + IL_0034: ldarg.1 + IL_0035: ldarg.3 + IL_0036: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::EnablePlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor, + bool) + IL_003b: br.s IL_0045 + + .line 315,315 : 21,68 '' + IL_003d: ldarg.0 + IL_003e: ldarg.1 + IL_003f: ldarg.3 + IL_0040: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::DisablePlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor, + bool) + IL_0045: leave.s IL_004e + + .line 319,319 : 17,67 '' + } // end .try + finally + { + IL_0047: ldarg.1 + IL_0048: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_004d: endfinally + .line 321,321 : 9,10 '' + } // end handler + IL_004e: ret + } // end of method PluginManagerBase::SetPluginState + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.PluginDescriptor + LoadPlugin(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 325,325 : 13,45 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.1 + IL_0003: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.PluginManagerBase::LoadPlugin(class Virtuoso.Miranda.Plugins.MirandaPlugin, + bool) + IL_0008: ret + } // end of method PluginManagerBase::LoadPlugin + + .method private hidebysig instance void + EnablePlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + bool rememberState) cil managed + { + // Code size 74 (0x4a) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 disabledPlugins, + [1] class [mscorlib]System.Collections.Generic.List`1 CS$2$0000) + .line 332,332 : 13,42 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::HookPlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 333,333 : 13,49 '' + IL_0007: ldarg.1 + IL_0008: call void Virtuoso.Miranda.Plugins.PluginManagerBase::RegisterMenuItems(class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 335,335 : 13,65 '' + IL_000d: ldarg.1 + IL_000e: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0013: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginEnableInternal() + .line 337,337 : 13,31 '' + IL_0018: ldarg.2 + IL_0019: brfalse.s IL_0049 + + .line 339,339 : 17,90 '' + IL_001b: call class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + IL_0020: callvirt instance class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::get_DisabledPlugins() + IL_0025: stloc.0 + .line 341,341 : 17,39 '' + IL_0026: ldloc.0 + IL_0027: dup + IL_0028: stloc.1 + IL_0029: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 342,342 : 21,80 '' + .try + { + IL_002e: ldloc.0 + IL_002f: ldarg.1 + IL_0030: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0035: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_UniqueName() + IL_003a: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_003f: pop + IL_0040: leave.s IL_0049 + + } // end .try + finally + { + IL_0042: ldloc.1 + IL_0043: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0048: endfinally + .line 344,344 : 9,10 '' + } // end handler + IL_0049: ret + } // end of method PluginManagerBase::EnablePlugin + + .method private hidebysig instance void + DisablePlugin(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + bool rememberState) cil managed + { + // Code size 128 (0x80) + .maxstack 2 + .locals init ([0] string typeName, + [1] class [mscorlib]System.Collections.Generic.List`1 disabledPlugins, + [2] class Virtuoso.Hyphen.MirandaPluginLink CS$2$0000, + [3] class [mscorlib]System.Collections.Generic.List`1 CS$2$0001) + .line 348,348 : 13,67 '' + IL_0000: ldarg.1 + IL_0001: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0006: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforePluginDisableInternal() + .line 350,350 : 13,63 '' + IL_000b: ldarg.1 + IL_000c: ldc.i4.1 + IL_000d: call void Virtuoso.Miranda.Plugins.Forms.PluginDialog::CloseDialogs(class Virtuoso.Miranda.Plugins.PluginDescriptor, + bool) + .line 351,351 : 13,51 '' + IL_0012: ldarg.1 + IL_0013: call void Virtuoso.Miranda.Plugins.PluginManagerBase::UnregisterMenuItems(class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 353,353 : 13,53 '' + IL_0018: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_001d: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0022: dup + IL_0023: stloc.2 + IL_0024: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 355,355 : 17,48 '' + .try + { + IL_0029: ldarg.1 + IL_002a: call void Virtuoso.Miranda.Plugins.PluginManagerBase::UnhookEvents(class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 356,356 : 17,51 '' + IL_002f: ldarg.1 + IL_0030: call void Virtuoso.Miranda.Plugins.PluginManagerBase::DestroyServices(class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 357,357 : 17,49 '' + IL_0035: ldarg.1 + IL_0036: call void Virtuoso.Miranda.Plugins.PluginManagerBase::DestroyEvents(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_003b: leave.s IL_0044 + + } // end .try + finally + { + IL_003d: ldloc.2 + IL_003e: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0043: endfinally + .line 360,360 : 13,31 '' + } // end handler + IL_0044: ldarg.2 + IL_0045: brfalse.s IL_007f + + .line 362,362 : 17,70 '' + IL_0047: ldarg.1 + IL_0048: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_004d: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_UniqueName() + IL_0052: stloc.0 + .line 363,363 : 17,90 '' + IL_0053: call class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + IL_0058: callvirt instance class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::get_DisabledPlugins() + IL_005d: stloc.1 + .line 365,365 : 17,39 '' + IL_005e: ldloc.1 + IL_005f: dup + IL_0060: stloc.3 + IL_0061: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 366,366 : 21,61 '' + .try + { + IL_0066: ldloc.1 + IL_0067: ldloc.0 + IL_0068: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Contains(!0) + IL_006d: brtrue.s IL_0076 + + .line 367,367 : 25,55 '' + IL_006f: ldloc.1 + IL_0070: ldloc.0 + IL_0071: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0076: leave.s IL_007f + + } // end .try + finally + { + IL_0078: ldloc.3 + IL_0079: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_007e: endfinally + .line 369,369 : 9,10 '' + } // end handler + IL_007f: ret + } // end of method PluginManagerBase::DisablePlugin + + .method family hidebysig instance bool + IsEnabled(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 60 (0x3c) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 disabledPlugins, + [1] bool CS$1$0000, + [2] class [mscorlib]System.Collections.Generic.List`1 CS$2$0001) + .line 373,373 : 13,32 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 374,374 : 17,59 '' + IL_0003: ldstr "plugin" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 376,376 : 13,86 '' + IL_000e: call class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + IL_0013: callvirt instance class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::get_DisabledPlugins() + IL_0018: stloc.0 + .line 378,378 : 13,35 '' + IL_0019: ldloc.0 + IL_001a: dup + IL_001b: stloc.2 + IL_001c: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 379,379 : 17,69 '' + .try + { + IL_0021: ldloc.0 + IL_0022: ldarg.1 + IL_0023: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_UniqueName() + IL_0028: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Contains(!0) + IL_002d: ldc.i4.0 + IL_002e: ceq + IL_0030: stloc.1 + IL_0031: leave.s IL_003a + + } // end .try + finally + { + IL_0033: ldloc.2 + IL_0034: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0039: endfinally + .line 380,380 : 9,10 '' + } // end handler + IL_003a: ldloc.1 + IL_003b: ret + } // end of method PluginManagerBase::IsEnabled + + .method private hidebysig static void DestroyEvents(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 69 (0x45) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle handle, + [1] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000) + .line 384,384 : 44,73 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHandles() + IL_0006: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_000b: stloc.1 + .try + { + IL_000c: br.s IL_002b + + .line 384,384 : 22,40 '' + IL_000e: ldloca.s CS$5$0000 + IL_0010: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0015: stloc.0 + .line 388,388 : 21,69 '' + .try + { + IL_0016: ldloc.0 + IL_0017: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginHandleUpdate(class Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject) + .line 389,389 : 21,54 '' + IL_001c: ldloc.0 + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.EventManager::RemoveEvent(class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle) + IL_0022: leave.s IL_002b + + .line 393,393 : 21,61 '' + } // end .try + finally + { + IL_0024: ldloc.0 + IL_0025: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_002a: endfinally + .line 384,384 : 41,43 '' + } // end handler + IL_002b: ldloca.s CS$5$0000 + IL_002d: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0032: brtrue.s IL_000e + + IL_0034: leave.s IL_0044 + + } // end .try + finally + { + IL_0036: ldloca.s CS$5$0000 + IL_0038: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_003e: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0043: endfinally + .line 396,396 : 9,10 '' + } // end handler + IL_0044: ret + } // end of method PluginManagerBase::DestroyEvents + + .method private hidebysig static void DestroyServices(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 60 (0x3c) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook, + [1] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000) + .line 401,401 : 13,61 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: pop + .line 403,403 : 45,78 '' + IL_0006: ldarg.0 + IL_0007: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_000c: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0011: stloc.1 + .try + { + IL_0012: br.s IL_0022 + + .line 403,403 : 22,41 '' + IL_0014: ldloca.s CS$5$0000 + IL_0016: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_001b: stloc.0 + .line 404,404 : 17,47 '' + IL_001c: ldloc.0 + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 403,403 : 42,44 '' + IL_0022: ldloca.s CS$5$0000 + IL_0024: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0029: brtrue.s IL_0014 + + IL_002b: leave.s IL_003b + + } // end .try + finally + { + IL_002d: ldloca.s CS$5$0000 + IL_002f: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0035: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_003a: endfinally + .line 405,405 : 9,10 '' + } // end handler + IL_003b: ret + } // end of method PluginManagerBase::DestroyServices + + .method private hidebysig static void UnhookEvents(class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor) cil managed + { + // Code size 60 (0x3c) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hookDesc, + [1] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000) + .line 410,410 : 13,61 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: pop + .line 412,412 : 49,76 '' + IL_0006: ldarg.0 + IL_0007: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_000c: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0011: stloc.1 + .try + { + IL_0012: br.s IL_0022 + + .line 412,412 : 22,45 '' + IL_0014: ldloca.s CS$5$0000 + IL_0016: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_001b: stloc.0 + .line 413,413 : 17,51 '' + IL_001c: ldloc.0 + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 412,412 : 46,48 '' + IL_0022: ldloca.s CS$5$0000 + IL_0024: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0029: brtrue.s IL_0014 + + IL_002b: leave.s IL_003b + + } // end .try + finally + { + IL_002d: ldloca.s CS$5$0000 + IL_002f: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0035: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_003a: endfinally + .line 414,414 : 9,10 '' + } // end handler + IL_003b: ret + } // end of method PluginManagerBase::UnhookEvents + + .method famorassem hidebysig newslot virtual + instance void Shutdown(bool lazy) cil managed + { + // Code size 104 (0x68) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + [1] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000) + .line 421,421 : 17,85 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0006: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 423,423 : 17,50 '' + IL_000b: call class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + IL_0010: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save() + .line 425,425 : 17,27 '' + IL_0015: ldarg.1 + IL_0016: brtrue.s IL_0059 + + .line 427,427 : 21,85 '' + IL_0018: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_001d: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::RaiseIsolatedModePluginsUnloadingEvent() + .line 429,429 : 67,89 '' + IL_0022: ldarg.0 + IL_0023: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0028: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_002d: stloc.1 + .try + { + IL_002e: br.s IL_0040 + + .line 429,429 : 30,63 '' + IL_0030: ldloca.s CS$5$0000 + IL_0032: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0037: stloc.0 + .line 430,430 : 25,80 '' + IL_0038: ldarg.0 + IL_0039: ldloc.0 + IL_003a: ldc.i4.0 + IL_003b: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState) + .line 429,429 : 64,66 '' + IL_0040: ldloca.s CS$5$0000 + IL_0042: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0047: brtrue.s IL_0030 + + IL_0049: leave.s IL_0059 + + } // end .try + finally + { + IL_004b: ldloca.s CS$5$0000 + IL_004d: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0053: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0058: endfinally + } // end handler + IL_0059: leave.s IL_0067 + + .line 435,435 : 17,73 '' + } // end .try + finally + { + IL_005b: ldarg.0 + IL_005c: ldfld class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::pluginDescriptors + IL_0061: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0066: endfinally + .line 438,438 : 9,10 '' + } // end handler + IL_0067: ret + } // end of method PluginManagerBase::Shutdown + + .method famorassem hidebysig newslot virtual + instance class Virtuoso.Miranda.Plugins.PluginDescriptor + LoadPlugin(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin, + bool accountDescriptor) cil managed + { + // Code size 19 (0x13) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) + .line 442,442 : 13,74 '' + IL_0000: ldarg.1 + IL_0001: call class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.PluginDescriptor::SetUp(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0006: stloc.0 + .line 444,444 : 13,35 '' + IL_0007: ldarg.2 + IL_0008: brfalse.s IL_0011 + + .line 445,445 : 17,53 '' + IL_000a: ldarg.0 + IL_000b: ldloc.0 + IL_000c: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::AccountPluginDescriptor(class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 447,447 : 13,31 '' + IL_0011: ldloc.0 + IL_0012: ret + } // end of method PluginManagerBase::LoadPlugin + + .method public hidebysig newslot virtual + instance void HandleException(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) cil managed + { + // Code size 77 (0x4d) + .maxstack 7 + .line 452,452 : 13,36 '' + IL_0000: ldarg.2 + IL_0001: brfalse.s IL_0040 + + .line 454,454 : 17,247 '' + IL_0003: ldc.i4.1 + IL_0004: ldarg.1 + IL_0005: ldarg.2 + IL_0006: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_000b: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0010: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable2_Text_PluginError() + IL_0015: call string [mscorlib]System.Environment::get_NewLine() + IL_001a: ldarg.2 + IL_001b: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0020: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_0025: ldarg.1 + IL_0026: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_002b: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_0030: ldc.i4.1 + IL_0031: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_0036: bne.un.s IL_004c + + .line 455,455 : 21,74 '' + IL_0038: ldarg.2 + IL_0039: ldc.i4.2 + IL_003a: callvirt instance void Virtuoso.Miranda.Plugins.PluginDescriptor::SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_003f: ret + + .line 459,459 : 17,81 '' + IL_0040: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create() + IL_0045: ldarg.1 + IL_0046: ldarg.2 + IL_0047: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 461,461 : 9,10 '' + IL_004c: ret + } // end of method PluginManagerBase::HandleException + + .method private hidebysig static class [mscorlib]System.Type + 'b__5'(class Virtuoso.Miranda.Plugins.ExposingPluginAttribute attrib) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 7 (0x7) + .maxstack 8 + .line 173,173 : 21,46 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.ExposingPluginAttribute::get_PluginType() + IL_0006: ret + } // end of method PluginManagerBase::'b__5' + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 31 (0x1f) + .maxstack 8 + .line 43,43 : 9,84 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.MirandaPlugin + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::PluginType + .line 44,44 : 9,111 '' + IL_000f: ldtoken Virtuoso.Miranda.Plugins.ExposingPluginAttribute + IL_0014: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0019: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::ExposingPluginAttributeType + IL_001e: ret + } // end of method PluginManagerBase::.cctor + + .event [mscorlib]System.EventHandler PrimaryPluginManagerInitialized + { + .removeon void Virtuoso.Miranda.Plugins.PluginManagerBase::remove_PrimaryPluginManagerInitialized(class [mscorlib]System.EventHandler) + .addon void Virtuoso.Miranda.Plugins.PluginManagerBase::add_PrimaryPluginManagerInitialized(class [mscorlib]System.EventHandler) + } // end of event PluginManagerBase::PrimaryPluginManagerInitialized + .event [mscorlib]System.EventHandler FusionCompleted + { + .addon instance void Virtuoso.Miranda.Plugins.PluginManagerBase::add_FusionCompleted(class [mscorlib]System.EventHandler) + .removeon instance void Virtuoso.Miranda.Plugins.PluginManagerBase::remove_FusionCompleted(class [mscorlib]System.EventHandler) + } // end of event PluginManagerBase::FusionCompleted + .event class [mscorlib]System.EventHandler`1 PluginStateChange + { + .addon instance void Virtuoso.Miranda.Plugins.PluginManagerBase::add_PluginStateChange(class [mscorlib]System.EventHandler`1) + .removeon instance void Virtuoso.Miranda.Plugins.PluginManagerBase::remove_PluginStateChange(class [mscorlib]System.EventHandler`1) + } // end of event PluginManagerBase::PluginStateChange + .property instance bool Initialized() + { + .get instance bool Virtuoso.Miranda.Plugins.PluginManagerBase::get_Initialized() + } // end of property PluginManagerBase::Initialized + .property instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + PluginDescriptors() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_PluginDescriptors() + } // end of property PluginManagerBase::PluginDescriptors + .property instance class [mscorlib]System.AppDomain + LivingDomain() + { + .get instance class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.PluginManagerBase::get_LivingDomain() + } // end of property PluginManagerBase::LivingDomain + .property instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection + Plugins() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + } // end of property PluginManagerBase::Plugins + .property instance class Virtuoso.Hyphen.FusionContext + FusionContext() + { + .get instance class Virtuoso.Hyphen.FusionContext Virtuoso.Miranda.Plugins.PluginManagerBase::get_FusionContext() + } // end of property PluginManagerBase::FusionContext +} // end of class Virtuoso.Miranda.Plugins.PluginManagerBase + +.class public auto ansi sealed beforefieldinit Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute + extends [mscorlib]System.Attribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 40 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ..@.....T..Allow + 4D 75 6C 74 69 70 6C 65 00 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 01 ) // rited. + .field private initonly string exportName + .method public hidebysig specialname instance string + get_ExportName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 32,32 : 19,37 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Custom\\CustomApiExportHandlerAttribute.cs' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::exportName + IL_0006: ret + } // end of method CustomApiExportHandlerAttribute::get_ExportName + + .method public hidebysig specialname rtspecialname + instance void .ctor(string exportName) cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .line 39,39 : 9,66 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + .line 41,41 : 13,36 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 41,41 : 37,83 '' + IL_0009: ldstr "exportName" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 42,42 : 13,42 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: stfld string Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::exportName + .line 43,43 : 9,10 '' + IL_001b: ret + } // end of method CustomApiExportHandlerAttribute::.ctor + + .property instance string ExportName() + { + .get instance string Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::get_ExportName() + } // end of property CustomApiExportHandlerAttribute::ExportName +} // end of class Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + extends [mscorlib]System.MulticastDelegate +{ + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CustomApiExportCallback::.ctor + + .method public hidebysig newslot virtual + instance object Invoke(object[] args) runtime managed + { + } // end of method CustomApiExportCallback::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(object[] args, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CustomApiExportCallback::BeginInvoke + + .method public hidebysig newslot virtual + instance object EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CustomApiExportCallback::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + +.class public auto ansi sealed beforefieldinit Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor + extends [mscorlib]System.Object +{ + .field private initonly string exportName + .field private initonly class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback callback + .method public hidebysig specialname instance string + get_ExportName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 33,33 : 19,37 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Custom\\CustomApiExportDescriptor.cs' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::exportName + IL_0006: ret + } // end of method CustomApiExportDescriptor::get_ExportName + + .method public hidebysig specialname instance class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + get_Callback() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 39,39 : 19,35 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::callback + IL_0006: ret + } // end of method CustomApiExportDescriptor::get_Callback + + .method public hidebysig specialname rtspecialname + instance void .ctor(string exportName, + class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback callback) cil managed + { + // Code size 54 (0x36) + .maxstack 8 + .line 46,46 : 9,94 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 48,48 : 13,50 '' + IL_0006: ldarg.1 + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: brfalse.s IL_0019 + + .line 48,48 : 51,97 '' + IL_000e: ldstr "exportName" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 49,49 : 13,34 '' + IL_0019: ldarg.2 + IL_001a: brtrue.s IL_0027 + + .line 49,49 : 35,79 '' + IL_001c: ldstr "callback" + IL_0021: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0026: throw + + .line 51,51 : 13,42 '' + IL_0027: ldarg.0 + IL_0028: ldarg.1 + IL_0029: stfld string Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::exportName + .line 52,52 : 13,38 '' + IL_002e: ldarg.0 + IL_002f: ldarg.2 + IL_0030: stfld class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::callback + .line 53,53 : 9,10 '' + IL_0035: ret + } // end of method CustomApiExportDescriptor::.ctor + + .method assembly hidebysig instance !!T + Execute(object[] args) cil managed + { + .param [1] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 33 (0x21) + .maxstack 2 + .locals init ([0] object result, + [1] !!T CS$0$0000) + .line 61,61 : 13,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::callback + IL_0006: ldarg.1 + IL_0007: callvirt instance object Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback::Invoke(object[]) + IL_000c: stloc.0 + .line 63,63 : 13,32 '' + IL_000d: ldloc.0 + IL_000e: brfalse.s IL_0017 + + .line 64,64 : 17,34 '' + IL_0010: ldloc.0 + IL_0011: unbox.any !!T + IL_0016: ret + + .line 66,66 : 17,38 '' + IL_0017: ldloca.s CS$0$0000 + IL_0019: initobj !!T + IL_001f: ldloc.1 + IL_0020: ret + } // end of method CustomApiExportDescriptor::Execute + + .property instance string ExportName() + { + .get instance string Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::get_ExportName() + } // end of property CustomApiExportDescriptor::ExportName + .property instance class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + Callback() + { + .get instance class Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::get_Callback() + } // end of property CustomApiExportDescriptor::Callback +} // end of class Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner +{ + .method public hidebysig newslot specialname abstract virtual + instance string get_Name() cil managed + { + } // end of method ISettingOwner::get_Name + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + } // end of property ISettingOwner::Name +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.MirandaPlugin + extends Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + implements Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner +{ + .class auto ansi sealed nested assembly beforefieldinit Hyphen + extends Virtuoso.Miranda.Plugins.MirandaPlugin + implements Virtuoso.Miranda.Plugins.IExceptionHandler, + Virtuoso.Miranda.Plugins.IExceptionReporter + { + .field private static initonly class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen singleton + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 43,43 : 13,29 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\MirandaPlugin.EmptyPlugin.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::.ctor() + .line 45,45 : 17,46 '' + IL_0006: ldarg.0 + IL_0007: call class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.PluginDescriptor::SetUp(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_000c: pop + .line 46,46 : 13,14 '' + IL_000d: ret + } // end of method Hyphen::.ctor + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen + get_Singleton() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 56,56 : 21,38 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::singleton + IL_0005: ret + } // end of method Hyphen::get_Singleton + + .method public hidebysig specialname virtual + instance string get_Name() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 62,62 : 23,39 '' + IL_0000: ldstr "Hyphen" + IL_0005: ret + } // end of method Hyphen::get_Name + + .method public hidebysig specialname virtual + instance string get_Author() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 67,67 : 23,41 '' + IL_0000: ldstr "virtuoso" + IL_0005: ret + } // end of method Hyphen::get_Author + + .method public hidebysig specialname virtual + instance string get_Description() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 72,72 : 23,43 '' + IL_0000: ldsfld string [mscorlib]System.String::Empty + IL_0005: ret + } // end of method Hyphen::get_Description + + .method public hidebysig specialname virtual + instance class [System]System.Uri + get_HomePage() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 77,77 : 23,61 '' + IL_0000: ldstr "http://www.none.com" + IL_0005: newobj instance void [System]System.Uri::.ctor(string) + IL_000a: ret + } // end of method Hyphen::get_HomePage + + .method public hidebysig specialname virtual + instance class [mscorlib]System.Version + get_Version() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 82,82 : 23,80 '' + IL_0000: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetExecutingAssembly() + IL_0005: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_000a: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_000f: ret + } // end of method Hyphen::get_Version + + .method public hidebysig specialname virtual + instance bool get_HasOptions() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 87,87 : 23,36 '' + IL_0000: ldc.i4.0 + IL_0001: ret + } // end of method Hyphen::get_HasOptions + + .method public hidebysig newslot virtual final + instance void HandleException(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 96,96 : 17,99 '' + IL_0000: ldarg.1 + IL_0001: ldarg.0 + IL_0002: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_HyphenCrashed() + IL_0007: ldc.i4.0 + IL_0008: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_000d: pop + .line 97,97 : 13,14 '' + IL_000e: ret + } // end of method Hyphen::HandleException + + .method private hidebysig newslot virtual final + instance void Virtuoso.Miranda.Plugins.IExceptionReporter.ReportException(class [mscorlib]System.Exception e) cil managed + { + .override Virtuoso.Miranda.Plugins.IExceptionReporter::ReportException + // Code size 47 (0x2f) + .maxstack 4 + .locals init ([0] class [System]System.Diagnostics.ProcessStartInfo startInfo) + .line 105,105 : 17,199 '' + IL_0000: ldstr "mailto:{0}\?subject={1}&body={2}" + IL_0005: ldstr "deml.tomas@seznam.cz" + IL_000a: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_HyphenCrashed() + IL_000f: ldarg.1 + IL_0010: callvirt instance string [mscorlib]System.Object::ToString() + IL_0015: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_001a: newobj instance void [System]System.Diagnostics.ProcessStartInfo::.ctor(string) + IL_001f: stloc.0 + .line 106,106 : 17,50 '' + IL_0020: ldloc.0 + IL_0021: ldc.i4.1 + IL_0022: callvirt instance void [System]System.Diagnostics.ProcessStartInfo::set_UseShellExecute(bool) + .line 108,108 : 17,42 '' + IL_0027: ldloc.0 + IL_0028: call class [System]System.Diagnostics.Process [System]System.Diagnostics.Process::Start(class [System]System.Diagnostics.ProcessStartInfo) + IL_002d: pop + .line 109,109 : 13,14 '' + IL_002e: ret + } // end of method Hyphen::Virtuoso.Miranda.Plugins.IExceptionReporter.ReportException + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 37,37 : 13,69 '' + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::.ctor() + IL_0005: stsfld class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::singleton + IL_000a: ret + } // end of method Hyphen::.cctor + + .property class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen + Singleton() + { + .get class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + } // end of property Hyphen::Singleton + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Name() + } // end of property Hyphen::Name + .property instance string Author() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Author() + } // end of property Hyphen::Author + .property instance string Description() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Description() + } // end of property Hyphen::Description + .property instance class [System]System.Uri + HomePage() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_HomePage() + } // end of property Hyphen::HomePage + .property instance class [mscorlib]System.Version + Version() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Version() + } // end of property Hyphen::Version + .property instance bool HasOptions() + { + .get instance bool Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_HasOptions() + } // end of property Hyphen::HasOptions + } // end of class Hyphen + + .field private class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection menuItemsCollection + .field private class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection menuItemsReadOnly + .field private class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 35 (0x23) + .maxstack 8 + .line 49,49 : 9,34 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\MirandaPlugin.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor() + .line 51,51 : 13,71 '' + IL_0006: ldarg.0 + IL_0007: newobj instance void Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection::.ctor() + IL_000c: stfld class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::menuItemsCollection + .line 52,52 : 13,96 '' + IL_0011: ldarg.0 + IL_0012: ldarg.0 + IL_0013: ldfld class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::menuItemsCollection + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection::.ctor(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection) + IL_001d: stfld class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection Virtuoso.Miranda.Plugins.MirandaPlugin::menuItemsReadOnly + .line 53,53 : 9,10 '' + IL_0022: ret + } // end of method MirandaPlugin::.ctor + + .method public hidebysig newslot specialname abstract virtual + instance string get_Name() cil managed + { + } // end of method MirandaPlugin::get_Name + + .method public hidebysig newslot specialname abstract virtual + instance string get_Author() cil managed + { + } // end of method MirandaPlugin::get_Author + + .method public hidebysig newslot specialname abstract virtual + instance string get_Description() cil managed + { + } // end of method MirandaPlugin::get_Description + + .method public hidebysig newslot specialname abstract virtual + instance class [System]System.Uri + get_HomePage() cil managed + { + } // end of method MirandaPlugin::get_HomePage + + .method public hidebysig newslot specialname abstract virtual + instance class [mscorlib]System.Version + get_Version() cil managed + { + } // end of method MirandaPlugin::get_Version + + .method public hidebysig newslot specialname abstract virtual + instance bool get_HasOptions() cil managed + { + } // end of method MirandaPlugin::get_HasOptions + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection + get_MenuItems() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 73,73 : 19,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection Virtuoso.Miranda.Plugins.MirandaPlugin::menuItemsReadOnly + IL_0006: ret + } // end of method MirandaPlugin::get_MenuItems + + .method public hidebysig specialname instance bool + get_Initialized() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 80,80 : 17,43 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::descriptor + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: ret + } // end of method MirandaPlugin::get_Initialized + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection + get_MenuItemsCollection() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 88,88 : 17,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::menuItemsCollection + IL_0006: ret + } // end of method MirandaPlugin::get_MenuItemsCollection + + .method famorassem hidebysig specialname + instance class Virtuoso.Miranda.Plugins.PluginDescriptor + get_Descriptor() cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 96,96 : 17,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::descriptor + IL_0006: brtrue.s IL_0013 + + .line 97,97 : 21,106 '' + IL_0008: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_000d: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0012: throw + + .line 99,99 : 17,35 '' + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::descriptor + IL_0019: ret + } // end of method MirandaPlugin::get_Descriptor + + .method assembly hidebysig specialname + instance void set_Descriptor(class Virtuoso.Miranda.Plugins.PluginDescriptor 'value') cil managed + { + // Code size 27 (0x1b) + .maxstack 8 + .line 103,103 : 17,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::descriptor + IL_0006: brfalse.s IL_0013 + + .line 104,104 : 21,110 '' + IL_0008: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginAlreadyInitialized() + IL_000d: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0012: throw + + .line 106,106 : 17,36 '' + IL_0013: ldarg.0 + IL_0014: ldarg.1 + IL_0015: stfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::descriptor + .line 107,107 : 13,14 '' + IL_001a: ret + } // end of method MirandaPlugin::set_Descriptor + + .method assembly hidebysig specialname + instance string get_UniqueName() cil managed + { + // Code size 29 (0x1d) + .maxstack 8 + .line 114,114 : 17,76 '' + IL_0000: ldstr "{0}.{1}.{2}" + IL_0005: ldarg.0 + IL_0006: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Author() + IL_000b: ldarg.0 + IL_000c: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_0011: ldarg.0 + IL_0012: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + IL_0017: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_001c: ret + } // end of method MirandaPlugin::get_UniqueName + + .method public hidebysig virtual final + instance int32 GetHashCode() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 124,124 : 13,53 '' + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0006: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_000b: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0010: ret + } // end of method MirandaPlugin::GetHashCode + + .method public hidebysig virtual final + instance bool Equals(object obj) cil managed + { + // Code size 32 (0x20) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin other) + .line 129,129 : 13,29 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_0005 + + .line 129,129 : 30,43 '' + IL_0003: ldc.i4.0 + IL_0004: ret + + .line 130,130 : 13,56 '' + IL_0005: ldarg.1 + IL_0006: isinst Virtuoso.Miranda.Plugins.MirandaPlugin + IL_000b: stloc.0 + .line 132,132 : 13,31 '' + IL_000c: ldloc.0 + IL_000d: brtrue.s IL_0011 + + .line 132,132 : 32,45 '' + IL_000f: ldc.i4.0 + IL_0010: ret + + .line 133,133 : 13,57 '' + IL_0011: ldarg.0 + IL_0012: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0017: ldloc.0 + IL_0018: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_001d: ceq + IL_001f: ret + } // end of method MirandaPlugin::Equals + + .method public hidebysig virtual instance string + ToString() cil managed + { + // Code size 29 (0x1d) + .maxstack 8 + .line 138,138 : 13,77 '' + IL_0000: ldstr "{0} by {1}, v{2}" + IL_0005: ldarg.0 + IL_0006: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_000b: ldarg.0 + IL_000c: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Author() + IL_0011: ldarg.0 + IL_0012: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + IL_0017: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_001c: ret + } // end of method MirandaPlugin::ToString + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.IExceptionHandler + GetExceptionHandler(class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) cil managed + { + // Code size 70 (0x46) + .maxstack 1 + .line 143,143 : 13,36 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 144,144 : 17,63 '' + IL_0003: ldstr "descriptor" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 147,147 : 13,56 '' + IL_000e: ldarg.0 + IL_000f: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0014: isinst Virtuoso.Miranda.Plugins.IExceptionHandler + IL_0019: brfalse.s IL_0027 + + .line 148,148 : 17,61 '' + IL_001b: ldarg.0 + IL_001c: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0021: castclass Virtuoso.Miranda.Plugins.IExceptionHandler + IL_0026: ret + + .line 150,150 : 18,47 '' + IL_0027: ldarg.0 + IL_0028: callvirt instance bool Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsStandalone() + IL_002d: brtrue.s IL_003a + + .line 151,151 : 17,61 '' + IL_002f: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0034: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_0039: ret + + .line 154,154 : 17,74 '' + IL_003a: ldarg.0 + IL_003b: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0040: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0045: ret + } // end of method MirandaPlugin::GetExceptionHandler + + .method assembly hidebysig newslot strict virtual + instance void AfterMenuItemsPopulationInternal(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection items) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 161,161 : 103,135 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterMenuItemsPopulation(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection) + .line 161,161 : 136,137 '' + IL_0007: ret + } // end of method MirandaPlugin::AfterMenuItemsPopulationInternal + + .method family hidebysig newslot virtual + instance void AfterMenuItemsPopulation(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection items) cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 162,162 : 96,97 '' + IL_0000: ret + } // end of method MirandaPlugin::AfterMenuItemsPopulation + + .method assembly hidebysig newslot strict virtual + instance void BeforeMirandaShutdownInternal() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 164,164 : 65,89 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforeMirandaShutdown() + .line 164,164 : 90,91 '' + IL_0006: ret + } // end of method MirandaPlugin::BeforeMirandaShutdownInternal + + .method family hidebysig newslot virtual + instance void BeforeMirandaShutdown() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 165,165 : 58,59 '' + IL_0000: ret + } // end of method MirandaPlugin::BeforeMirandaShutdown + + .method assembly hidebysig newslot strict virtual + instance void BeforePluginDisableInternal() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 167,167 : 63,85 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforePluginDisable() + .line 167,167 : 86,87 '' + IL_0006: ret + } // end of method MirandaPlugin::BeforePluginDisableInternal + + .method family hidebysig newslot virtual + instance void BeforePluginDisable() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 168,168 : 56,57 '' + IL_0000: ret + } // end of method MirandaPlugin::BeforePluginDisable + + .method assembly hidebysig newslot strict virtual + instance void AfterPluginEnableInternal() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 170,170 : 61,81 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginEnable() + .line 170,170 : 82,83 '' + IL_0006: ret + } // end of method MirandaPlugin::AfterPluginEnableInternal + + .method family hidebysig newslot virtual + instance void AfterPluginEnable() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 171,171 : 54,55 '' + IL_0000: ret + } // end of method MirandaPlugin::AfterPluginEnable + + .method assembly hidebysig newslot strict virtual + instance void AfterPluginInitializationInternal() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 173,173 : 69,97 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginInitialization() + .line 173,173 : 98,99 '' + IL_0006: ret + } // end of method MirandaPlugin::AfterPluginInitializationInternal + + .method family hidebysig newslot virtual + instance void AfterPluginInitialization() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 174,174 : 62,63 '' + IL_0000: ret + } // end of method MirandaPlugin::AfterPluginInitialization + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + } // end of property MirandaPlugin::Name + .property instance string Author() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Author() + } // end of property MirandaPlugin::Author + .property instance string Description() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Description() + } // end of property MirandaPlugin::Description + .property instance class [System]System.Uri + HomePage() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + } // end of property MirandaPlugin::HomePage + .property instance class [mscorlib]System.Version + Version() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + } // end of property MirandaPlugin::Version + .property instance bool HasOptions() + { + .get instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_HasOptions() + } // end of property MirandaPlugin::HasOptions + .property instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection + MenuItems() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItems() + } // end of property MirandaPlugin::MenuItems + .property instance bool Initialized() + { + .get instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized() + } // end of property MirandaPlugin::Initialized + .property instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection + MenuItemsCollection() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection() + } // end of property MirandaPlugin::MenuItemsCollection + .property instance class Virtuoso.Miranda.Plugins.PluginDescriptor + Descriptor() + { + .set instance void Virtuoso.Miranda.Plugins.MirandaPlugin::set_Descriptor(class Virtuoso.Miranda.Plugins.PluginDescriptor) + .get instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + } // end of property MirandaPlugin::Descriptor + .property instance string UniqueName() + { + .get instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_UniqueName() + } // end of property MirandaPlugin::UniqueName +} // end of class Virtuoso.Miranda.Plugins.MirandaPlugin + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.IExceptionReporter +{ + .method public hidebysig newslot abstract virtual + instance void ReportException(class [mscorlib]System.Exception e) cil managed + { + } // end of method IExceptionReporter::ReportException + +} // end of class Virtuoso.Miranda.Plugins.IExceptionReporter + +.class public abstract auto ansi beforefieldinit Virtuoso.Hyphen.Mini.StandalonePlugin + extends Virtuoso.Miranda.Plugins.MirandaPlugin +{ + .field static assembly initonly class [mscorlib]System.Type PluginType + .field private initonly class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection customApiHandlers + .field private class Virtuoso.Hyphen.Mini.Module module + .field private bool hasCustomPluginInterfaces + .field private bool hasCustomPluginInfo + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 32 (0x20) + .maxstack 8 + .line 78,78 : 9,55 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\StandalonePlugin.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: stfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInterfaces + .line 84,84 : 9,49 '' + IL_0007: ldarg.0 + IL_0008: ldc.i4.1 + IL_0009: stfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInfo + .line 46,46 : 9,37 '' + IL_000e: ldarg.0 + IL_000f: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::.ctor() + .line 48,48 : 13,75 '' + IL_0014: ldarg.0 + IL_0015: newobj instance void Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection::.ctor() + IL_001a: stfld class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection Virtuoso.Hyphen.Mini.StandalonePlugin::customApiHandlers + .line 49,49 : 9,10 '' + IL_001f: ret + } // end of method StandalonePlugin::.ctor + + .method famorassem hidebysig specialname + instance class Virtuoso.Hyphen.Mini.Module + get_Module() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 57,57 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.Mini.Module Virtuoso.Hyphen.Mini.StandalonePlugin::module + IL_0006: ret + } // end of method StandalonePlugin::get_Module + + .method assembly hidebysig specialname + instance void set_Module(class Virtuoso.Hyphen.Mini.Module 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 58,58 : 28,48 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class Virtuoso.Hyphen.Mini.Module Virtuoso.Hyphen.Mini.StandalonePlugin::module + .line 58,58 : 49,50 '' + IL_0007: ret + } // end of method StandalonePlugin::set_Module + + .method public hidebysig newslot specialname abstract virtual + instance string get_Copyright() cil managed + { + } // end of method StandalonePlugin::get_Copyright + + .method public hidebysig newslot specialname abstract virtual + instance string get_AuthorEmail() cil managed + { + } // end of method StandalonePlugin::get_AuthorEmail + + .method public hidebysig newslot specialname virtual + instance valuetype Virtuoso.Hyphen.Native.PluginFlags + get_Flags() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 65,65 : 50,82 '' + IL_0000: ldc.i4.1 + IL_0001: ret + } // end of method StandalonePlugin::get_Flags + + .method public hidebysig newslot specialname abstract virtual + instance int32 get_ReplacesDefaultModule() cil managed + { + } // end of method StandalonePlugin::get_ReplacesDefaultModule + + .method public hidebysig newslot specialname abstract virtual + instance valuetype [mscorlib]System.Guid + get_UUID() cil managed + { + } // end of method StandalonePlugin::get_UUID + + .method public hidebysig newslot specialname abstract virtual + instance valuetype [mscorlib]System.Guid[] + get_PluginInterfaces() cil managed + { + } // end of method StandalonePlugin::get_PluginInterfaces + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection + get_CustomApiHandlers() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 75,75 : 19,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection Virtuoso.Hyphen.Mini.StandalonePlugin::customApiHandlers + IL_0006: ret + } // end of method StandalonePlugin::get_CustomApiHandlers + + .method assembly hidebysig specialname + instance bool get_HasCustomPluginInterfaces() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 81,81 : 19,52 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInterfaces + IL_0006: ret + } // end of method StandalonePlugin::get_HasCustomPluginInterfaces + + .method assembly hidebysig specialname + instance bool get_HasCustomPluginInfo() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 87,87 : 19,46 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInfo + IL_0006: ret + } // end of method StandalonePlugin::get_HasCustomPluginInfo + + .method assembly hidebysig instance int32 + BeforeMirandaShutdownTriggerService(native uint wParam, + native int lParam) cil managed + { + .custom instance void Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::.ctor(string) = ( 01 00 1C 4D 69 72 61 6E 64 61 2F 53 79 73 74 65 // ...Miranda/Syste + 6D 2F 4F 6B 54 6F 45 78 69 74 45 76 65 6E 74 00 // m/OkToExitEvent. + 00 ) + // Code size 20 (0x14) + .maxstack 8 + .line 99,99 : 13,37 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforeMirandaShutdown() + .line 100,100 : 13,29 '' + IL_0006: ldarg.0 + IL_0007: ldfld class Virtuoso.Hyphen.Mini.Module Virtuoso.Hyphen.Mini.StandalonePlugin::module + IL_000c: callvirt instance int32 Virtuoso.Hyphen.Mini.Module::Unload() + IL_0011: pop + .line 102,102 : 13,22 '' + IL_0012: ldc.i4.0 + IL_0013: ret + } // end of method StandalonePlugin::BeforeMirandaShutdownTriggerService + + .method famorassem hidebysig newslot virtual + instance native int MirandaPluginInfo(uint32 version, + bool ex) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 221 (0xdd) + .maxstack 3 + .locals init ([0] class Virtuoso.Hyphen.Native.PLUGININFO info, + [1] native int pInfo) + .line 108,108 : 13,41 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: stfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInfo + .line 109,109 : 13,74 '' + IL_0007: ldarg.2 + IL_0008: brtrue.s IL_0011 + + IL_000a: newobj instance void Virtuoso.Hyphen.Native.PLUGININFO::.ctor() + IL_000f: br.s IL_0016 + + IL_0011: newobj instance void Virtuoso.Hyphen.Native.PLUGININFOEX::.ctor() + IL_0016: stloc.0 + .line 111,111 : 13,56 '' + IL_0017: ldloc.0 + IL_0018: ldloc.0 + IL_0019: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_001e: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0023: stfld int32 Virtuoso.Hyphen.Native.PLUGININFO::Size + .line 112,112 : 13,34 '' + IL_0028: ldloc.0 + IL_0029: ldarg.0 + IL_002a: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Author() + IL_002f: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Author + .line 113,113 : 13,44 '' + IL_0034: ldloc.0 + IL_0035: ldarg.0 + IL_0036: callvirt instance string Virtuoso.Hyphen.Mini.StandalonePlugin::get_AuthorEmail() + IL_003b: stfld string Virtuoso.Hyphen.Native.PLUGININFO::AuthorEmail + .line 114,114 : 13,40 '' + IL_0040: ldloc.0 + IL_0041: ldarg.0 + IL_0042: callvirt instance string Virtuoso.Hyphen.Mini.StandalonePlugin::get_Copyright() + IL_0047: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Copyright + .line 115,115 : 13,44 '' + IL_004c: ldloc.0 + IL_004d: ldarg.0 + IL_004e: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Description() + IL_0053: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Description + .line 116,116 : 13,83 '' + IL_0058: ldloc.0 + IL_0059: ldarg.0 + IL_005a: callvirt instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + IL_005f: ldnull + IL_0060: call bool [System]System.Uri::op_Equality(class [System]System.Uri, + class [System]System.Uri) + IL_0065: brtrue.s IL_0074 + + IL_0067: ldarg.0 + IL_0068: callvirt instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + IL_006d: callvirt instance string [mscorlib]System.Object::ToString() + IL_0072: br.s IL_0079 + + IL_0074: ldsfld string [mscorlib]System.String::Empty + IL_0079: stfld string Virtuoso.Hyphen.Native.PLUGININFO::HomePage + .line 117,117 : 13,38 '' + IL_007e: ldloc.0 + IL_007f: ldarg.0 + IL_0080: callvirt instance valuetype Virtuoso.Hyphen.Native.PluginFlags Virtuoso.Hyphen.Mini.StandalonePlugin::get_Flags() + IL_0085: stfld uint8 Virtuoso.Hyphen.Native.PLUGININFO::Flags + .line 118,118 : 13,64 '' + IL_008a: ldloc.0 + IL_008b: ldarg.0 + IL_008c: callvirt instance int32 Virtuoso.Hyphen.Mini.StandalonePlugin::get_ReplacesDefaultModule() + IL_0091: stfld int32 Virtuoso.Hyphen.Native.PLUGININFO::ReplacesDefaultModule + .line 119,119 : 13,35 '' + IL_0096: ldloc.0 + IL_0097: ldarg.0 + IL_0098: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_009d: stfld string Virtuoso.Hyphen.Native.PLUGININFO::ShortName + .line 120,120 : 13,64 '' + IL_00a2: ldloc.0 + IL_00a3: ldarg.0 + IL_00a4: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + IL_00a9: call uint32 Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToMirandaVersion(class [mscorlib]System.Version) + IL_00ae: stfld uint32 Virtuoso.Hyphen.Native.PLUGININFO::Version + .line 121,121 : 13,20 '' + IL_00b3: ldarg.2 + IL_00b4: brfalse.s IL_00c7 + + .line 121,121 : 21,54 '' + IL_00b6: ldloc.0 + IL_00b7: castclass Virtuoso.Hyphen.Native.PLUGININFOEX + IL_00bc: ldarg.0 + IL_00bd: callvirt instance valuetype [mscorlib]System.Guid Virtuoso.Hyphen.Mini.StandalonePlugin::get_UUID() + IL_00c2: stfld valuetype [mscorlib]System.Guid Virtuoso.Hyphen.Native.PLUGININFOEX::UUID + .line 123,123 : 13,60 '' + IL_00c7: ldloc.0 + IL_00c8: ldfld int32 Virtuoso.Hyphen.Native.PLUGININFO::Size + IL_00cd: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_00d2: stloc.1 + .line 124,124 : 13,56 '' + IL_00d3: ldloc.0 + IL_00d4: ldloc.1 + IL_00d5: ldc.i4.0 + IL_00d6: call void [mscorlib]System.Runtime.InteropServices.Marshal::StructureToPtr(object, + native int, + bool) + .line 126,126 : 13,26 '' + IL_00db: ldloc.1 + IL_00dc: ret + } // end of method StandalonePlugin::MirandaPluginInfo + + .method famorassem hidebysig newslot virtual + instance native int MirandaPluginInterfaces() cil managed + { + // Code size 150 (0x96) + .maxstack 5 + .locals init ([0] valuetype [mscorlib]System.Guid[] interfaces, + [1] int32 uuidSize, + [2] native int pInterfaces, + [3] uint8[] uuidBytes, + [4] int64 baseAddr, + [5] int32 i, + [6] valuetype [mscorlib]System.Guid CS$0$0000) + .line 131,131 : 13,47 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: stfld bool Virtuoso.Hyphen.Mini.StandalonePlugin::hasCustomPluginInterfaces + .line 132,132 : 13,50 '' + IL_0007: ldarg.0 + IL_0008: callvirt instance valuetype [mscorlib]System.Guid[] Virtuoso.Hyphen.Mini.StandalonePlugin::get_PluginInterfaces() + IL_000d: stloc.0 + .line 134,134 : 13,57 '' + IL_000e: ldtoken [mscorlib]System.Guid + IL_0013: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0018: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_001d: stloc.1 + .line 135,135 : 13,91 '' + IL_001e: ldloc.0 + IL_001f: ldlen + IL_0020: conv.i4 + IL_0021: ldc.i4.1 + IL_0022: add + IL_0023: ldloc.1 + IL_0024: mul + IL_0025: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_002a: stloc.2 + .line 137,137 : 13,37 '' + IL_002b: ldnull + IL_002c: stloc.3 + .line 138,138 : 13,51 '' + IL_002d: ldloca.s pInterfaces + IL_002f: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0034: stloc.s baseAddr + .line 140,140 : 18,28 '' + IL_0036: ldc.i4.0 + IL_0037: stloc.s i + IL_0039: br.s IL_0066 + + .line 142,142 : 17,57 '' + IL_003b: ldloc.0 + IL_003c: ldloc.s i + IL_003e: ldelema [mscorlib]System.Guid + IL_0043: call instance uint8[] [mscorlib]System.Guid::ToByteArray() + IL_0048: stloc.3 + .line 143,143 : 17,99 '' + IL_0049: ldloc.3 + IL_004a: ldc.i4.0 + IL_004b: ldloc.s baseAddr + IL_004d: ldloc.s i + IL_004f: ldloc.1 + IL_0050: mul + IL_0051: conv.i8 + IL_0052: add + IL_0053: newobj instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_0058: ldloc.3 + IL_0059: ldlen + IL_005a: conv.i4 + IL_005b: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + .line 140,140 : 52,55 '' + IL_0060: ldloc.s i + IL_0062: ldc.i4.1 + IL_0063: add + IL_0064: stloc.s i + .line 140,140 : 29,50 '' + IL_0066: ldloc.s i + IL_0068: ldloc.0 + IL_0069: ldlen + IL_006a: conv.i4 + IL_006b: blt.s IL_003b + + .line 147,147 : 13,81 '' + IL_006d: call valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_Last() + IL_0072: stloc.s CS$0$0000 + IL_0074: ldloca.s CS$0$0000 + IL_0076: call instance uint8[] [mscorlib]System.Guid::ToByteArray() + IL_007b: stloc.3 + .line 148,148 : 13,111 '' + IL_007c: ldloc.3 + IL_007d: ldc.i4.0 + IL_007e: ldloc.s baseAddr + IL_0080: ldloc.0 + IL_0081: ldlen + IL_0082: conv.i4 + IL_0083: ldloc.1 + IL_0084: mul + IL_0085: conv.i8 + IL_0086: add + IL_0087: newobj instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_008c: ldloc.3 + IL_008d: ldlen + IL_008e: conv.i4 + IL_008f: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + .line 150,150 : 13,32 '' + IL_0094: ldloc.2 + IL_0095: ret + } // end of method StandalonePlugin::MirandaPluginInterfaces + + .method assembly hidebysig newslot strict virtual + instance void AfterModuleInitializationInternal() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 153,153 : 69,97 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::AfterModuleInitialization() + .line 153,153 : 98,99 '' + IL_0006: ret + } // end of method StandalonePlugin::AfterModuleInitializationInternal + + .method family hidebysig newslot virtual + instance void AfterModuleInitialization() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 154,154 : 62,63 '' + IL_0000: ret + } // end of method StandalonePlugin::AfterModuleInitialization + + .method assembly hidebysig newslot strict virtual + instance void LoadInternal(native int pPluginLink) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 156,156 : 66,84 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::Load(native int) + .line 156,156 : 85,86 '' + IL_0007: ret + } // end of method StandalonePlugin::LoadInternal + + .method family hidebysig newslot virtual + instance void Load(native int pPluginLink) cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 157,157 : 59,60 '' + IL_0000: ret + } // end of method StandalonePlugin::Load + + .method assembly hidebysig newslot strict virtual + instance void UnloadInternal() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 159,159 : 50,59 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Hyphen.Mini.StandalonePlugin::Unload() + .line 159,159 : 60,61 '' + IL_0006: ret + } // end of method StandalonePlugin::UnloadInternal + + .method family hidebysig newslot virtual + instance void Unload() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 160,160 : 43,44 '' + IL_0000: ret + } // end of method StandalonePlugin::Unload + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 37,37 : 9,77 '' + IL_0000: ldtoken Virtuoso.Hyphen.Mini.StandalonePlugin + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Hyphen.Mini.StandalonePlugin::PluginType + IL_000f: ret + } // end of method StandalonePlugin::.cctor + + .property instance class Virtuoso.Hyphen.Mini.Module + Module() + { + .get instance class Virtuoso.Hyphen.Mini.Module Virtuoso.Hyphen.Mini.StandalonePlugin::get_Module() + .set instance void Virtuoso.Hyphen.Mini.StandalonePlugin::set_Module(class Virtuoso.Hyphen.Mini.Module) + } // end of property StandalonePlugin::Module + .property instance string Copyright() + { + .get instance string Virtuoso.Hyphen.Mini.StandalonePlugin::get_Copyright() + } // end of property StandalonePlugin::Copyright + .property instance string AuthorEmail() + { + .get instance string Virtuoso.Hyphen.Mini.StandalonePlugin::get_AuthorEmail() + } // end of property StandalonePlugin::AuthorEmail + .property instance valuetype Virtuoso.Hyphen.Native.PluginFlags + Flags() + { + .get instance valuetype Virtuoso.Hyphen.Native.PluginFlags Virtuoso.Hyphen.Mini.StandalonePlugin::get_Flags() + } // end of property StandalonePlugin::Flags + .property instance int32 ReplacesDefaultModule() + { + .get instance int32 Virtuoso.Hyphen.Mini.StandalonePlugin::get_ReplacesDefaultModule() + } // end of property StandalonePlugin::ReplacesDefaultModule + .property instance valuetype [mscorlib]System.Guid + UUID() + { + .get instance valuetype [mscorlib]System.Guid Virtuoso.Hyphen.Mini.StandalonePlugin::get_UUID() + } // end of property StandalonePlugin::UUID + .property instance valuetype [mscorlib]System.Guid[] + PluginInterfaces() + { + .get instance valuetype [mscorlib]System.Guid[] Virtuoso.Hyphen.Mini.StandalonePlugin::get_PluginInterfaces() + } // end of property StandalonePlugin::PluginInterfaces + .property instance class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection + CustomApiHandlers() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection Virtuoso.Hyphen.Mini.StandalonePlugin::get_CustomApiHandlers() + } // end of property StandalonePlugin::CustomApiHandlers + .property instance bool HasCustomPluginInterfaces() + { + .get instance bool Virtuoso.Hyphen.Mini.StandalonePlugin::get_HasCustomPluginInterfaces() + } // end of property StandalonePlugin::HasCustomPluginInterfaces + .property instance bool HasCustomPluginInfo() + { + .get instance bool Virtuoso.Hyphen.Mini.StandalonePlugin::get_HasCustomPluginInfo() + } // end of property StandalonePlugin::HasCustomPluginInfo +} // end of class Virtuoso.Hyphen.Mini.StandalonePlugin + +.class public abstract auto ansi beforefieldinit Virtuoso.Hyphen.Mini.Custom.DatabaseDriver + extends Virtuoso.Hyphen.Mini.StandalonePlugin +{ + .custom instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(valuetype Virtuoso.Miranda.Plugins.LoaderOptions) = ( 01 00 06 00 00 00 00 00 ) + .field private valuetype [mscorlib]System.Runtime.InteropServices.GCHandle DatabaseLinkGcHandle + .field private valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 DatabaseLinkHandle + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Disposed + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 41,41 : 9,35 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Custom\\DatabaseDriver.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Mini.StandalonePlugin::.ctor() + .line 41,41 : 38,39 '' + IL_0006: ret + } // end of method DatabaseDriver::.ctor + + .method family hidebysig virtual instance void + Finalize() cil managed + { + // Code size 18 (0x12) + .maxstack 2 + .line 45,45 : 13,31 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: call instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::UnloadPreThunk(int32) + IL_0007: pop + IL_0008: leave.s IL_0011 + + .line 46,46 : 9,10 '' + } // end .try + finally + { + IL_000a: ldarg.0 + IL_000b: call instance void [mscorlib]System.Object::Finalize() + IL_0010: endfinally + .line 46,46 : 9,10 '' + } // end handler + IL_0011: ret + } // end of method DatabaseDriver::Finalize + + .method assembly hidebysig instance object + DatabasePluginInfoThunk(object[] args) cil managed + { + .custom instance void Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::.ctor(string) = ( 01 00 12 44 61 74 61 62 61 73 65 50 6C 75 67 69 // ...DatabasePlugi + 6E 49 6E 66 6F 00 00 ) // nInfo.. + // Code size 195 (0xc3) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Hyphen.Mini.Custom.DatabaseLink link) + .line 55,55 : 13,52 '' + IL_0000: ldloca.s link + IL_0002: initobj Virtuoso.Hyphen.Mini.Custom.DatabaseLink + .line 57,57 : 13,62 '' + IL_0008: ldloca.s link + IL_000a: ldtoken Virtuoso.Hyphen.Mini.Custom.DatabaseLink + IL_000f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0014: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0019: stfld int32 Virtuoso.Hyphen.Mini.Custom.DatabaseLink::Size + .line 58,58 : 13,53 '' + IL_001e: ldloca.s link + IL_0020: ldarg.0 + IL_0021: dup + IL_0022: ldvirtftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::GetCapabilityThunk(int32) + IL_0028: newobj instance void Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype::.ctor(object, + native int) + IL_002d: stfld class Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::GetCapability + .line 59,59 : 13,57 '' + IL_0032: ldloca.s link + IL_0034: ldarg.0 + IL_0035: dup + IL_0036: ldvirtftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::GetFriendlyNameThunk(native int, + int32, + int32) + IL_003c: newobj instance void Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype::.ctor(object, + native int) + IL_0041: stfld class Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::GetFriendlyName + .line 60,60 : 13,47 '' + IL_0046: ldloca.s link + IL_0048: ldarg.0 + IL_0049: dup + IL_004a: ldvirtftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::GrokHeaderThunk(string, + int32&) + IL_0050: newobj instance void Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype::.ctor(object, + native int) + IL_0055: stfld class Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::GrokHeader + .line 61,61 : 13,38 '' + IL_005a: ldloca.s link + IL_005c: ldarg.0 + IL_005d: ldftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::InitPreThunk(string, + native int) + IL_0063: newobj instance void Virtuoso.Hyphen.Mini.Custom.InitPrototype::.ctor(object, + native int) + IL_0068: stfld class Virtuoso.Hyphen.Mini.Custom.InitPrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::Init + .line 62,62 : 13,51 '' + IL_006d: ldloca.s link + IL_006f: ldarg.0 + IL_0070: dup + IL_0071: ldvirtftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::MakeDatabaseThunk(string, + int32&) + IL_0077: newobj instance void Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype::.ctor(object, + native int) + IL_007c: stfld class Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::MakeDatabase + .line 63,63 : 13,42 '' + IL_0081: ldloca.s link + IL_0083: ldarg.0 + IL_0084: ldftn instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::UnloadPreThunk(int32) + IL_008a: newobj instance void Virtuoso.Hyphen.Mini.Custom.UnloadPrototype::.ctor(object, + native int) + IL_008f: stfld class Virtuoso.Hyphen.Mini.Custom.UnloadPrototype Virtuoso.Hyphen.Mini.Custom.DatabaseLink::Unload + .line 64,64 : 13,84 '' + IL_0094: ldarg.0 + IL_0095: ldloca.s link + IL_0097: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_009c: stfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkHandle + .line 66,66 : 13,57 '' + IL_00a1: ldarg.0 + IL_00a2: ldloc.0 + IL_00a3: box Virtuoso.Hyphen.Mini.Custom.DatabaseLink + IL_00a8: call valuetype [mscorlib]System.Runtime.InteropServices.GCHandle [mscorlib]System.Runtime.InteropServices.GCHandle::Alloc(object) + IL_00ad: stfld valuetype [mscorlib]System.Runtime.InteropServices.GCHandle Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkGcHandle + .line 67,67 : 13,46 '' + IL_00b2: ldarg.0 + IL_00b3: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkHandle + IL_00b8: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_00bd: box [mscorlib]System.IntPtr + IL_00c2: ret + } // end of method DatabaseDriver::DatabasePluginInfoThunk + + .method family hidebysig newslot abstract virtual + instance int32 MakeDatabaseThunk(string profile, + int32& 'error') cil managed + { + } // end of method DatabaseDriver::MakeDatabaseThunk + + .method family hidebysig newslot abstract virtual + instance int32 GrokHeaderThunk(string profile, + int32& 'error') cil managed + { + } // end of method DatabaseDriver::GrokHeaderThunk + + .method family hidebysig newslot abstract virtual + instance int32 GetCapabilityThunk(int32 'flags') cil managed + { + } // end of method DatabaseDriver::GetCapabilityThunk + + .method family hidebysig newslot abstract virtual + instance int32 GetFriendlyNameThunk(native int buffer, + int32 size, + int32 shortName) cil managed + { + } // end of method DatabaseDriver::GetFriendlyNameThunk + + .method private hidebysig instance int32 + InitPreThunk(string profile, + native int pLink) cil managed + { + // Code size 33 (0x21) + .maxstack 8 + .line 90,90 : 13,90 '' + IL_0000: ldarg.0 + IL_0001: call instance class Virtuoso.Hyphen.Mini.Module Virtuoso.Hyphen.Mini.StandalonePlugin::get_Module() + IL_0006: ldarg.2 + IL_0007: callvirt instance int32 Virtuoso.Hyphen.Mini.Module::Load(native int) + IL_000c: call int32 [mscorlib]System.Math::Abs(int32) + IL_0011: ldarg.0 + IL_0012: ldarg.1 + IL_0013: ldarg.2 + IL_0014: callvirt instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::InitThunk(string, + native int) + IL_0019: call int32 [mscorlib]System.Math::Abs(int32) + IL_001e: add + IL_001f: neg + IL_0020: ret + } // end of method DatabaseDriver::InitPreThunk + + .method family hidebysig newslot abstract virtual + instance int32 InitThunk(string profile, + native int link) cil managed + { + } // end of method DatabaseDriver::InitThunk + + .method private hidebysig instance int32 + UnloadPreThunk(int32 wasLoaded) cil managed + { + // Code size 67 (0x43) + .maxstack 2 + .line 99,99 : 17,31 '' + .try + { + IL_0000: ldarg.0 + IL_0001: volatile. + IL_0003: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::Disposed + IL_0008: brtrue.s IL_0035 + + .line 101,101 : 21,44 '' + IL_000a: ldarg.0 + IL_000b: ldarg.1 + IL_000c: callvirt instance int32 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::UnloadThunk(int32) + IL_0011: pop + .line 102,102 : 21,47 '' + IL_0012: ldarg.0 + IL_0013: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkHandle + IL_0018: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + .line 104,104 : 21,58 '' + IL_001d: ldarg.0 + IL_001e: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkGcHandle + IL_0023: call instance bool [mscorlib]System.Runtime.InteropServices.GCHandle::get_IsAllocated() + IL_0028: brfalse.s IL_0035 + + .line 105,105 : 25,53 '' + IL_002a: ldarg.0 + IL_002b: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabaseLinkGcHandle + IL_0030: call instance void [mscorlib]System.Runtime.InteropServices.GCHandle::Free() + IL_0035: leave.s IL_0041 + + .line 110,110 : 17,33 '' + } // end .try + finally + { + IL_0037: ldarg.0 + IL_0038: ldc.i4.1 + IL_0039: volatile. + IL_003b: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::Disposed + IL_0040: endfinally + .line 113,113 : 13,22 '' + } // end handler + IL_0041: ldc.i4.0 + IL_0042: ret + } // end of method DatabaseDriver::UnloadPreThunk + + .method family hidebysig newslot abstract virtual + instance int32 UnloadThunk(int32 wasLoaded) cil managed + { + } // end of method DatabaseDriver::UnloadThunk + +} // end of class Virtuoso.Hyphen.Mini.Custom.DatabaseDriver + +.class public sequential ansi sealed beforefieldinit Virtuoso.Hyphen.Mini.Custom.DatabaseLink + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public int32 Size + .field public class Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype GetCapability + .field public class Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype GetFriendlyName + .field public class Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype MakeDatabase + .field public class Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype GrokHeader + .field public class Virtuoso.Hyphen.Mini.Custom.InitPrototype Init + .field public class Virtuoso.Hyphen.Mini.Custom.UnloadPrototype Unload +} // end of class Virtuoso.Hyphen.Mini.Custom.DatabaseLink + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method GetCapabilityPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(int32 'flags') runtime managed + { + } // end of method GetCapabilityPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(int32 'flags', + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method GetCapabilityPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method GetCapabilityPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method GetFriendlyNamePrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int buf, + int32 size, + int32 shortName) runtime managed + { + } // end of method GetFriendlyNamePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int buf, + int32 size, + int32 shortName, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method GetFriendlyNamePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method GetFriendlyNamePrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method MakeDatabasePrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) profile, + int32& 'error') runtime managed + { + } // end of method MakeDatabasePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) profile, + int32& 'error', + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method MakeDatabasePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(int32& 'error', + class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method MakeDatabasePrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method GrokHeaderPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) profile, + int32& 'error') runtime managed + { + } // end of method GrokHeaderPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) profile, + int32& 'error', + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method GrokHeaderPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(int32& 'error', + class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method GrokHeaderPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.InitPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method InitPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) profile, + native int link) runtime managed + { + } // end of method InitPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) profile, + native int link, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method InitPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method InitPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.InitPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Mini.Custom.UnloadPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method UnloadPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(int32 wasLoaded) runtime managed + { + } // end of method UnloadPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(int32 wasLoaded, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method UnloadPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method UnloadPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Mini.Custom.UnloadPrototype + +.class public abstract auto ansi beforefieldinit Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver + extends Virtuoso.Hyphen.Mini.Custom.DatabaseDriver +{ + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 33,33 : 9,45 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\Custom\\CustomizedDatabaseDriver.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::.ctor() + .line 33,33 : 48,49 '' + IL_0006: ret + } // end of method CustomizedDatabaseDriver::.ctor + + .method family hidebysig virtual final + instance int32 GetCapabilityThunk(int32 'flags') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 41,41 : 13,58 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: callvirt instance bool Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::GetCapability(int32) + IL_0007: call int32 [mscorlib]System.Convert::ToInt32(bool) + IL_000c: ret + } // end of method CustomizedDatabaseDriver::GetCapabilityThunk + + .method family hidebysig virtual final + instance int32 GetFriendlyNameThunk(native int buffer, + int32 size, + int32 shortName) cil managed + { + // Code size 53 (0x35) + .maxstack 4 + .locals init ([0] string name, + [1] uint8[] bytes) + .line 46,46 : 13,65 '' + IL_0000: ldarg.0 + IL_0001: ldarg.3 + IL_0002: ldc.i4.0 + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: ldarg.2 + IL_0009: callvirt instance string Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::GetFriendlyName(bool, + int32) + IL_000e: stloc.0 + .line 47,47 : 13,30 '' + IL_000f: ldloc.0 + IL_0010: brtrue.s IL_0014 + + .line 47,47 : 31,41 '' + IL_0012: ldc.i4.m1 + IL_0013: ret + + .line 49,49 : 13,60 '' + IL_0014: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Default() + IL_0019: ldloc.0 + IL_001a: callvirt instance uint8[] [mscorlib]System.Text.Encoding::GetBytes(string) + IL_001f: stloc.1 + .line 51,51 : 13,37 '' + IL_0020: ldarg.2 + IL_0021: ldloc.1 + IL_0022: ldlen + IL_0023: conv.i4 + IL_0024: bge.s IL_0028 + + .line 52,52 : 17,27 '' + IL_0026: ldc.i4.m1 + IL_0027: ret + + .line 55,55 : 17,62 '' + IL_0028: ldloc.1 + IL_0029: ldc.i4.0 + IL_002a: ldarg.1 + IL_002b: ldloc.1 + IL_002c: ldlen + IL_002d: conv.i4 + IL_002e: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + .line 56,56 : 17,26 '' + IL_0033: ldc.i4.0 + IL_0034: ret + } // end of method CustomizedDatabaseDriver::GetFriendlyNameThunk + + .method family hidebysig virtual final + instance int32 InitThunk(string profile, + native int pLink) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 62,62 : 13,41 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: callvirt instance int32 Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::Init(string, + native int) + IL_0008: ret + } // end of method CustomizedDatabaseDriver::InitThunk + + .method family hidebysig virtual final + instance int32 UnloadThunk(int32 wasLoaded) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 67,67 : 13,43 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: ceq + IL_0005: ldc.i4.0 + IL_0006: ceq + IL_0008: callvirt instance int32 Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::Unload(bool) + IL_000d: ret + } // end of method CustomizedDatabaseDriver::UnloadThunk + + .method family hidebysig newslot abstract virtual + instance bool GetCapability(int32 'flags') cil managed + { + } // end of method CustomizedDatabaseDriver::GetCapability + + .method family hidebysig newslot abstract virtual + instance string GetFriendlyName(bool shortName, + int32 size) cil managed + { + } // end of method CustomizedDatabaseDriver::GetFriendlyName + + .method family hidebysig newslot abstract virtual + instance int32 MakeDatabase(string profile, + int32& 'error') cil managed + { + } // end of method CustomizedDatabaseDriver::MakeDatabase + + .method family hidebysig newslot abstract virtual + instance int32 GrokHeader(string profile, + int32& 'error') cil managed + { + } // end of method CustomizedDatabaseDriver::GrokHeader + + .method family hidebysig newslot abstract virtual + instance int32 Init(string profile, + native int pLink) cil managed + { + } // end of method CustomizedDatabaseDriver::Init + + .method family hidebysig newslot abstract virtual + instance int32 Unload(bool wasLoaded) cil managed + { + } // end of method CustomizedDatabaseDriver::Unload + +} // end of class Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.LoaderOptions + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.LoaderOptions None = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.LoaderOptions HasCustomApiExports = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.LoaderOptions CannotBeUnloaded = int32(0x00000004) +} // end of class Virtuoso.Miranda.Plugins.LoaderOptions + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.LoaderOptionsOwner + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner Type = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner Assembly = int32(0x00000001) +} // end of class Virtuoso.Miranda.Plugins.LoaderOptionsOwner + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + extends [mscorlib]System.Attribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 05 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ........T..Allow + 4D 75 6C 74 69 70 6C 65 01 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 01 ) // rited. + .field private valuetype Virtuoso.Miranda.Plugins.LoaderOptions options + .field private class [mscorlib]System.Version requiredVersion + .field private class [mscorlib]System.Version minimalMirandaVersion + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.LoaderOptions + get_Options() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 49,49 : 19,34 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\LoaderOptionsAttribute.cs' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + IL_0006: ret + } // end of method LoaderOptionsAttribute::get_Options + + .method public hidebysig specialname instance void + set_Options(valuetype Virtuoso.Miranda.Plugins.LoaderOptions 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 50,50 : 19,35 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + .line 50,50 : 36,37 '' + IL_0007: ret + } // end of method LoaderOptionsAttribute::set_Options + + .method public hidebysig specialname instance class [mscorlib]System.Version + get_RequiredVersion() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 56,56 : 19,42 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::requiredVersion + IL_0006: ret + } // end of method LoaderOptionsAttribute::get_RequiredVersion + + .method public hidebysig specialname instance class [mscorlib]System.Version + get_MinimalMirandaVersion() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 62,62 : 19,48 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::minimalMirandaVersion + IL_0006: ret + } // end of method LoaderOptionsAttribute::get_MinimalMirandaVersion + + .method public hidebysig specialname rtspecialname + instance void .ctor(valuetype Virtuoso.Miranda.Plugins.LoaderOptions options) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 69,70 : 9,40 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldnull + IL_0003: ldarg.1 + IL_0004: call instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(string, + string, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + .line 70,70 : 43,44 '' + IL_0009: ret + } // end of method LoaderOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string requiredVersion) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 72,73 : 9,62 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldc.i4.0 + IL_0004: call instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(string, + string, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + .line 73,73 : 65,66 '' + IL_0009: ret + } // end of method LoaderOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string requiredVersion, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions options) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 75,76 : 9,51 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldarg.2 + IL_0004: call instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(string, + string, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + .line 76,76 : 54,55 '' + IL_0009: ret + } // end of method LoaderOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string requiredVersion, + string minimalMirandaVersion) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 78,79 : 9,79 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldc.i4.0 + IL_0004: call instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(string, + string, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + .line 79,79 : 82,83 '' + IL_0009: ret + } // end of method LoaderOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string requiredVersion, + string minimalMirandaVersion, + valuetype Virtuoso.Miranda.Plugins.LoaderOptions options) cil managed + { + // Code size 54 (0x36) + .maxstack 8 + .line 81,81 : 9,115 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + .line 83,83 : 13,56 '' + IL_0006: ldarg.1 + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: brtrue.s IL_001a + + .line 84,84 : 17,69 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: newobj instance void [mscorlib]System.Version::.ctor(string) + IL_0015: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::requiredVersion + .line 86,86 : 13,62 '' + IL_001a: ldarg.2 + IL_001b: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0020: brtrue.s IL_002e + + .line 87,87 : 17,81 '' + IL_0022: ldarg.0 + IL_0023: ldarg.2 + IL_0024: newobj instance void [mscorlib]System.Version::.ctor(string) + IL_0029: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::minimalMirandaVersion + .line 89,89 : 13,36 '' + IL_002e: ldarg.0 + IL_002f: ldarg.3 + IL_0030: stfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + .line 90,90 : 9,10 '' + IL_0035: ret + } // end of method LoaderOptionsAttribute::.ctor + + .method assembly hidebysig instance bool + SupportsMirandaVersion(uint32 mirandaVersion) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 98,98 : 13,89 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.Translate::FromMirandaVersion(uint32) + IL_0007: call instance bool Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::SupportsMirandaVersion(class [mscorlib]System.Version) + IL_000c: ret + } // end of method LoaderOptionsAttribute::SupportsMirandaVersion + + .method assembly hidebysig instance bool + SupportsMirandaVersion(class [mscorlib]System.Version mirandaVersion) cil managed + { + // Code size 42 (0x2a) + .maxstack 8 + .line 104,104 : 13,47 '' + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion() + IL_0006: ldnull + IL_0007: call bool [mscorlib]System.Version::op_Inequality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_000c: brfalse.s IL_001e + + .line 106,106 : 17,60 '' + IL_000e: ldarg.1 + IL_000f: ldarg.0 + IL_0010: call instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion() + IL_0015: call bool [mscorlib]System.Version::op_LessThan(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_001a: brfalse.s IL_0028 + + .line 107,107 : 21,34 '' + IL_001c: ldc.i4.0 + IL_001d: ret + + .line 110,110 : 18,69 '' + IL_001e: ldarg.1 + IL_001f: call bool Virtuoso.Hyphen.Loader::SupportsMirandaVersion(class [mscorlib]System.Version) + IL_0024: brtrue.s IL_0028 + + .line 111,111 : 17,30 '' + IL_0026: ldc.i4.0 + IL_0027: ret + + .line 113,113 : 13,25 '' + IL_0028: ldc.i4.1 + IL_0029: ret + } // end of method LoaderOptionsAttribute::SupportsMirandaVersion + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + Get(class [mscorlib]System.Type pluginType, + valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner target) cil managed + { + // Code size 289 (0x121) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Type thisType, + [1] class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute result, + [2] class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute attrib, + [3] valuetype Virtuoso.Miranda.Plugins.LoaderOptionsOwner CS$0$0000, + [4] object[] CS$6$0001, + [5] int32 CS$7$0002) + .line 118,118 : 13,36 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 119,119 : 17,63 '' + IL_0003: ldstr "pluginType" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 121,121 : 13,60 '' + IL_000e: ldtoken Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + IL_0013: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0018: stloc.0 + .line 122,122 : 13,50 '' + IL_0019: ldnull + IL_001a: stloc.1 + .line 124,124 : 13,28 '' + IL_001b: ldarg.1 + IL_001c: stloc.3 + IL_001d: ldloc.3 + IL_001e: switch ( + IL_0030, + IL_00e4) + IL_002b: br IL_010a + + .line 127,127 : 63,109 '' + IL_0030: ldarg.0 + IL_0031: ldloc.0 + IL_0032: ldc.i4.1 + IL_0033: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_0038: stloc.s CS$6$0001 + IL_003a: ldc.i4.0 + IL_003b: stloc.s CS$7$0002 + IL_003d: br IL_00d7 + + .line 127,127 : 30,59 '' + IL_0042: ldloc.s CS$6$0001 + IL_0044: ldloc.s CS$7$0002 + IL_0046: ldelem.ref + IL_0047: castclass Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + IL_004c: stloc.2 + .line 129,129 : 25,44 '' + IL_004d: ldloc.1 + IL_004e: brtrue.s IL_0054 + + .line 130,130 : 29,45 '' + IL_0050: ldloc.2 + IL_0051: stloc.1 + IL_0052: br.s IL_00be + + .line 133,133 : 29,64 '' + IL_0054: ldloc.1 + IL_0055: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::requiredVersion + IL_005a: ldnull + IL_005b: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_0060: brfalse.s IL_0070 + + .line 134,134 : 33,81 '' + IL_0062: ldloc.1 + IL_0063: ldloc.2 + IL_0064: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::requiredVersion + IL_0069: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::requiredVersion + IL_006e: br.s IL_0089 + + .line 135,135 : 34,69 '' + IL_0070: ldloc.2 + IL_0071: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_RequiredVersion() + IL_0076: ldnull + IL_0077: call bool [mscorlib]System.Version::op_Inequality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_007c: brfalse.s IL_0089 + + .line 136,136 : 33,115 '' + IL_007e: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_DuplicitLoaderOptions() + IL_0083: newobj instance void [mscorlib]System.NotSupportedException::.ctor(string) + IL_0088: throw + + .line 138,138 : 29,70 '' + IL_0089: ldloc.1 + IL_008a: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::minimalMirandaVersion + IL_008f: ldnull + IL_0090: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_0095: brfalse.s IL_00a5 + + .line 139,139 : 33,93 '' + IL_0097: ldloc.1 + IL_0098: ldloc.2 + IL_0099: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::minimalMirandaVersion + IL_009e: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::minimalMirandaVersion + IL_00a3: br.s IL_00be + + .line 140,140 : 34,75 '' + IL_00a5: ldloc.2 + IL_00a6: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion() + IL_00ab: ldnull + IL_00ac: call bool [mscorlib]System.Version::op_Inequality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_00b1: brfalse.s IL_00be + + .line 141,141 : 33,115 '' + IL_00b3: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_DuplicitLoaderOptions() + IL_00b8: newobj instance void [mscorlib]System.NotSupportedException::.ctor(string) + IL_00bd: throw + + .line 144,144 : 25,58 '' + IL_00be: ldloc.1 + IL_00bf: dup + IL_00c0: ldfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + IL_00c5: ldloc.2 + IL_00c6: ldfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + IL_00cb: or + IL_00cc: stfld valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::options + IL_00d1: ldloc.s CS$7$0002 + IL_00d3: ldc.i4.1 + IL_00d4: add + IL_00d5: stloc.s CS$7$0002 + .line 127,127 : 60,62 '' + IL_00d7: ldloc.s CS$7$0002 + IL_00d9: ldloc.s CS$6$0001 + IL_00db: ldlen + IL_00dc: conv.i4 + IL_00dd: blt IL_0042 + + .line 146,146 : 21,27 '' + IL_00e2: br.s IL_0115 + + .line 148,148 : 21,72 '' + IL_00e4: ldarg.0 + IL_00e5: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_00ea: ldloc.0 + IL_00eb: ldc.i4.0 + IL_00ec: callvirt instance bool [mscorlib]System.Reflection.Assembly::IsDefined(class [mscorlib]System.Type, + bool) + IL_00f1: brfalse.s IL_0115 + + .line 149,149 : 25,118 '' + IL_00f3: ldarg.0 + IL_00f4: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_00f9: ldloc.0 + IL_00fa: ldc.i4.0 + IL_00fb: callvirt instance object[] [mscorlib]System.Reflection.Assembly::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_0100: ldc.i4.0 + IL_0101: ldelem.ref + IL_0102: castclass Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + IL_0107: stloc.1 + .line 150,150 : 21,27 '' + IL_0108: br.s IL_0115 + + .line 152,152 : 21,69 '' + IL_010a: ldstr "target" + IL_010f: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0114: throw + + .line 155,155 : 13,77 '' + IL_0115: ldloc.1 + IL_0116: dup + IL_0117: brtrue.s IL_0120 + + IL_0119: pop + IL_011a: ldc.i4.0 + IL_011b: newobj instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor(valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + IL_0120: ret + } // end of method LoaderOptionsAttribute::Get + + .property instance valuetype Virtuoso.Miranda.Plugins.LoaderOptions + Options() + { + .set instance void Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::set_Options(valuetype Virtuoso.Miranda.Plugins.LoaderOptions) + .get instance valuetype Virtuoso.Miranda.Plugins.LoaderOptions Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_Options() + } // end of property LoaderOptionsAttribute::Options + .property instance class [mscorlib]System.Version + RequiredVersion() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_RequiredVersion() + } // end of property LoaderOptionsAttribute::RequiredVersion + .property instance class [mscorlib]System.Version + MinimalMirandaVersion() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion() + } // end of property LoaderOptionsAttribute::MinimalMirandaVersion +} // end of class Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + +.class public auto ansi sealed beforefieldinit Virtuoso.Hyphen.Mini.ModuleManager + extends [mscorlib]System.Object +{ + .field private static initonly object SyncObject + .field private static class Virtuoso.Hyphen.Mini.ModuleManager singleton + .field private initonly class Virtuoso.Miranda.Plugins.Collections.ModuleCollection RegistredModulesCollection + .field private initonly class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection registeredModules + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 35 (0x23) + .maxstack 8 + .line 37,37 : 9,95 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\ModuleManager.cs' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Collections.ModuleCollection::.ctor() + IL_0006: stfld class Virtuoso.Miranda.Plugins.Collections.ModuleCollection Virtuoso.Hyphen.Mini.ModuleManager::RegistredModulesCollection + .line 44,44 : 9,32 '' + IL_000b: ldarg.0 + IL_000c: call instance void [mscorlib]System.Object::.ctor() + .line 46,46 : 13,95 '' + IL_0011: ldarg.0 + IL_0012: ldarg.0 + IL_0013: ldfld class Virtuoso.Miranda.Plugins.Collections.ModuleCollection Virtuoso.Hyphen.Mini.ModuleManager::RegistredModulesCollection + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection::.ctor(class Virtuoso.Miranda.Plugins.Collections.ModuleCollection) + IL_001d: stfld class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection Virtuoso.Hyphen.Mini.ModuleManager::registeredModules + .line 47,47 : 9,10 '' + IL_0022: ret + } // end of method ModuleManager::.ctor + + .method public hidebysig specialname static + class Virtuoso.Hyphen.Mini.ModuleManager + get_Singleton() cil managed + { + // Code size 49 (0x31) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Mini.ModuleManager CS$1$0000, + [1] object CS$2$0001) + .line 57,57 : 17,46 '' + IL_0000: call void Virtuoso.Hyphen.Loader::VerifyDefaultDomain() + .line 59,59 : 17,34 '' + IL_0005: ldsfld object Virtuoso.Hyphen.Mini.ModuleManager::SyncObject + IL_000a: dup + IL_000b: stloc.1 + IL_000c: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 60,60 : 21,75 '' + .try + { + IL_0011: ldsfld class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::singleton + IL_0016: dup + IL_0017: brtrue.s IL_0025 + + IL_0019: pop + IL_001a: newobj instance void Virtuoso.Hyphen.Mini.ModuleManager::.ctor() + IL_001f: dup + IL_0020: stsfld class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::singleton + IL_0025: stloc.0 + IL_0026: leave.s IL_002f + + } // end .try + finally + { + IL_0028: ldloc.1 + IL_0029: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_002e: endfinally + .line 61,61 : 13,14 '' + } // end handler + IL_002f: ldloc.0 + IL_0030: ret + } // end of method ModuleManager::get_Singleton + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection + get_RegisteredModules() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 68,68 : 17,42 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection Virtuoso.Hyphen.Mini.ModuleManager::registeredModules + IL_0006: ret + } // end of method ModuleManager::get_RegisteredModules + + .method public hidebysig specialname instance bool + get_HasModules() cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 76,76 : 17,52 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection Virtuoso.Hyphen.Mini.ModuleManager::registeredModules + IL_0006: callvirt instance int32 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Count() + IL_000b: ldc.i4.0 + IL_000c: cgt + IL_000e: ret + } // end of method ModuleManager::get_HasModules + + .method assembly hidebysig instance void + RegisterModule(class Virtuoso.Hyphen.Mini.Module module) cil managed + { + // Code size 27 (0x1b) + .maxstack 8 + .line 86,86 : 13,32 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 87,87 : 17,59 '' + IL_0003: ldstr "module" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 89,89 : 13,52 '' + IL_000e: ldarg.0 + IL_000f: ldfld class Virtuoso.Miranda.Plugins.Collections.ModuleCollection Virtuoso.Hyphen.Mini.ModuleManager::RegistredModulesCollection + IL_0014: ldarg.1 + IL_0015: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 90,90 : 9,10 '' + IL_001a: ret + } // end of method ModuleManager::RegisterModule + + .method assembly hidebysig instance void + UnregisterModule(class Virtuoso.Hyphen.Mini.Module module) cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .line 94,94 : 13,32 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 95,95 : 17,59 '' + IL_0003: ldstr "module" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 97,97 : 13,55 '' + IL_000e: ldarg.0 + IL_000f: ldfld class Virtuoso.Miranda.Plugins.Collections.ModuleCollection Virtuoso.Hyphen.Mini.ModuleManager::RegistredModulesCollection + IL_0014: ldarg.1 + IL_0015: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_001a: pop + .line 98,98 : 9,10 '' + IL_001b: ret + } // end of method ModuleManager::UnregisterModule + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 34,34 : 9,66 '' + IL_0000: newobj instance void [mscorlib]System.Object::.ctor() + IL_0005: stsfld object Virtuoso.Hyphen.Mini.ModuleManager::SyncObject + IL_000a: ret + } // end of method ModuleManager::.cctor + + .property class Virtuoso.Hyphen.Mini.ModuleManager + Singleton() + { + .get class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + } // end of property ModuleManager::Singleton + .property instance class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection + RegisteredModules() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection Virtuoso.Hyphen.Mini.ModuleManager::get_RegisteredModules() + } // end of property ModuleManager::RegisteredModules + .property instance bool HasModules() + { + .get instance bool Virtuoso.Hyphen.Mini.ModuleManager::get_HasModules() + } // end of property ModuleManager::HasModules +} // end of class Virtuoso.Hyphen.Mini.ModuleManager + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.Reflection.DefaultMemberAttribute::.ctor(string) = ( 01 00 04 49 74 65 6D 00 00 ) // ...Item.. + .field private initonly class [mscorlib]System.Collections.Generic.Dictionary`2 Interceptors + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 35,35 : 9,48 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ServiceCallInterceptionManager.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 37,37 : 13,69 '' + IL_0006: ldarg.0 + IL_0007: ldc.i4.2 + IL_0008: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_000d: stfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + .line 38,38 : 9,10 '' + IL_0012: ret + } // end of method ServiceCallInterceptionManager::.ctor + + .method public hidebysig instance bool + RequiresInterception(string serviceName) cil managed + { + // Code size 37 (0x25) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 46,46 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 47,47 : 17,62 '' + .try + { + IL_000d: ldarg.0 + IL_000e: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0013: ldarg.1 + IL_0014: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0019: stloc.0 + IL_001a: leave.s IL_0023 + + } // end .try + finally + { + IL_001c: ldloc.1 + IL_001d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0022: endfinally + .line 48,48 : 9,10 '' + } // end handler + IL_0023: ldloc.0 + IL_0024: ret + } // end of method ServiceCallInterceptionManager::RequiresInterception + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Callback + get_Item(string serviceName) cil managed + { + // Code size 43 (0x2b) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Callback interceptor, + [1] class Virtuoso.Miranda.Plugins.Callback CS$1$0000, + [2] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 54,54 : 17,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0006: dup + IL_0007: stloc.2 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 56,56 : 21,49 '' + .try + { + IL_000d: ldnull + IL_000e: stloc.0 + .line 57,57 : 21,76 '' + IL_000f: ldarg.0 + IL_0010: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0015: ldarg.1 + IL_0016: ldloca.s interceptor + IL_0018: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::TryGetValue(!0, + !1&) + IL_001d: pop + .line 59,59 : 21,40 '' + IL_001e: ldloc.0 + IL_001f: stloc.1 + IL_0020: leave.s IL_0029 + + } // end .try + finally + { + IL_0022: ldloc.2 + IL_0023: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0028: endfinally + .line 61,61 : 13,14 '' + } // end handler + IL_0029: ldloc.1 + IL_002a: ret + } // end of method ServiceCallInterceptionManager::get_Item + + .method public hidebysig specialname instance void + set_Item(string serviceName, + class Virtuoso.Miranda.Plugins.Callback 'value') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 64,64 : 17,46 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Register(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 65,65 : 13,14 '' + IL_0008: ret + } // end of method ServiceCallInterceptionManager::set_Item + + .method public hidebysig instance void + Register(string serviceName, + class Virtuoso.Miranda.Plugins.Callback interceptor) cil managed + { + // Code size 36 (0x24) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000) + .line 70,70 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 71,71 : 17,57 '' + .try + { + IL_000d: ldarg.0 + IL_000e: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0013: ldarg.1 + IL_0014: ldarg.2 + IL_0015: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + IL_001a: leave.s IL_0023 + + } // end .try + finally + { + IL_001c: ldloc.0 + IL_001d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0022: endfinally + .line 72,72 : 9,10 '' + } // end handler + IL_0023: ret + } // end of method ServiceCallInterceptionManager::Register + + .method public hidebysig instance void + Unregister(string serviceName) cil managed + { + // Code size 36 (0x24) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000) + .line 76,76 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 77,77 : 17,50 '' + .try + { + IL_000d: ldarg.0 + IL_000e: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Interceptors + IL_0013: ldarg.1 + IL_0014: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::Remove(!0) + IL_0019: pop + IL_001a: leave.s IL_0023 + + } // end .try + finally + { + IL_001c: ldloc.0 + IL_001d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0022: endfinally + .line 78,78 : 9,10 '' + } // end handler + IL_0023: ret + } // end of method ServiceCallInterceptionManager::Unregister + + .property instance class Virtuoso.Miranda.Plugins.Callback + Item(string) + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::set_Item(string, + class Virtuoso.Miranda.Plugins.Callback) + .get instance class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::get_Item(string) + } // end of property ServiceCallInterceptionManager::Item +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.AssemblyProbe + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject +{ + .method public hidebysig newslot abstract virtual + instance string[] FindAssemblies() cil managed + { + } // end of method AssemblyProbe::FindAssemblies + + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + IL_0006: ret + } // end of method AssemblyProbe::.ctor + +} // end of class Virtuoso.Miranda.Plugins.AssemblyProbe + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.DefaultAssemblyProbe + extends Virtuoso.Miranda.Plugins.AssemblyProbe +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 31,31 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\DefaultAssemblyProbe.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.AssemblyProbe::.ctor() + .line 31,31 : 41,42 '' + IL_0006: ret + } // end of method DefaultAssemblyProbe::.ctor + + .method public hidebysig virtual instance string[] + FindAssemblies() cil managed + { + // Code size 50 (0x32) + .maxstack 2 + .locals init ([0] string[] CS$1$0000) + .line 41,42 : 17,126 '' + .try + { + IL_0000: ldstr "plugins\\managed" + IL_0005: call bool [mscorlib]System.IO.Directory::Exists(string) + IL_000a: brtrue.s IL_0014 + + IL_000c: ldc.i4.0 + IL_000d: newarr [mscorlib]System.String + IL_0012: br.s IL_0023 + + IL_0014: ldstr "plugins\\managed" + IL_0019: ldstr "*.dll" + IL_001e: call string[] [mscorlib]System.IO.Directory::GetFiles(string, + string) + IL_0023: stloc.0 + IL_0024: leave.s IL_0030 + + .line 44,44 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0026: pop + .line 47,47 : 17,38 '' + IL_0027: ldc.i4.0 + IL_0028: newarr [mscorlib]System.String + IL_002d: stloc.0 + IL_002e: leave.s IL_0030 + + .line 49,49 : 9,10 '' + } // end handler + IL_0030: ldloc.0 + IL_0031: ret + } // end of method DefaultAssemblyProbe::FindAssemblies + +} // end of class Virtuoso.Miranda.Plugins.DefaultAssemblyProbe + +.class interface private abstract auto ansi Virtuoso.Miranda.Plugins.IDescriptor +{ +} // end of class Virtuoso.Miranda.Plugins.IDescriptor + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject +{ + .method public hidebysig newslot specialname abstract virtual + instance native int get_MirandaHandle() cil managed + { + } // end of method IMirandaObject::get_MirandaHandle + + .property instance native int MirandaHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject::get_MirandaHandle() + } // end of property IMirandaObject::MirandaHandle +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject +{ + .field private native int mirandaHandle + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 34,34 : 9,34 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaObject.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 34,34 : 37,38 '' + IL_0006: ret + } // end of method MirandaObject::.ctor + + .method public hidebysig newslot specialname virtual final + instance native int get_MirandaHandle() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 42,42 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::mirandaHandle + IL_0006: ret + } // end of method MirandaObject::get_MirandaHandle + + .method famorassem hidebysig specialname + instance void set_MirandaHandle(native int 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 43,43 : 38,60 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::mirandaHandle + .line 43,43 : 61,62 '' + IL_0007: ret + } // end of method MirandaObject::set_MirandaHandle + + .property instance native int MirandaHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle(native int) + } // end of property MirandaObject::MirandaHandle +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.EventHandle + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field private initonly class Virtuoso.Miranda.Plugins.MirandaPlugin owner + .field private initonly string eventName + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.MirandaPlugin + get_Owner() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 37,37 : 19,32 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\EventHandle.cs' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::owner + IL_0006: ret + } // end of method EventHandle::get_Owner + + .method public hidebysig specialname instance string + get_EventName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 43,43 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::eventName + IL_0006: ret + } // end of method EventHandle::get_EventName + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + string eventName, + native int handle) cil managed + { + // Code size 114 (0x72) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 eventHandles) + .line 50,50 : 9,83 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::.ctor() + .line 52,52 : 13,39 '' + IL_0006: ldarg.3 + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0011: brfalse.s IL_001e + + .line 53,53 : 17,59 '' + IL_0013: ldstr "handle" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 55,55 : 13,31 '' + IL_001e: ldarg.1 + IL_001f: brtrue.s IL_002c + + .line 56,56 : 17,58 '' + IL_0021: ldstr "owner" + IL_0026: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002b: throw + + .line 58,58 : 13,35 '' + IL_002c: ldarg.2 + IL_002d: brtrue.s IL_003a + + .line 59,59 : 17,62 '' + IL_002f: ldstr "eventName" + IL_0034: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0039: throw + + .line 61,61 : 13,32 '' + IL_003a: ldarg.0 + IL_003b: ldarg.1 + IL_003c: stfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::owner + .line 62,62 : 13,41 '' + IL_0041: ldarg.0 + IL_0042: ldarg.3 + IL_0043: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle(native int) + .line 63,63 : 13,40 '' + IL_0048: ldarg.0 + IL_0049: ldarg.2 + IL_004a: stfld string Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::eventName + .line 65,65 : 13,76 '' + IL_004f: ldarg.1 + IL_0050: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0055: callvirt instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHandles() + IL_005a: stloc.0 + .line 69,69 : 17,75 '' + .try + { + IL_005b: ldloc.0 + IL_005c: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 70,70 : 17,40 '' + IL_0061: ldloc.0 + IL_0062: ldarg.0 + IL_0063: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0068: leave.s IL_0071 + + .line 74,74 : 17,63 '' + } // end .try + finally + { + IL_006a: ldloc.0 + IL_006b: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0070: endfinally + .line 76,76 : 9,10 '' + } // end handler + IL_0071: ret + } // end of method EventHandle::.ctor + + .method public hidebysig instance int32 + FireEvent() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 84,84 : 13,57 '' + IL_0000: ldarg.0 + IL_0001: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::FireEvent(native uint, + native int) + IL_0010: ret + } // end of method EventHandle::FireEvent + + .method public hidebysig instance int32 + FireEvent(native uint wParam, + native int lParam) cil managed + { + // Code size 55 (0x37) + .maxstack 4 + .locals init ([0] class Virtuoso.Hyphen.MirandaPluginLink link, + [1] int32 CS$1$0000, + [2] class Virtuoso.Hyphen.MirandaPluginLink CS$2$0001) + .line 89,89 : 13,72 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_000a: stloc.0 + .line 91,91 : 13,24 '' + IL_000b: ldloc.0 + IL_000c: dup + IL_000d: stloc.2 + IL_000e: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 92,92 : 17,94 '' + .try + { + IL_0013: ldloc.0 + IL_0014: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0019: ldfld class Virtuoso.Hyphen.Native.NotifyEventHooksPrototype Virtuoso.Hyphen.Native.NativePluginLink::NotifyEventHooks + IL_001e: ldarg.0 + IL_001f: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0024: ldarg.1 + IL_0025: ldarg.2 + IL_0026: callvirt instance int32 Virtuoso.Hyphen.Native.NotifyEventHooksPrototype::Invoke(native int, + native uint, + native int) + IL_002b: stloc.1 + IL_002c: leave.s IL_0035 + + } // end .try + finally + { + IL_002e: ldloc.2 + IL_002f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0034: endfinally + .line 93,93 : 9,10 '' + } // end handler + IL_0035: ldloc.1 + IL_0036: ret + } // end of method EventHandle::FireEvent + + .method public hidebysig instance void + SetDefaultSubscriber(class Virtuoso.Miranda.Plugins.Callback subscriber) cil managed synchronized + { + // Code size 98 (0x62) + .maxstack 3 + .locals init ([0] class Virtuoso.Hyphen.MirandaPluginLink link, + [1] int32 result, + [2] class Virtuoso.Hyphen.MirandaPluginLink CS$2$0000) + .line 98,98 : 13,36 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 99,99 : 17,63 '' + IL_0003: ldstr "subscriber" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 101,101 : 13,72 '' + IL_000e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0013: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0018: stloc.0 + .line 103,103 : 13,24 '' + IL_0019: ldloc.0 + IL_001a: dup + IL_001b: stloc.2 + IL_001c: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 107,107 : 17,117 '' + .try + { + IL_0021: ldloc.0 + IL_0022: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0027: ldfld class Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::SetHookDefaultForHookableEvent + IL_002c: ldarg.0 + IL_002d: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0032: ldarg.1 + IL_0033: callvirt instance int32 Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype::Invoke(native int, + class Virtuoso.Miranda.Plugins.Callback) + IL_0038: dup + IL_0039: stloc.1 + IL_003a: brfalse.s IL_0058 + + .line 108,108 : 21,186 '' + IL_003c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0041: ldstr "SetHookDefaultForHookableEvent" + IL_0046: ldloca.s result + IL_0048: call instance string [mscorlib]System.Int32::ToString() + IL_004d: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0052: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0057: throw + + IL_0058: leave.s IL_0061 + + } // end .try + finally + { + IL_005a: ldloc.2 + IL_005b: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0060: endfinally + .line 110,110 : 9,10 '' + } // end handler + IL_0061: ret + } // end of method EventHandle::SetDefaultSubscriber + + .property instance class Virtuoso.Miranda.Plugins.MirandaPlugin + Owner() + { + .get instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::get_Owner() + } // end of property EventHandle::Owner + .property instance string EventName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::get_EventName() + } // end of property EventHandle::EventName +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment + extends [mscorlib]System.Object +{ + .field static assembly literal string MirandaPluginsFolderRelativePath = "plugins\\" + .field static assembly literal string ManagedPluginsFolderName = "managed" + .field static assembly literal string ManagedPluginsFolderRelativePath = "plugins\\managed" + .field private static class [mscorlib]System.Version mirandaVersion + .field private static valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding mirandaStringEncoding + .field private static initonly string mirandaFolderPath + .field private static initonly string mirandaPluginsFolderPath + .field private static initonly string managedPluginsFolderPath + .field private static initonly string mirandaBootIniPath + .method public hidebysig static string + GetManagedSubdirectoryRelativePath(string subDir) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 50,50 : 13,75 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaEnvironment.cs' + IL_0000: ldstr "plugins\\managed" + IL_0005: ldarg.0 + IL_0006: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_000b: ret + } // end of method MirandaEnvironment::GetManagedSubdirectoryRelativePath + + .method public hidebysig specialname static + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding + get_MirandaStringEncoding() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 61,61 : 17,46 '' + IL_0000: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaStringEncoding + IL_0005: ret + } // end of method MirandaEnvironment::get_MirandaStringEncoding + + .method assembly hidebysig specialname static + void set_MirandaStringEncoding(valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding 'value') cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 65,65 : 17,47 '' + IL_0000: ldarg.0 + IL_0001: stsfld valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaStringEncoding + .line 66,66 : 13,14 '' + IL_0006: ret + } // end of method MirandaEnvironment::set_MirandaStringEncoding + + .method public hidebysig specialname static + string get_MirandaFolderPath() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 73,73 : 17,42 '' + IL_0000: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaFolderPath + IL_0005: ret + } // end of method MirandaEnvironment::get_MirandaFolderPath + + .method public hidebysig specialname static + string get_MirandaPluginsFolderPath() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 81,81 : 17,49 '' + IL_0000: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaPluginsFolderPath + IL_0005: ret + } // end of method MirandaEnvironment::get_MirandaPluginsFolderPath + + .method public hidebysig specialname static + string get_ManagedPluginsFolderPath() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 89,89 : 17,49 '' + IL_0000: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::managedPluginsFolderPath + IL_0005: ret + } // end of method MirandaEnvironment::get_ManagedPluginsFolderPath + + .method public hidebysig specialname static + class [mscorlib]System.Version + get_MirandaVersion() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 97,97 : 17,39 '' + IL_0000: ldsfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaVersion + IL_0005: ret + } // end of method MirandaEnvironment::get_MirandaVersion + + .method assembly hidebysig specialname static + void set_MirandaVersion(class [mscorlib]System.Version 'value') cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 101,101 : 17,40 '' + IL_0000: ldarg.0 + IL_0001: stsfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaVersion + .line 102,102 : 13,14 '' + IL_0006: ret + } // end of method MirandaEnvironment::set_MirandaVersion + + .method public hidebysig specialname static + class [mscorlib]System.Version + get_HyphenVersion() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 109,109 : 17,45 '' + IL_0000: call class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + IL_0005: ret + } // end of method MirandaEnvironment::get_HyphenVersion + + .method public hidebysig specialname static + string get_MirandaBootIniPath() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 117,117 : 17,43 '' + IL_0000: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaBootIniPath + IL_0005: ret + } // end of method MirandaEnvironment::get_MirandaBootIniPath + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 71 (0x47) + .maxstack 2 + .line 39,39 : 9,84 '' + IL_0000: call string [System.Windows.Forms]System.Windows.Forms.Application::get_StartupPath() + IL_0005: stsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaFolderPath + .line 40,40 : 24,117 '' + IL_000a: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaFolderPath + IL_000f: ldstr "plugins\\" + IL_0014: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_0019: stsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaPluginsFolderPath + .line 41,41 : 24,117 '' + IL_001e: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaFolderPath + IL_0023: ldstr "plugins\\managed" + IL_0028: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_002d: stsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::managedPluginsFolderPath + .line 42,42 : 24,85 '' + IL_0032: ldsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaFolderPath + IL_0037: ldstr "\\MirandaBoot.ini" + IL_003c: call string [mscorlib]System.String::Concat(string, + string) + IL_0041: stsfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::mirandaBootIniPath + IL_0046: ret + } // end of method MirandaEnvironment::.cctor + + .property valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding + MirandaStringEncoding() + { + .get valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaStringEncoding() + .set void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaStringEncoding(valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + } // end of property MirandaEnvironment::MirandaStringEncoding + .property string MirandaFolderPath() + { + .get string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaFolderPath() + } // end of property MirandaEnvironment::MirandaFolderPath + .property string MirandaPluginsFolderPath() + { + .get string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaPluginsFolderPath() + } // end of property MirandaEnvironment::MirandaPluginsFolderPath + .property string ManagedPluginsFolderPath() + { + .get string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath() + } // end of property MirandaEnvironment::ManagedPluginsFolderPath + .property class [mscorlib]System.Version + MirandaVersion() + { + .set void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaVersion(class [mscorlib]System.Version) + .get class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaVersion() + } // end of property MirandaEnvironment::MirandaVersion + .property class [mscorlib]System.Version + HyphenVersion() + { + .get class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_HyphenVersion() + } // end of property MirandaEnvironment::HyphenVersion + .property string MirandaBootIniPath() + { + .get string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaBootIniPath() + } // end of property MirandaEnvironment::MirandaBootIniPath +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment + +.class private abstract auto ansi sealed Virtuoso.Miranda.Plugins.Log + extends [mscorlib]System.Object +{ + .field private static class [System]System.Diagnostics.TraceSwitch traceSwitch + .method public hidebysig specialname static + class [System]System.Diagnostics.TraceSwitch + get_TraceSwitch() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 32,32 : 19,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Log.cs' + IL_0000: ldsfld class [System]System.Diagnostics.TraceSwitch Virtuoso.Miranda.Plugins.Log::traceSwitch + IL_0005: ret + } // end of method Log::get_TraceSwitch + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 41,41 : 13,89 '' + IL_0000: ldstr "HyphenTracing" + IL_0005: ldstr "Hyphen Tracing" + IL_000a: ldstr "Warning" + IL_000f: newobj instance void [System]System.Diagnostics.TraceSwitch::.ctor(string, + string, + string) + IL_0014: stsfld class [System]System.Diagnostics.TraceSwitch Virtuoso.Miranda.Plugins.Log::traceSwitch + .line 42,42 : 9,10 '' + IL_0019: ret + } // end of method Log::.cctor + + .method public hidebysig static void DebuggerWrite(int32 priority, + string source, + string message) cil managed + { + .custom instance void [mscorlib]System.Diagnostics.ConditionalAttribute::.ctor(string) = ( 01 00 05 44 45 42 55 47 00 00 ) // ...DEBUG.. + // Code size 9 (0x9) + .maxstack 8 + .line 49,49 : 13,53 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call void [mscorlib]System.Diagnostics.Debugger::Log(int32, + string, + string) + .line 50,50 : 9,10 '' + IL_0008: ret + } // end of method Log::DebuggerWrite + + .method public hidebysig static void Warning(string message, + string category, + string[] formatArgs) cil managed + { + .param [3] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 24 (0x18) + .maxstack 8 + .line 54,54 : 13,103 '' + IL_0000: call class [System]System.Diagnostics.TraceSwitch Virtuoso.Miranda.Plugins.Log::get_TraceSwitch() + IL_0005: callvirt instance bool [System]System.Diagnostics.TraceSwitch::get_TraceWarning() + IL_000a: ldarg.0 + IL_000b: ldarg.2 + IL_000c: call string [mscorlib]System.String::Format(string, + object[]) + IL_0011: ldarg.1 + IL_0012: call void [System]System.Diagnostics.Trace::WriteLineIf(bool, + string, + string) + .line 55,55 : 9,10 '' + IL_0017: ret + } // end of method Log::Warning + + .property class [System]System.Diagnostics.TraceSwitch + TraceSwitch() + { + .get class [System]System.Diagnostics.TraceSwitch Virtuoso.Miranda.Plugins.Log::get_TraceSwitch() + } // end of property Log::TraceSwitch +} // end of class Virtuoso.Miranda.Plugins.Log + +.class public auto ansi sealed beforefieldinit Virtuoso.Hyphen.FusionContext + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field private initonly class Virtuoso.Miranda.Plugins.AssemblyProbe assemblyProbe + .field private initonly native int nativePluginLink + .field private initonly class Virtuoso.Hyphen.Loader loader + .field private static class Virtuoso.Hyphen.FusionContext emptySingleton + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 43,43 : 9,32 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\FusionContext.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + .line 43,43 : 35,36 '' + IL_0006: ret + } // end of method FusionContext::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Hyphen.Loader loader, + class Virtuoso.Miranda.Plugins.AssemblyProbe pluginProbe, + native int nativePluginLink) cil managed + { + // Code size 80 (0x50) + .maxstack 2 + .line 45,45 : 9,98 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + .line 47,47 : 13,32 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 48,48 : 17,59 '' + IL_0009: ldstr "loader" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 50,50 : 13,37 '' + IL_0014: ldarg.2 + IL_0015: brtrue.s IL_0022 + + .line 51,51 : 17,64 '' + IL_0017: ldstr "pluginProbe" + IL_001c: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0021: throw + + .line 53,53 : 13,49 '' + IL_0022: ldarg.3 + IL_0023: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0028: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_002d: brfalse.s IL_003a + + .line 54,54 : 17,69 '' + IL_002f: ldstr "nativePluginLink" + IL_0034: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0039: throw + + .line 56,56 : 13,34 '' + IL_003a: ldarg.0 + IL_003b: ldarg.1 + IL_003c: stfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.FusionContext::loader + .line 57,57 : 13,46 '' + IL_0041: ldarg.0 + IL_0042: ldarg.2 + IL_0043: stfld class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.FusionContext::assemblyProbe + .line 58,58 : 13,54 '' + IL_0048: ldarg.0 + IL_0049: ldarg.3 + IL_004a: stfld native int Virtuoso.Hyphen.FusionContext::nativePluginLink + .line 59,59 : 9,10 '' + IL_004f: ret + } // end of method FusionContext::.ctor + + .method private hidebysig instance void + CheckEmpty() cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 68,68 : 13,27 '' + IL_0000: ldarg.0 + IL_0001: call instance bool Virtuoso.Hyphen.FusionContext::get_IsInvalid() + IL_0006: brfalse.s IL_0013 + + .line 68,68 : 28,90 '' + IL_0008: ldstr "This context is empty." + IL_000d: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0012: throw + + .line 69,69 : 9,10 '' + IL_0013: ret + } // end of method FusionContext::CheckEmpty + + .method public hidebysig specialname instance bool + get_IsInvalid() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 75,75 : 17,61 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Hyphen.FusionContext::nativePluginLink + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0010: ret + } // end of method FusionContext::get_IsInvalid + + .method assembly hidebysig specialname static + class Virtuoso.Hyphen.FusionContext + get_Empty() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 83,83 : 17,81 '' + IL_0000: ldsfld class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.FusionContext::emptySingleton + IL_0005: dup + IL_0006: brtrue.s IL_0014 + + IL_0008: pop + IL_0009: newobj instance void Virtuoso.Hyphen.FusionContext::.ctor() + IL_000e: dup + IL_000f: stsfld class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.FusionContext::emptySingleton + IL_0014: ret + } // end of method FusionContext::get_Empty + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.AssemblyProbe + get_AssemblyProbe() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 89,89 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.FusionContext::CheckEmpty() + .line 89,89 : 33,54 '' + IL_0006: ldarg.0 + IL_0007: ldfld class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.FusionContext::assemblyProbe + IL_000c: ret + } // end of method FusionContext::get_AssemblyProbe + + .method assembly hidebysig specialname + instance native int get_NativePluginLink() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 94,94 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.FusionContext::CheckEmpty() + .line 94,94 : 33,57 '' + IL_0006: ldarg.0 + IL_0007: ldfld native int Virtuoso.Hyphen.FusionContext::nativePluginLink + IL_000c: ret + } // end of method FusionContext::get_NativePluginLink + + .method assembly hidebysig specialname + instance class Virtuoso.Hyphen.Loader + get_Loader() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 101,101 : 17,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.FusionContext::loader + IL_0006: ret + } // end of method FusionContext::get_Loader + + .property instance bool IsInvalid() + { + .get instance bool Virtuoso.Hyphen.FusionContext::get_IsInvalid() + } // end of property FusionContext::IsInvalid + .property class Virtuoso.Hyphen.FusionContext + Empty() + { + .get class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.FusionContext::get_Empty() + } // end of property FusionContext::Empty + .property instance class Virtuoso.Miranda.Plugins.AssemblyProbe + AssemblyProbe() + { + .get instance class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.FusionContext::get_AssemblyProbe() + } // end of property FusionContext::AssemblyProbe + .property instance native int NativePluginLink() + { + .get instance native int Virtuoso.Hyphen.FusionContext::get_NativePluginLink() + } // end of property FusionContext::NativePluginLink + .property instance class Virtuoso.Hyphen.Loader + Loader() + { + .get instance class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.FusionContext::get_Loader() + } // end of property FusionContext::Loader +} // end of class Virtuoso.Hyphen.FusionContext + +.class private auto ansi sealed beforefieldinit Virtuoso.Hyphen.Loader + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject +{ + .field public static literal string LogCategory = "Hyphen" + .field private static literal string ServicePrefix = "Virtuoso.Hyphen.Loader.Services" + .field private static literal string LoadUnloadPluginsServiceName = "Virtuoso.Hyphen.Loader.ServicesLoadUnloadPlugins" + .field private static literal string ConfigureModulesServiceName = "Virtuoso.Hyphen.Loader.ServicesConfigureModules" + .field private static literal string ShowManagedMenuServiceName = "Virtuoso.Hyphen.Loader.ServicesShowManagedMenu" + .field private static literal string ManagePluginsServiceName = "Virtuoso.Hyphen.Loader.ServicesManagePlugins" + .field private static initonly class [System]System.Uri HyphenUpdateUrl + .field private static initonly class [System]System.Uri HyphenVersionUrl + .field private static initonly class [System]System.Uri HyphenHomepageUrl + .field private static initonly class [mscorlib]System.Version MinMirandaVersion + .field private static class Virtuoso.Hyphen.Loader Singleton + .field private static initonly object SyncObject + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Unloaded + .field private class Virtuoso.Hyphen.Native.PLUGININFO pluginInfo + .field private static native int DummyPluginInfo + .field private valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 PluginInfoHandle + .field private valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 PluginInfoExHandle + .field private class Virtuoso.Hyphen.MirandaPluginLink PluginLink + .field private class Virtuoso.Hyphen.FusionContext FusionContext + .field private class Virtuoso.Hyphen.PluginsSandbox IsolatedPluginsSandbox + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute PluginTasksItem + .field private class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu ManagedMainMenu + .field private initonly class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection InternalHooks + .field private class [System]System.IO.FileSystemWatcher PluginsFolderWatcher + .field private initonly class [mscorlib]System.Threading.ManualResetEvent PluginsLoadedEvent + .field private class [mscorlib]System.Threading.Mutex SingleInstanceMutex + .field private class [mscorlib]System.Threading.SynchronizationContext UIThreadSyncContext + .field private static class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 'CS$<>9__CachedAnonymousMethodDelegate2' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private static class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 'CS$<>9__CachedAnonymousMethodDelegate4' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method public hidebysig specialname static + class [mscorlib]System.Version + get_HyphenVersion() cil managed noinlining + { + // Code size 16 (0x10) + .maxstack 8 + .line 115,115 : 17,74 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Loader.cs' + IL_0000: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetExecutingAssembly() + IL_0005: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_000a: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_000f: ret + } // end of method Loader::get_HyphenVersion + + .method public hidebysig specialname instance bool + get_PluginsLoaded() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 127,127 : 17,55 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: ret + } // end of method Loader::get_PluginsLoaded + + .method public hidebysig specialname instance class Virtuoso.Hyphen.Native.PLUGININFO + get_PluginInfo() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 138,138 : 17,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.Native.PLUGININFO Virtuoso.Hyphen.Loader::pluginInfo + IL_0006: ret + } // end of method Loader::get_PluginInfo + + .method public hidebysig static void Initialize() cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] object CS$2$0000) + .line 156,156 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 158,158 : 17,39 '' + .try + { + IL_000c: ldsfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::Singleton + IL_0011: brtrue.s IL_001d + + .line 159,159 : 21,46 '' + IL_0013: newobj instance void Virtuoso.Hyphen.Loader::.ctor() + IL_0018: stsfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::Singleton + IL_001d: leave.s IL_0026 + + } // end .try + finally + { + IL_001f: ldloc.0 + IL_0020: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0025: endfinally + .line 161,161 : 9,10 '' + } // end handler + IL_0026: ret + } // end of method Loader::Initialize + + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 68 (0x44) + .maxstack 3 + .line 93,93 : 9,98 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::.ctor() + IL_0006: stfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + .line 96,96 : 9,92 '' + IL_000b: ldarg.0 + IL_000c: ldc.i4.0 + IL_000d: newobj instance void [mscorlib]System.Threading.ManualResetEvent::.ctor(bool) + IL_0012: stfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Hyphen.Loader::PluginsLoadedEvent + .line 166,166 : 9,25 '' + IL_0017: ldarg.0 + IL_0018: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + .line 168,168 : 13,82 '' + IL_001d: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0022: ldarg.0 + IL_0023: ldftn instance void Virtuoso.Hyphen.Loader::TrapUnhandledException(object, + class [mscorlib]System.UnhandledExceptionEventArgs) + IL_0029: newobj instance void [mscorlib]System.UnhandledExceptionEventHandler::.ctor(object, + native int) + IL_002e: callvirt instance void [mscorlib]System.AppDomain::add_UnhandledException(class [mscorlib]System.UnhandledExceptionEventHandler) + .line 173,173 : 17,40 '' + .try + { + IL_0033: ldarg.0 + IL_0034: call instance void Virtuoso.Hyphen.Loader::InitializePluginInfo() + .line 174,174 : 17,89 '' + IL_0039: call void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::Initialize() + IL_003e: leave.s IL_0043 + + .line 178,178 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0040: pop + .line 181,181 : 17,23 '' + IL_0041: rethrow + .line 183,183 : 9,10 '' + } // end handler + IL_0043: ret + } // end of method Loader::.ctor + + .method private hidebysig instance void + InitializePluginInfo() cil managed + { + // Code size 63 (0x3f) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Native.PLUGININFO pluginInfo, + [1] class Virtuoso.Hyphen.Native.PLUGININFOEX pluginInfoEx) + .line 190,190 : 13,54 '' + IL_0000: newobj instance void Virtuoso.Hyphen.Native.PLUGININFO::.ctor() + IL_0005: stloc.0 + .line 191,191 : 13,44 '' + IL_0006: ldloc.0 + IL_0007: call void Virtuoso.Hyphen.Loader::PopulatePluginInfo(class Virtuoso.Hyphen.Native.PLUGININFO) + .line 192,192 : 13,86 '' + IL_000c: ldarg.0 + IL_000d: ldloca.s pluginInfo + IL_000f: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0014: stfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoHandle + .line 194,194 : 13,75 '' + IL_0019: call valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_HyphenUUID() + IL_001e: newobj instance void Virtuoso.Hyphen.Native.PLUGININFOEX::.ctor(valuetype [mscorlib]System.Guid) + IL_0023: stloc.1 + .line 195,195 : 13,46 '' + IL_0024: ldloc.1 + IL_0025: call void Virtuoso.Hyphen.Loader::PopulatePluginInfo(class Virtuoso.Hyphen.Native.PLUGININFO) + .line 196,196 : 13,92 '' + IL_002a: ldarg.0 + IL_002b: ldloca.s pluginInfoEx + IL_002d: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0032: stfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoExHandle + .line 198,198 : 13,44 '' + IL_0037: ldarg.0 + IL_0038: ldloc.1 + IL_0039: stfld class Virtuoso.Hyphen.Native.PLUGININFO Virtuoso.Hyphen.Loader::pluginInfo + .line 199,199 : 9,10 '' + IL_003e: ret + } // end of method Loader::InitializePluginInfo + + .method private hidebysig static void PopulatePluginInfo(class Virtuoso.Hyphen.Native.PLUGININFO pluginInfo) cil managed + { + // Code size 133 (0x85) + .maxstack 2 + .line 207,207 : 13,36 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 208,208 : 17,63 '' + IL_0003: ldstr "pluginInfo" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 210,210 : 13,68 '' + IL_000e: ldarg.0 + IL_000f: ldarg.0 + IL_0010: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0015: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_001a: stfld int32 Virtuoso.Hyphen.Native.PLUGININFO::Size + .line 211,211 : 13,44 '' + IL_001f: ldarg.0 + IL_0020: ldstr "virtuoso" + IL_0025: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Author + .line 212,212 : 13,61 '' + IL_002a: ldarg.0 + IL_002b: ldstr "deml.tomas@seznam.cz" + IL_0030: stfld string Virtuoso.Hyphen.Native.PLUGININFO::AuthorEmail + .line 213,213 : 13,60 '' + IL_0035: ldarg.0 + IL_0036: ldstr bytearray (A9 00 20 00 32 00 30 00 30 00 36 00 2D 00 32 00 // .. .2.0.0.6.-.2. + 30 00 31 00 30 00 2C 00 20 00 76 00 69 00 72 00 // 0.1.0.,. .v.i.r. + 74 00 75 00 6F 00 73 00 6F 00 ) // t.u.o.s.o. + IL_003b: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Copyright + .line 214,214 : 13,83 '' + IL_0040: ldarg.0 + IL_0041: ldstr "Microsoft.net runtime for managed plugins." + IL_0046: stfld string Virtuoso.Hyphen.Native.PLUGININFO::Description + .line 215,215 : 13,64 '' + IL_004b: ldarg.0 + IL_004c: ldsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenHomepageUrl + IL_0051: callvirt instance string [mscorlib]System.Object::ToString() + IL_0056: stfld string Virtuoso.Hyphen.Native.PLUGININFO::HomePage + .line 216,216 : 13,63 '' + IL_005b: ldarg.0 + IL_005c: ldc.i4.1 + IL_005d: stfld uint8 Virtuoso.Hyphen.Native.PLUGININFO::Flags + .line 217,217 : 13,50 '' + IL_0062: ldarg.0 + IL_0063: ldc.i4.0 + IL_0064: stfld int32 Virtuoso.Hyphen.Native.PLUGININFO::ReplacesDefaultModule + .line 218,218 : 13,45 '' + IL_0069: ldarg.0 + IL_006a: ldstr "Hyphen" + IL_006f: stfld string Virtuoso.Hyphen.Native.PLUGININFO::ShortName + .line 219,219 : 13,76 '' + IL_0074: ldarg.0 + IL_0075: call class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + IL_007a: call uint32 Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToMirandaVersion(class [mscorlib]System.Version) + IL_007f: stfld uint32 Virtuoso.Hyphen.Native.PLUGININFO::Version + .line 220,220 : 9,10 '' + IL_0084: ret + } // end of method Loader::PopulatePluginInfo + + .method public hidebysig static class Virtuoso.Hyphen.Loader + GetInstance(class [mscorlib]System.Version requiredVersion) cil managed noinlining + { + // Code size 21 (0x15) + .maxstack 8 + .line 237,237 : 13,49 '' + IL_0000: ldarg.0 + IL_0001: call class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + IL_0006: call bool [mscorlib]System.Version::op_GreaterThan(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_000b: brfalse.s IL_000f + + .line 238,238 : 17,29 '' + IL_000d: ldnull + IL_000e: ret + + .line 240,240 : 17,38 '' + IL_000f: call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance() + IL_0014: ret + } // end of method Loader::GetInstance + + .method public hidebysig static class Virtuoso.Hyphen.Loader + GetInstance() cil managed + { + // Code size 42 (0x2a) + .maxstack 2 + .locals init ([0] class Virtuoso.Hyphen.Loader CS$1$0000, + [1] object CS$2$0001) + .line 250,250 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.1 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 252,252 : 17,39 '' + .try + { + IL_000c: ldsfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::Singleton + IL_0011: brtrue.s IL_0019 + + .line 253,253 : 21,59 '' + IL_0013: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0018: throw + + .line 255,255 : 17,34 '' + IL_0019: ldsfld class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::Singleton + IL_001e: stloc.0 + IL_001f: leave.s IL_0028 + + } // end .try + finally + { + IL_0021: ldloc.1 + IL_0022: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0027: endfinally + .line 257,257 : 9,10 '' + } // end handler + IL_0028: ldloc.0 + IL_0029: ret + } // end of method Loader::GetInstance + + .method public hidebysig instance native int + MirandaPluginInfo(uint32 version) cil managed + { + // Code size 56 (0x38) + .maxstack 2 + .locals init ([0] native int CS$1$0000, + [1] object CS$2$0001) + .line 272,272 : 13,46 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Hyphen.Loader::MirandaPluginInfoShared(uint32) + .line 274,274 : 13,50 '' + IL_0007: ldarg.1 + IL_0008: call bool Virtuoso.Hyphen.Loader::SupportsMirandaVersion(uint32) + IL_000d: brtrue.s IL_0015 + + .line 275,275 : 17,45 '' + IL_000f: call native int Virtuoso.Hyphen.Loader::GetDummyPluginInfo() + IL_0014: ret + + .line 278,278 : 17,34 '' + IL_0015: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_001a: dup + IL_001b: stloc.1 + IL_001c: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 279,279 : 21,52 '' + .try + { + IL_0021: ldarg.0 + IL_0022: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoHandle + IL_0027: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_002c: stloc.0 + IL_002d: leave.s IL_0036 + + } // end .try + finally + { + IL_002f: ldloc.1 + IL_0030: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0035: endfinally + .line 281,281 : 9,10 '' + } // end handler + IL_0036: ldloc.0 + IL_0037: ret + } // end of method Loader::MirandaPluginInfo + + .method public hidebysig instance native int + MirandaPluginInfoEx(uint32 version) cil managed + { + // Code size 56 (0x38) + .maxstack 2 + .locals init ([0] native int CS$1$0000, + [1] object CS$2$0001) + .line 293,293 : 13,46 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Hyphen.Loader::MirandaPluginInfoShared(uint32) + .line 295,295 : 13,50 '' + IL_0007: ldarg.1 + IL_0008: call bool Virtuoso.Hyphen.Loader::SupportsMirandaVersion(uint32) + IL_000d: brtrue.s IL_0015 + + .line 296,296 : 17,45 '' + IL_000f: call native int Virtuoso.Hyphen.Loader::GetDummyPluginInfo() + IL_0014: ret + + .line 299,299 : 17,34 '' + IL_0015: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_001a: dup + IL_001b: stloc.1 + IL_001c: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 300,300 : 21,54 '' + .try + { + IL_0021: ldarg.0 + IL_0022: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoExHandle + IL_0027: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_002c: stloc.0 + IL_002d: leave.s IL_0036 + + } // end .try + finally + { + IL_002f: ldloc.1 + IL_0030: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0035: endfinally + .line 302,302 : 9,10 '' + } // end handler + IL_0036: ldloc.0 + IL_0037: ret + } // end of method Loader::MirandaPluginInfoEx + + .method public hidebysig static native int + GetDummyPluginInfo() cil managed + { + // Code size 87 (0x57) + .maxstack 3 + .locals init ([0] native int CS$1$0000, + [1] object CS$2$0001) + .line 310,310 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.1 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 312,312 : 17,52 '' + .try + { + IL_000c: ldsfld native int Virtuoso.Hyphen.Loader::DummyPluginInfo + IL_0011: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0016: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_001b: brfalse.s IL_0046 + + .line 314,314 : 21,96 '' + IL_001d: ldtoken Virtuoso.Hyphen.Native.PLUGININFO + IL_0022: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0027: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_002c: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_0031: stsfld native int Virtuoso.Hyphen.Loader::DummyPluginInfo + .line 315,315 : 21,86 '' + IL_0036: newobj instance void Virtuoso.Hyphen.Native.PLUGININFO::.ctor() + IL_003b: ldsfld native int Virtuoso.Hyphen.Loader::DummyPluginInfo + IL_0040: ldc.i4.0 + IL_0041: call void [mscorlib]System.Runtime.InteropServices.Marshal::StructureToPtr(object, + native int, + bool) + .line 318,318 : 17,40 '' + IL_0046: ldsfld native int Virtuoso.Hyphen.Loader::DummyPluginInfo + IL_004b: stloc.0 + IL_004c: leave.s IL_0055 + + } // end .try + finally + { + IL_004e: ldloc.1 + IL_004f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0054: endfinally + .line 320,320 : 9,10 '' + } // end handler + IL_0055: ldloc.0 + IL_0056: ret + } // end of method Loader::GetDummyPluginInfo + + .method public hidebysig instance void + MirandaPluginInfoShared(uint32 version) cil managed + { + // Code size 25 (0x19) + .maxstack 8 + .line 328,328 : 13,59 '' + IL_0000: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaVersion() + IL_0005: ldnull + IL_0006: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_000b: brfalse.s IL_0018 + + .line 329,329 : 17,91 '' + IL_000d: ldarg.1 + IL_000e: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.Translate::FromMirandaVersion(uint32) + IL_0013: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaVersion(class [mscorlib]System.Version) + .line 330,330 : 9,10 '' + IL_0018: ret + } // end of method Loader::MirandaPluginInfoShared + + .method public hidebysig static bool SupportsMirandaVersion(uint32 version) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 334,334 : 13,82 '' + IL_0000: ldarg.0 + IL_0001: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.Translate::FromMirandaVersion(uint32) + IL_0006: call bool Virtuoso.Hyphen.Loader::SupportsMirandaVersion(class [mscorlib]System.Version) + IL_000b: ret + } // end of method Loader::SupportsMirandaVersion + + .method public hidebysig static bool SupportsMirandaVersion(class [mscorlib]System.Version version) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 339,339 : 13,51 '' + IL_0000: ldarg.0 + IL_0001: ldsfld class [mscorlib]System.Version Virtuoso.Hyphen.Loader::MinMirandaVersion + IL_0006: call bool [mscorlib]System.Version::op_GreaterThanOrEqual(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_000b: ret + } // end of method Loader::SupportsMirandaVersion + + .method public hidebysig instance native int + MirandaPluginInterfaces() cil managed + { + // Code size 29 (0x1d) + .maxstack 2 + .locals init ([0] native int CS$1$0000, + [1] object CS$2$0001) + .line 348,348 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.1 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 349,349 : 17,50 '' + .try + { + IL_000c: call native int Virtuoso.Miranda.Plugins.Native.UUID::get_HyphenInterfaceUUIDs() + IL_0011: stloc.0 + IL_0012: leave.s IL_001b + + } // end .try + finally + { + IL_0014: ldloc.1 + IL_0015: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_001a: endfinally + .line 350,350 : 9,10 '' + } // end handler + IL_001b: ldloc.0 + IL_001c: ret + } // end of method Loader::MirandaPluginInterfaces + + .method public hidebysig instance void + ModuleInducedLoad(native int pPluginLink) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 367,367 : 13,31 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance int32 Virtuoso.Hyphen.Loader::Load(native int) + IL_0007: pop + .line 368,368 : 9,10 '' + IL_0008: ret + } // end of method Loader::ModuleInducedLoad + + .method public hidebysig instance int32 + Load(native int pPluginLink) cil managed + { + // Code size 94 (0x5e) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Exception e, + [1] int32 CS$1$0000, + [2] object CS$2$0001) + .line 377,377 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.2 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 379,379 : 17,99 '' + .try + { + IL_000c: ldc.i4.1 + IL_000d: call void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::set_HyphenIsLoading(bool) + .line 384,384 : 21,44 '' + .try + { + .try + { + IL_0012: ldarg.0 + IL_0013: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.Loader::PluginLink + IL_0018: brtrue.s IL_0032 + + .line 388,388 : 25,49 '' + IL_001a: call void Virtuoso.Hyphen.Loader::VerifyFxConfiguration() + .line 389,389 : 25,48 '' + IL_001f: ldarg.0 + IL_0020: call instance void Virtuoso.Hyphen.Loader::EnsureSingleInstance() + .line 391,391 : 25,63 '' + IL_0025: ldarg.0 + IL_0026: ldarg.1 + IL_0027: call instance void Virtuoso.Hyphen.Loader::InitializeRuntimeContext(native int) + .line 392,392 : 25,45 '' + IL_002c: ldarg.0 + IL_002d: call instance void Virtuoso.Hyphen.Loader::HookRuntimeEvents() + .line 396,396 : 21,51 '' + IL_0032: ldc.i4.0 + IL_0033: stloc.1 + IL_0034: leave.s IL_005c + + .line 398,398 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0036: stloc.0 + .line 401,401 : 21,77 '' + IL_0037: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_003c: ldloc.0 + IL_003d: ldnull + IL_003e: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 403,403 : 21,30 '' + IL_0043: ldarg.0 + IL_0044: call instance int32 Virtuoso.Hyphen.Loader::Unload() + IL_0049: pop + .line 404,404 : 21,51 '' + IL_004a: ldc.i4.m1 + IL_004b: stloc.1 + IL_004c: leave.s IL_005c + + .line 408,408 : 21,104 '' + } // end handler + } // end .try + finally + { + IL_004e: ldc.i4.0 + IL_004f: call void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::set_HyphenIsLoading(bool) + IL_0054: endfinally + } // end handler + } // end .try + finally + { + IL_0055: ldloc.2 + IL_0056: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_005b: endfinally + .line 411,411 : 9,10 '' + } // end handler + IL_005c: ldloc.1 + IL_005d: ret + } // end of method Loader::Load + + .method private hidebysig instance void + InitializeRuntimeContext(native int pPluginLink) cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 420,420 : 13,47 '' + IL_0000: call void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Initialize() + .line 423,423 : 13,69 '' + IL_0005: ldarg.0 + IL_0006: ldarg.1 + IL_0007: call class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.MirandaPluginLink::FromPointer(native int) + IL_000c: stfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.Loader::PluginLink + .line 426,426 : 13,64 '' + IL_0011: ldarg.0 + IL_0012: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.Loader::PluginLink + IL_0017: ldc.i4.1 + IL_0018: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink, + bool) + .line 427,427 : 9,10 '' + IL_001d: ret + } // end of method Loader::InitializeRuntimeContext + + .method private hidebysig instance void + HookRuntimeEvents() cil managed + { + // Code size 62 (0x3e) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor modulesLoadedEventHook, + [1] class [mscorlib]System.Exception e) + .line 436,436 : 17,227 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0006: ldstr "Miranda/System/ModulesLoaded" + IL_000b: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0010: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0015: ldarg.0 + IL_0016: ldftn instance int32 Virtuoso.Hyphen.Loader::CompleteInitialization(native uint, + native int) + IL_001c: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0021: ldc.i4.1 + IL_0022: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0027: stloc.0 + .line 437,437 : 17,64 '' + IL_0028: ldloc.0 + IL_0029: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_002e: leave.s IL_003d + + .line 439,439 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0030: stloc.1 + .line 442,442 : 17,97 '' + IL_0031: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InternalErrorOccurred() + IL_0036: ldloc.1 + IL_0037: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_003c: throw + + .line 444,444 : 9,10 '' + } // end handler + IL_003d: ret + } // end of method Loader::HookRuntimeEvents + + .method private hidebysig instance int32 + CompleteInitialization(native uint wParam, + native int lParam) cil managed + { + // Code size 144 (0x90) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [1] int32 CS$1$0000, + [2] object CS$2$0001) + .line 453,453 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.2 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 458,458 : 21,107 '' + .try + { + .try + { + IL_000c: ldarg.0 + IL_000d: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0012: ldstr "Miranda/System/ModulesLoaded" + IL_0017: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Find(string) + IL_001c: stloc.0 + .line 459,459 : 21,57 '' + IL_001d: ldloc.0 + IL_001e: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 460,460 : 21,54 '' + IL_0023: ldarg.0 + IL_0024: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0029: ldloc.0 + IL_002a: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_002f: pop + .line 463,463 : 21,211 '' + IL_0030: ldarg.0 + IL_0031: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0036: ldstr "Miranda/System/OkToExitEvent" + IL_003b: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0040: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0045: ldarg.0 + IL_0046: ldftn instance int32 Virtuoso.Hyphen.Loader::UnloadOnShutdownService(native uint, + native int) + IL_004c: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0051: ldc.i4.1 + IL_0052: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0057: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 465,465 : 21,41 '' + IL_005c: call void Virtuoso.Hyphen.Loader::InitializeUpdater() + .line 466,466 : 21,47 '' + IL_0061: ldarg.0 + IL_0062: call instance void Virtuoso.Hyphen.Loader::InitializePluginsFolder() + .line 467,467 : 21,38 '' + IL_0067: ldarg.0 + IL_0068: call instance void Virtuoso.Hyphen.Loader::InitializeMenu() + .line 469,469 : 21,70 '' + IL_006d: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0072: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::RaiseModulesLoadedEvent() + IL_0077: leave.s IL_0083 + + .line 471,471 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0079: pop + .line 474,474 : 21,30 '' + IL_007a: ldarg.0 + IL_007b: call instance int32 Virtuoso.Hyphen.Loader::Unload() + IL_0080: pop + IL_0081: leave.s IL_0083 + + .line 477,477 : 17,52 '' + } // end handler + IL_0083: ldc.i4.0 + IL_0084: stloc.1 + IL_0085: leave.s IL_008e + + } // end .try + finally + { + IL_0087: ldloc.2 + IL_0088: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_008d: endfinally + .line 479,479 : 9,10 '' + } // end handler + IL_008e: ldloc.1 + IL_008f: ret + } // end of method Loader::CompleteInitialization + + .method private hidebysig static void InitializeUpdater() cil managed + { + // Code size 40 (0x28) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update update) + .line 486,486 : 13,51 '' + IL_0000: call bool Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin::IsUpdateSupported() + IL_0005: brfalse.s IL_0027 + + .line 488,488 : 17,116 '' + IL_0007: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_000c: ldsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenUpdateUrl + IL_0011: ldsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenVersionUrl + IL_0016: ldstr " " + IL_001b: newobj instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [System]System.Uri, + class [System]System.Uri, + string) + IL_0020: stloc.0 + .line 489,489 : 17,57 '' + IL_0021: ldloc.0 + IL_0022: call void Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin::RegisterForUpdate(class Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update) + .line 491,491 : 9,10 '' + IL_0027: ret + } // end of method Loader::InitializeUpdater + + .method private hidebysig instance void + InitializePluginsFolder() cil managed + { + // Code size 139 (0x8b) + .maxstack 3 + .line 498,498 : 13,80 '' + IL_0000: call string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath() + IL_0005: call bool [mscorlib]System.IO.Directory::Exists(string) + IL_000a: brtrue.s IL_0017 + + .line 499,499 : 17,88 '' + IL_000c: call string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath() + IL_0011: call class [mscorlib]System.IO.DirectoryInfo [mscorlib]System.IO.Directory::CreateDirectory(string) + IL_0016: pop + .line 501,501 : 13,112 '' + IL_0017: ldarg.0 + IL_0018: call string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath() + IL_001d: ldstr "*.dll" + IL_0022: newobj instance void [System]System.IO.FileSystemWatcher::.ctor(string, + string) + IL_0027: stfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + .line 502,502 : 13,64 '' + IL_002c: ldarg.0 + IL_002d: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0032: ldc.i4.0 + IL_0033: callvirt instance void [System]System.IO.FileSystemWatcher::set_IncludeSubdirectories(bool) + .line 503,503 : 13,73 '' + IL_0038: ldarg.0 + IL_0039: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_003e: ldc.i4.s 16 + IL_0040: callvirt instance void [System]System.IO.FileSystemWatcher::set_NotifyFilter(valuetype [System]System.IO.NotifyFilters) + .line 504,504 : 13,67 '' + IL_0045: ldarg.0 + IL_0046: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_004b: ldarg.0 + IL_004c: ldftn instance void Virtuoso.Hyphen.Loader::PluginsWatcherHandler(object, + class [System]System.IO.FileSystemEventArgs) + IL_0052: newobj instance void [System]System.IO.FileSystemEventHandler::.ctor(object, + native int) + IL_0057: callvirt instance void [System]System.IO.FileSystemWatcher::add_Deleted(class [System]System.IO.FileSystemEventHandler) + .line 505,505 : 13,67 '' + IL_005c: ldarg.0 + IL_005d: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0062: ldarg.0 + IL_0063: ldftn instance void Virtuoso.Hyphen.Loader::PluginsWatcherHandler(object, + class [System]System.IO.FileSystemEventArgs) + IL_0069: newobj instance void [System]System.IO.FileSystemEventHandler::.ctor(object, + native int) + IL_006e: callvirt instance void [System]System.IO.FileSystemWatcher::add_Changed(class [System]System.IO.FileSystemEventHandler) + .line 506,506 : 13,67 '' + IL_0073: ldarg.0 + IL_0074: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0079: ldarg.0 + IL_007a: ldftn instance void Virtuoso.Hyphen.Loader::PluginsWatcherHandler(object, + class [System]System.IO.FileSystemEventArgs) + IL_0080: newobj instance void [System]System.IO.FileSystemEventHandler::.ctor(object, + native int) + IL_0085: callvirt instance void [System]System.IO.FileSystemWatcher::add_Created(class [System]System.IO.FileSystemEventHandler) + .line 507,507 : 9,10 '' + IL_008a: ret + } // end of method Loader::InitializePluginsFolder + + .method private hidebysig instance void + InitializeMenu() cil managed + { + // Code size 373 (0x175) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactList clist, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item, + [3] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute CS$0$0000) + .line 514,514 : 13,85 '' + IL_0000: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0005: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_000a: stloc.0 + .line 515,515 : 13,68 '' + IL_000b: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0010: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList() + IL_0015: stloc.1 + .line 518,518 : 13,175 '' + IL_0016: ldarg.0 + IL_0017: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_001c: ldstr "Virtuoso.Hyphen.Loader.ServicesLoadUnloadPlugins" + IL_0021: ldloc.0 + IL_0022: ldarg.0 + IL_0023: ldftn instance int32 Virtuoso.Hyphen.Loader::LoadUnloadPluginsService(native uint, + native int) + IL_0029: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_002e: ldc.i4.2 + IL_002f: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0034: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 519,519 : 13,173 '' + IL_0039: ldarg.0 + IL_003a: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_003f: ldstr "Virtuoso.Hyphen.Loader.ServicesConfigureModules" + IL_0044: ldloc.0 + IL_0045: ldarg.0 + IL_0046: ldftn instance int32 Virtuoso.Hyphen.Loader::ConfigureModulesService(native uint, + native int) + IL_004c: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0051: ldc.i4.2 + IL_0052: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0057: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 520,520 : 13,171 '' + IL_005c: ldarg.0 + IL_005d: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0062: ldstr "Virtuoso.Hyphen.Loader.ServicesShowManagedMenu" + IL_0067: ldloc.0 + IL_0068: ldarg.0 + IL_0069: ldftn instance int32 Virtuoso.Hyphen.Loader::ShowManagedMenuService(native uint, + native int) + IL_006f: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0074: ldc.i4.2 + IL_0075: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_007a: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 521,521 : 13,167 '' + IL_007f: ldarg.0 + IL_0080: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0085: ldstr "Virtuoso.Hyphen.Loader.ServicesManagePlugins" + IL_008a: ldloc.0 + IL_008b: ldarg.0 + IL_008c: ldftn instance int32 Virtuoso.Hyphen.Loader::ManagePluginsService(native uint, + native int) + IL_0092: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0097: ldc.i4.2 + IL_0098: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_009d: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 523,523 : 13,37 '' + IL_00a2: ldarg.0 + IL_00a3: call instance void Virtuoso.Hyphen.Loader::InitializeManagedMenu() + .line 525,525 : 13,183 '' + IL_00a8: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_LoadUnloadPlugins() + IL_00ad: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Hyphen() + IL_00b2: ldstr "Virtuoso.Hyphen.Loader.ServicesLoadUnloadPlugins" + IL_00b7: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string) + IL_00bc: stloc.2 + .line 526,526 : 13,44 '' + IL_00bd: ldloc.2 + IL_00be: ldc.i4.0 + IL_00bf: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem(bool) + .line 527,527 : 13,33 '' + IL_00c4: ldloc.2 + IL_00c5: ldc.i4.1 + IL_00c6: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon(bool) + .line 528,528 : 13,41 '' + IL_00cb: ldloc.2 + IL_00cc: ldc.i4.1 + IL_00cd: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon(bool) + .line 529,529 : 13,86 '' + IL_00d2: ldloc.2 + IL_00d3: ldstr "Virtuoso.Miranda.Plugins.Resources.LoadUnloadPlugi" + + "ns.ico" + IL_00d8: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID(string) + .line 530,530 : 13,69 '' + IL_00dd: ldloc.1 + IL_00de: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_00e3: ldloc.2 + IL_00e4: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + .line 532,532 : 13,164 '' + IL_00e9: ldarg.0 + IL_00ea: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ManagePlugins() + IL_00ef: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Hyphen() + IL_00f4: ldstr "Virtuoso.Hyphen.Loader.ServicesManagePlugins" + IL_00f9: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string) + IL_00fe: dup + IL_00ff: stloc.3 + IL_0100: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Virtuoso.Hyphen.Loader::PluginTasksItem + IL_0105: ldloc.3 + IL_0106: stloc.2 + .line 533,533 : 13,44 '' + IL_0107: ldloc.2 + IL_0108: ldc.i4.0 + IL_0109: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem(bool) + .line 534,534 : 13,33 '' + IL_010e: ldloc.2 + IL_010f: ldc.i4.1 + IL_0110: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon(bool) + .line 535,535 : 13,41 '' + IL_0115: ldloc.2 + IL_0116: ldc.i4.1 + IL_0117: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon(bool) + .line 536,536 : 13,78 '' + IL_011c: ldloc.2 + IL_011d: ldstr "Virtuoso.Miranda.Plugins.Resources.Configure.ico" + IL_0122: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID(string) + .line 537,537 : 13,69 '' + IL_0127: ldloc.1 + IL_0128: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_012d: ldloc.2 + IL_012e: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + .line 539,539 : 13,162 '' + IL_0133: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ConfigureStandaloneModules() + IL_0138: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Hyphen() + IL_013d: ldstr "Virtuoso.Hyphen.Loader.ServicesConfigureModules" + IL_0142: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string) + IL_0147: stloc.2 + .line 540,540 : 13,44 '' + IL_0148: ldloc.2 + IL_0149: ldc.i4.0 + IL_014a: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem(bool) + .line 541,541 : 13,33 '' + IL_014f: ldloc.2 + IL_0150: ldc.i4.1 + IL_0151: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon(bool) + .line 542,542 : 13,41 '' + IL_0156: ldloc.2 + IL_0157: ldc.i4.1 + IL_0158: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon(bool) + .line 543,543 : 13,78 '' + IL_015d: ldloc.2 + IL_015e: ldstr "Virtuoso.Miranda.Plugins.Resources.Configure.ico" + IL_0163: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID(string) + .line 544,544 : 13,69 '' + IL_0168: ldloc.1 + IL_0169: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_016e: ldloc.2 + IL_016f: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + .line 545,545 : 9,10 '' + IL_0174: ret + } // end of method Loader::InitializeMenu + + .method private hidebysig instance void + InitializeManagedMenu() cil managed + { + // Code size 81 (0x51) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item) + .line 552,552 : 13,53 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::.ctor() + IL_0006: stfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu Virtuoso.Hyphen.Loader::ManagedMainMenu + .line 554,554 : 13,153 '' + IL_000b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ShowManagedMainMenu() + IL_0010: ldstr "Virtuoso.Hyphen.Loader.ServicesShowManagedMenu" + IL_0015: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string) + IL_001a: stloc.0 + .line 555,555 : 13,44 '' + IL_001b: ldloc.0 + IL_001c: ldc.i4.0 + IL_001d: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem(bool) + .line 556,556 : 13,33 '' + IL_0022: ldloc.0 + IL_0023: ldc.i4.1 + IL_0024: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon(bool) + .line 557,557 : 13,41 '' + IL_0029: ldloc.0 + IL_002a: ldc.i4.1 + IL_002b: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon(bool) + .line 558,558 : 13,89 '' + IL_0030: ldloc.0 + IL_0031: ldstr "Virtuoso.Miranda.Plugins.Resources.ShowManagedMenu" + + "Items.ico" + IL_0036: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID(string) + .line 561,561 : 13,98 '' + IL_003b: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0040: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList() + IL_0045: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_004a: ldloc.0 + IL_004b: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + .line 562,562 : 9,10 '' + IL_0050: ret + } // end of method Loader::InitializeManagedMenu + + .method public hidebysig instance int32 + Unload() cil managed + { + // Code size 106 (0x6a) + .maxstack 2 + .locals init ([0] bool lazy, + [1] int32 CS$1$0000, + [2] object CS$2$0001) + .line 581,581 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.2 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 587,587 : 21,34 '' + .try + { + .try + { + .try + { + IL_000c: ldarg.0 + IL_000d: volatile. + IL_000f: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Loader::Unloaded + IL_0014: brfalse.s IL_001a + + .line 588,588 : 25,60 '' + IL_0016: ldc.i4.0 + IL_0017: stloc.1 + IL_0018: leave.s IL_0068 + + .line 590,590 : 21,58 '' + IL_001a: call bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Initialized() + IL_001f: brfalse.s IL_002b + + .line 591,591 : 25,63 '' + IL_0021: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0026: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save() + .line 593,593 : 21,78 '' + IL_002b: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0030: callvirt instance bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_UseLazyUnload() + IL_0035: stloc.0 + .line 595,595 : 21,39 '' + IL_0036: ldarg.0 + IL_0037: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_003c: brfalse.s IL_0045 + + .line 596,596 : 25,45 '' + IL_003e: ldarg.0 + IL_003f: ldloc.0 + IL_0040: call instance void Virtuoso.Hyphen.Loader::UnloadPlugins(bool) + .line 599,599 : 21,30 '' + IL_0045: ldloc.0 + IL_0046: brtrue.s IL_004e + + .line 606,606 : 25,45 '' + IL_0048: ldarg.0 + IL_0049: call instance void Virtuoso.Hyphen.Loader::PerformFullUnload() + .line 609,609 : 21,56 '' + IL_004e: ldc.i4.0 + IL_004f: stloc.1 + IL_0050: leave.s IL_0068 + + .line 611,611 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0052: pop + .line 614,614 : 21,56 '' + IL_0053: ldc.i4.m1 + IL_0054: stloc.1 + IL_0055: leave.s IL_0068 + + .line 618,618 : 21,37 '' + } // end handler + } // end .try + finally + { + IL_0057: ldarg.0 + IL_0058: ldc.i4.1 + IL_0059: volatile. + IL_005b: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Hyphen.Loader::Unloaded + IL_0060: endfinally + } // end handler + } // end .try + finally + { + IL_0061: ldloc.2 + IL_0062: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0067: endfinally + .line 621,621 : 9,10 '' + } // end handler + IL_0068: ldloc.1 + IL_0069: ret + } // end of method Loader::Unload + + .method private hidebysig instance void + PerformFullUnload() cil managed + { + // Code size 58 (0x3a) + .maxstack 8 + .line 628,628 : 13,37 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Loader::DisposePluginsWatcher() + .line 630,630 : 13,37 '' + IL_0006: ldarg.0 + IL_0007: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoHandle + IL_000c: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + .line 631,631 : 13,39 '' + IL_0011: ldarg.0 + IL_0012: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Virtuoso.Hyphen.Loader::PluginInfoExHandle + IL_0017: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + .line 633,633 : 13,41 '' + IL_001c: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Dispose() + .line 636,636 : 13,83 '' + IL_0021: call bool Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Initialized() + IL_0026: brfalse.s IL_0039 + + IL_0028: call class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + IL_002d: callvirt instance bool Virtuoso.Hyphen.Mini.ModuleManager::get_HasModules() + IL_0032: brtrue.s IL_0039 + + .line 637,637 : 17,52 '' + IL_0034: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InvalidateCurrent() + .line 640,640 : 9,10 '' + IL_0039: ret + } // end of method Loader::PerformFullUnload + + .method private hidebysig instance void + DisposePluginsWatcher() cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 647,647 : 13,46 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0006: brfalse.s IL_0013 + + .line 648,648 : 17,48 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_000e: callvirt instance void [System]System.ComponentModel.Component::Dispose() + .line 649,649 : 9,10 '' + IL_0013: ret + } // end of method Loader::DisposePluginsWatcher + + .method private hidebysig instance void + DisposePluginTasksMenu() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 658,658 : 9,10 '' + IL_0000: ret + } // end of method Loader::DisposePluginTasksMenu + + .method private hidebysig instance int32 + UnloadOnShutdownService(native uint wParam, + native int lParam) cil managed + { + // Code size 108 (0x6c) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [1] object CS$2$0000) + .line 667,667 : 17,34 '' + .try + { + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.1 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 669,669 : 21,102 '' + .try + { + IL_000c: ldarg.0 + IL_000d: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0012: ldstr "Miranda/System/OkToExitEvent" + IL_0017: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Find(string) + IL_001c: stloc.0 + .line 670,670 : 21,57 '' + IL_001d: ldloc.0 + IL_001e: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 671,671 : 21,54 '' + IL_0023: ldarg.0 + IL_0024: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Hyphen.Loader::InternalHooks + IL_0029: ldloc.0 + IL_002a: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_002f: pop + .line 673,673 : 21,39 '' + IL_0030: ldarg.0 + IL_0031: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0036: brfalse.s IL_0055 + + .line 674,674 : 25,127 '' + IL_0038: ldarg.0 + IL_0039: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_003e: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_0043: ldnull + IL_0044: ldftn void Virtuoso.Hyphen.Loader::BroadcastBeforeMirandaExitEvent(class Virtuoso.Miranda.Plugins.PluginManagerBase, + object) + IL_004a: newobj instance void class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1::.ctor(object, + native int) + IL_004f: ldnull + IL_0050: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::DoContextCallback(class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1, + !!0) + .line 676,676 : 21,30 '' + IL_0055: ldarg.0 + IL_0056: call instance int32 Virtuoso.Hyphen.Loader::Unload() + IL_005b: pop + IL_005c: leave.s IL_0065 + + } // end .try + finally + { + IL_005e: ldloc.1 + IL_005f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0064: endfinally + } // end handler + IL_0065: leave.s IL_006a + + .line 679,679 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0067: pop + IL_0068: leave.s IL_006a + + .line 684,684 : 13,22 '' + } // end handler + IL_006a: ldc.i4.0 + IL_006b: ret + } // end of method Loader::UnloadOnShutdownService + + .method private hidebysig static void BroadcastBeforeMirandaExitEvent(class Virtuoso.Miranda.Plugins.PluginManagerBase sender, + object state) cil managed + { + // Code size 93 (0x5d) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000) + .line 694,694 : 17,77 '' + .try + { + IL_0000: ldarg.0 + IL_0001: callvirt instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + IL_0006: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 696,696 : 57,71 '' + IL_000b: ldarg.0 + IL_000c: callvirt instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + IL_0011: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_0016: stloc.1 + .try + { + IL_0017: br.s IL_003a + + .line 696,696 : 26,53 '' + IL_0019: ldloc.1 + IL_001a: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_001f: stloc.0 + .line 700,700 : 25,81 '' + .try + { + IL_0020: ldloc.0 + IL_0021: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + .line 701,701 : 25,75 '' + IL_0026: ldloc.0 + IL_0027: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_002c: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforeMirandaShutdownInternal() + IL_0031: leave.s IL_003a + + .line 705,705 : 25,69 '' + } // end .try + finally + { + IL_0033: ldloc.0 + IL_0034: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0039: endfinally + .line 696,696 : 54,56 '' + } // end handler + IL_003a: ldloc.1 + IL_003b: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0040: brtrue.s IL_0019 + + IL_0042: leave.s IL_004e + + } // end .try + finally + { + IL_0044: ldloc.1 + IL_0045: brfalse.s IL_004d + + IL_0047: ldloc.1 + IL_0048: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_004d: endfinally + } // end handler + IL_004e: leave.s IL_005c + + .line 711,711 : 17,65 '' + } // end .try + finally + { + IL_0050: ldarg.0 + IL_0051: callvirt instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + IL_0056: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_005b: endfinally + .line 713,713 : 9,10 '' + } // end handler + IL_005c: ret + } // end of method Loader::BroadcastBeforeMirandaExitEvent + + .method private hidebysig instance int32 + LoadUnloadPluginsService(native uint wParam, + native int lParam) cil managed + { + // Code size 83 (0x53) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Exception e, + [1] object CS$2$0000) + .line 732,732 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.1 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 736,736 : 21,40 '' + .try + { + .try + { + IL_000c: ldarg.0 + IL_000d: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0012: brtrue.s IL_001c + + .line 737,737 : 25,39 '' + IL_0014: ldarg.0 + IL_0015: call instance void Virtuoso.Hyphen.Loader::LoadPlugins() + IL_001a: br.s IL_0037 + + .line 738,738 : 26,215 '' + IL_001c: ldc.i4.6 + IL_001d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_LoadUnloadPlugins_Unload() + IL_0022: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_LoadUnloadPlugins() + IL_0027: ldc.i4.4 + IL_0028: ldc.i4.s 48 + IL_002a: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_002f: bne.un.s IL_0037 + + .line 739,739 : 25,41 '' + IL_0031: ldarg.0 + IL_0032: call instance void Virtuoso.Hyphen.Loader::UnloadPlugins() + IL_0037: leave.s IL_0048 + + .line 741,741 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0039: stloc.0 + .line 743,743 : 21,77 '' + IL_003a: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_003f: ldloc.0 + IL_0040: ldnull + IL_0041: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0046: leave.s IL_0048 + + } // end handler + IL_0048: leave.s IL_0051 + + } // end .try + finally + { + IL_004a: ldloc.1 + IL_004b: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0050: endfinally + .line 747,747 : 13,48 '' + } // end handler + IL_0051: ldc.i4.0 + IL_0052: ret + } // end of method Loader::LoadUnloadPluginsService + + .method private hidebysig instance void + ReloadPlugins() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 755,755 : 13,29 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Loader::UnloadPlugins() + .line 756,756 : 13,27 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Hyphen.Loader::LoadPlugins() + .line 757,757 : 9,10 '' + IL_000c: ret + } // end of method Loader::ReloadPlugins + + .method private hidebysig instance void + LoadPlugins() cil managed + { + // Code size 64 (0x40) + .maxstack 2 + .locals init ([0] object CS$2$0000) + .line 764,764 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 766,766 : 17,35 '' + .try + { + IL_000c: ldarg.0 + IL_000d: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0012: brfalse.s IL_001f + + .line 767,767 : 21,107 '' + IL_0014: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InternalErrorOccurred() + IL_0019: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001e: throw + + .line 769,769 : 17,45 '' + IL_001f: ldarg.0 + IL_0020: call instance void Virtuoso.Hyphen.Loader::InitializePluginTasksMenu() + .line 772,772 : 17,62 '' + IL_0025: ldarg.0 + IL_0026: ldftn instance void Virtuoso.Hyphen.Loader::StartFusion() + IL_002c: newobj instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate::.ctor(object, + native int) + IL_0031: call void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::ShowDialog(class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate) + IL_0036: leave.s IL_003f + + } // end .try + finally + { + IL_0038: ldloc.0 + IL_0039: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_003e: endfinally + .line 774,774 : 9,10 '' + } // end handler + IL_003f: ret + } // end of method Loader::LoadPlugins + + .method private hidebysig instance void + StartFusion() cil managed + { + // Code size 65 (0x41) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Exception e) + .line 783,783 : 13,33 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Loader::InitializeSandbox() + .line 784,784 : 13,39 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Hyphen.Loader::InitializeFusionContext() + .line 786,786 : 13,33 '' + IL_000c: ldarg.0 + IL_000d: call instance void Virtuoso.Hyphen.Loader::LoadPluginManager() + .line 790,790 : 17,75 '' + .try + { + IL_0012: ldarg.0 + IL_0013: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0018: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_001d: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::FindAndLoadPlugins() + .line 791,791 : 17,44 '' + IL_0022: call void Virtuoso.Hyphen.Loader::ClearStringResolverCache() + IL_0027: leave.s IL_0040 + + .line 793,793 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0029: stloc.0 + .line 795,795 : 17,33 '' + IL_002a: ldarg.0 + IL_002b: call instance void Virtuoso.Hyphen.Loader::UnloadPlugins() + .line 796,796 : 17,89 '' + IL_0030: ldarg.0 + IL_0031: ldarg.0 + IL_0032: ldloc.0 + IL_0033: ldc.i4.0 + IL_0034: newobj instance void [mscorlib]System.UnhandledExceptionEventArgs::.ctor(object, + bool) + IL_0039: call instance void Virtuoso.Hyphen.Loader::TrapUnhandledException(object, + class [mscorlib]System.UnhandledExceptionEventArgs) + IL_003e: leave.s IL_0040 + + .line 798,798 : 9,10 '' + } // end handler + IL_0040: ret + } // end of method Loader::StartFusion + + .method private hidebysig instance void + InitializeSandbox() cil managed + { + // Code size 46 (0x2e) + .maxstack 8 + .line 805,805 : 13,59 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Hyphen.PluginsSandbox::.ctor() + IL_0006: stfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + .line 806,806 : 13,89 '' + IL_000b: ldarg.0 + IL_000c: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0011: ldarg.0 + IL_0012: ldftn instance void Virtuoso.Hyphen.Loader::TrapUnhandledException(object, + class [mscorlib]System.UnhandledExceptionEventArgs) + IL_0018: newobj instance void [mscorlib]System.UnhandledExceptionEventHandler::.ctor(object, + native int) + IL_001d: callvirt instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::SetUnhandledExceptionHandler(class [mscorlib]System.UnhandledExceptionEventHandler) + .line 807,807 : 13,56 '' + IL_0022: ldarg.0 + IL_0023: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0028: callvirt instance void Virtuoso.Hyphen.PluginsSandbox::LoadAssemblyProbe() + .line 808,808 : 9,10 '' + IL_002d: ret + } // end of method Loader::InitializeSandbox + + .method private hidebysig instance void + InitializeFusionContext() cil managed + { + // Code size 35 (0x23) + .maxstack 8 + .line 815,815 : 13,123 '' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: ldarg.0 + IL_0003: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0008: callvirt instance class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.PluginsSandbox::get_AssemblyProbe() + IL_000d: ldarg.0 + IL_000e: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Hyphen.Loader::PluginLink + IL_0013: callvirt instance native int Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLinkPtr() + IL_0018: newobj instance void Virtuoso.Hyphen.FusionContext::.ctor(class Virtuoso.Hyphen.Loader, + class Virtuoso.Miranda.Plugins.AssemblyProbe, + native int) + IL_001d: stfld class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.Loader::FusionContext + .line 816,816 : 9,10 '' + IL_0022: ret + } // end of method Loader::InitializeFusionContext + + .method private hidebysig instance void + LoadPluginManager() cil managed + { + // Code size 84 (0x54) + .maxstack 3 + .line 823,823 : 13,69 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0006: ldarg.0 + IL_0007: ldfld class Virtuoso.Hyphen.FusionContext Virtuoso.Hyphen.Loader::FusionContext + IL_000c: callvirt instance void Virtuoso.Hyphen.PluginsSandbox::LoadPluginManager(class Virtuoso.Hyphen.FusionContext) + .line 826,826 : 13,97 '' + IL_0011: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0016: ldarg.0 + IL_0017: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_001c: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_0021: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::AssociatePluginManager(class Virtuoso.Miranda.Plugins.PluginManagerBase) + .line 828,832 : 13,15 '' + IL_0026: ldarg.0 + IL_0027: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_002c: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_0031: ldarg.0 + IL_0032: ldftn instance void Virtuoso.Hyphen.Loader::'b__0'(object, + class [mscorlib]System.EventArgs) + IL_0038: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_003d: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::add_FusionCompleted(class [mscorlib]System.EventHandler) + .line 834,834 : 13,83 '' + IL_0042: ldarg.0 + IL_0043: ldarg.0 + IL_0044: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0049: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_004e: call instance void Virtuoso.Hyphen.Loader::PromoteManagedMenuIntoAppDomain(class Virtuoso.Miranda.Plugins.PluginManagerBase) + .line 835,835 : 9,10 '' + IL_0053: ret + } // end of method Loader::LoadPluginManager + + .method public hidebysig instance void + InitializePluginTasksMenu() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 844,844 : 9,10 '' + IL_0000: ret + } // end of method Loader::InitializePluginTasksMenu + + .method private hidebysig instance void + InitializeUISyncContext() cil managed + { + // Code size 29 (0x1d) + .maxstack 8 + .line 855,855 : 13,45 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Threading.SynchronizationContext Virtuoso.Hyphen.Loader::UIThreadSyncContext + IL_0006: brtrue.s IL_001c + + .line 856,856 : 17,102 '' + IL_0008: ldarg.0 + IL_0009: call class [mscorlib]System.Threading.SynchronizationContext [mscorlib]System.Threading.SynchronizationContext::get_Current() + IL_000e: dup + IL_000f: brtrue.s IL_0017 + + IL_0011: pop + IL_0012: newobj instance void [mscorlib]System.Threading.SynchronizationContext::.ctor() + IL_0017: stfld class [mscorlib]System.Threading.SynchronizationContext Virtuoso.Hyphen.Loader::UIThreadSyncContext + .line 857,857 : 9,10 '' + IL_001c: ret + } // end of method Loader::InitializeUISyncContext + + .method public hidebysig instance void + PromoteManagedMenuIntoAppDomain(class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager) cil managed + { + // Code size 64 (0x40) + .maxstack 3 + .line 865,865 : 13,39 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 866,866 : 17,66 '' + IL_0003: ldstr "pluginManager" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 868,868 : 13,41 '' + IL_000e: ldarg.0 + IL_000f: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu Virtuoso.Hyphen.Loader::ManagedMainMenu + IL_0014: brfalse.s IL_003f + + .line 870,873 : 17,37 '' + IL_0016: ldarg.1 + IL_0017: ldsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_001c: brtrue.s IL_002f + + IL_001e: ldnull + IL_001f: ldftn void Virtuoso.Hyphen.Loader::'b__1'(class Virtuoso.Miranda.Plugins.PluginManagerBase, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu) + IL_0025: newobj instance void class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1::.ctor(object, + native int) + IL_002a: stsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_002f: ldsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_0034: ldarg.0 + IL_0035: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu Virtuoso.Hyphen.Loader::ManagedMainMenu + IL_003a: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::DoContextCallback(class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1, + !!0) + .line 875,875 : 9,10 '' + IL_003f: ret + } // end of method Loader::PromoteManagedMenuIntoAppDomain + + .method private hidebysig static void ClearStringResolverCache() cil managed + { + // Code size 30 (0x1e) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache cache, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache CS$2$0000) + .line 882,882 : 13,71 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::get_Singleton() + IL_0005: stloc.0 + .line 884,884 : 13,25 '' + IL_0006: ldloc.0 + IL_0007: dup + IL_0008: stloc.1 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 885,885 : 17,31 '' + .try + { + IL_000e: ldloc.0 + IL_000f: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + IL_0014: leave.s IL_001d + + } // end .try + finally + { + IL_0016: ldloc.1 + IL_0017: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_001c: endfinally + .line 886,886 : 9,10 '' + } // end handler + IL_001d: ret + } // end of method Loader::ClearStringResolverCache + + .method private hidebysig instance int32 + ShowManagedMenuService(native uint wParam, + native int lParam) cil managed + { + // Code size 86 (0x56) + .maxstack 3 + .locals init ([0] object CS$2$0000) + .line 899,899 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 902,902 : 17,75 '' + .try + { + IL_000c: call class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + IL_0011: callvirt instance bool Virtuoso.Hyphen.Mini.ModuleManager::get_HasModules() + IL_0016: brtrue.s IL_0038 + + IL_0018: ldarg.0 + IL_0019: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_001e: brtrue.s IL_0038 + + .line 905,905 : 21,35 '' + IL_0020: ldarg.0 + IL_0021: call instance void Virtuoso.Hyphen.Loader::LoadPlugins() + .line 906,906 : 21,62 '' + IL_0026: ldarg.0 + IL_0027: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Hyphen.Loader::PluginsLoadedEvent + IL_002c: ldc.i4 0x2710 + IL_0031: ldc.i4.0 + IL_0032: callvirt instance bool [mscorlib]System.Threading.WaitHandle::WaitOne(int32, + bool) + IL_0037: pop + .line 909,909 : 17,45 '' + IL_0038: ldarg.0 + IL_0039: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu Virtuoso.Hyphen.Loader::ManagedMainMenu + IL_003e: brfalse.s IL_004b + + .line 910,910 : 21,55 '' + IL_0040: ldarg.0 + IL_0041: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu Virtuoso.Hyphen.Loader::ManagedMainMenu + IL_0046: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ShowUnderCursor() + IL_004b: leave.s IL_0054 + + } // end .try + finally + { + IL_004d: ldloc.0 + IL_004e: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0053: endfinally + .line 913,913 : 13,48 '' + } // end handler + IL_0054: ldc.i4.0 + IL_0055: ret + } // end of method Loader::ShowManagedMenuService + + .method private hidebysig instance int32 + ConfigureModulesService(native uint wParam, + native int lParam) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 921,921 : 13,48 '' + IL_0000: ldc.i4.0 + IL_0001: call void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present(bool) + .line 922,922 : 13,48 '' + IL_0006: ldc.i4.0 + IL_0007: ret + } // end of method Loader::ConfigureModulesService + + .method private hidebysig instance int32 + ManagePluginsService(native uint wParam, + native int lParam) cil managed + { + // Code size 37 (0x25) + .maxstack 8 + .line 930,930 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0006: brtrue.s IL_001d + + .line 931,931 : 17,168 '' + IL_0008: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_NoPluginsLoaded() + IL_000d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_NoPluginsLoaded() + IL_0012: ldc.i4.0 + IL_0013: ldc.i4.s 48 + IL_0015: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_001a: pop + IL_001b: br.s IL_0023 + + .line 933,933 : 17,33 '' + IL_001d: ldarg.0 + IL_001e: call instance void Virtuoso.Hyphen.Loader::ManagePlugins() + .line 935,935 : 13,43 '' + IL_0023: ldc.i4.0 + IL_0024: ret + } // end of method Loader::ManagePluginsService + + .method public hidebysig instance void + ManagePlugins() cil managed + { + // Code size 54 (0x36) + .maxstack 8 + .line 943,943 : 13,31 '' + IL_0000: ldarg.0 + IL_0001: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0006: brfalse.s IL_0035 + + .line 945,948 : 17,26 '' + IL_0008: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_000d: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_0012: ldsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate4' + IL_0017: brtrue.s IL_002a + + IL_0019: ldnull + IL_001a: ldftn void Virtuoso.Hyphen.Loader::'b__3'(class Virtuoso.Miranda.Plugins.PluginManagerBase, + object) + IL_0020: newobj instance void class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1::.ctor(object, + native int) + IL_0025: stsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate4' + IL_002a: ldsfld class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1 Virtuoso.Hyphen.Loader::'CS$<>9__CachedAnonymousMethodDelegate4' + IL_002f: ldnull + IL_0030: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::DoContextCallback(class Virtuoso.Miranda.Plugins.PluginManagerBase/PluginManagerContextCallback`1, + !!0) + .line 950,950 : 9,10 '' + IL_0035: ret + } // end of method Loader::ManagePlugins + + .method private hidebysig instance void + PluginsWatcherHandler(object sender, + class [System]System.IO.FileSystemEventArgs e) cil managed + { + // Code size 131 (0x83) + .maxstack 7 + .locals init ([0] object CS$2$0000) + .line 957,957 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 961,961 : 21,40 '' + .try + { + .try + { + IL_000c: ldarg.0 + IL_000d: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0012: brtrue.s IL_0016 + + .line 962,962 : 25,32 '' + IL_0014: leave.s IL_0082 + + .line 964,964 : 21,266 '' + IL_0016: ldc.i4.6 + IL_0017: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_PluginUpdated() + IL_001c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Caption_PluginUpdated() + IL_0021: ldarg.2 + IL_0022: callvirt instance string [System]System.IO.FileSystemEventArgs::get_Name() + IL_0027: ldc.i4.0 + IL_0028: ldarg.2 + IL_0029: callvirt instance string [System]System.IO.FileSystemEventArgs::get_Name() + IL_002e: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0033: ldc.i4.4 + IL_0034: sub + IL_0035: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_003a: call string [mscorlib]System.String::Format(string, + object) + IL_003f: ldc.i4.4 + IL_0040: ldc.i4.s 64 + IL_0042: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0047: bne.un.s IL_0074 + + .line 967,967 : 25,41 '' + IL_0049: ldarg.0 + IL_004a: call instance void Virtuoso.Hyphen.Loader::ReloadPlugins() + .line 968,968 : 25,66 '' + IL_004f: ldarg.0 + IL_0050: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Hyphen.Loader::PluginsLoadedEvent + IL_0055: ldc.i4 0x2710 + IL_005a: ldc.i4.0 + IL_005b: callvirt instance bool [mscorlib]System.Threading.WaitHandle::WaitOne(int32, + bool) + IL_0060: pop + .line 970,970 : 25,190 '' + IL_0061: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_PluginReloadComplete() + IL_0066: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_PluginReloadComplete() + IL_006b: ldc.i4.0 + IL_006c: ldc.i4.s 64 + IL_006e: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0073: pop + IL_0074: leave.s IL_0079 + + .line 973,973 : 17,37 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0076: pop + IL_0077: leave.s IL_0079 + + } // end handler + IL_0079: leave.s IL_0082 + + } // end .try + finally + { + IL_007b: ldloc.0 + IL_007c: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0081: endfinally + .line 978,978 : 9,10 '' + } // end handler + IL_0082: ret + } // end of method Loader::PluginsWatcherHandler + + .method public hidebysig instance void + UnloadPlugins() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 989,989 : 13,34 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: call instance void Virtuoso.Hyphen.Loader::UnloadPlugins(bool) + .line 990,990 : 9,10 '' + IL_0007: ret + } // end of method Loader::UnloadPlugins + + .method public hidebysig instance void + UnloadPlugins(bool lazy) cil managed + { + // Code size 119 (0x77) + .maxstack 2 + .locals init ([0] object CS$2$0000) + .line 998,998 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0005: dup + IL_0006: stloc.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 1000,1000 : 17,36 '' + .try + { + IL_000c: ldarg.0 + IL_000d: call instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_0012: brtrue.s IL_001f + + .line 1001,1001 : 21,107 '' + IL_0014: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InternalErrorOccurred() + IL_0019: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001e: throw + + .line 1003,1003 : 17,42 '' + IL_001f: ldarg.0 + IL_0020: call instance void Virtuoso.Hyphen.Loader::DisposePluginTasksMenu() + .line 1005,1005 : 17,66 '' + IL_0025: ldarg.0 + IL_0026: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_002b: ldc.i4.0 + IL_002c: callvirt instance void [System]System.IO.FileSystemWatcher::set_EnableRaisingEvents(bool) + .line 1006,1006 : 17,44 '' + IL_0031: ldarg.0 + IL_0032: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Hyphen.Loader::PluginsLoadedEvent + IL_0037: callvirt instance bool [mscorlib]System.Threading.EventWaitHandle::Reset() + IL_003c: pop + .line 1008,1008 : 17,62 '' + IL_003d: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0042: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::DetachPluginManager() + .line 1009,1009 : 17,69 '' + IL_0047: ldarg.0 + IL_0048: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_004d: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + IL_0052: ldarg.1 + IL_0053: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::Shutdown(bool) + .line 1011,1011 : 17,27 '' + IL_0058: ldarg.1 + IL_0059: brtrue.s IL_0066 + + .line 1012,1012 : 21,60 '' + IL_005b: ldarg.0 + IL_005c: ldfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_0061: call void Virtuoso.Miranda.Plugins.Helpers.Sandbox::Unload(class Virtuoso.Miranda.Plugins.Helpers.Sandbox) + .line 1014,1014 : 17,47 '' + IL_0066: ldarg.0 + IL_0067: ldnull + IL_0068: stfld class Virtuoso.Hyphen.PluginsSandbox Virtuoso.Hyphen.Loader::IsolatedPluginsSandbox + IL_006d: leave.s IL_0076 + + } // end .try + finally + { + IL_006f: ldloc.0 + IL_0070: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0075: endfinally + .line 1016,1016 : 9,10 '' + } // end handler + IL_0076: ret + } // end of method Loader::UnloadPlugins + + .method private hidebysig instance void + TrapUnhandledException(object sender, + class [mscorlib]System.UnhandledExceptionEventArgs e) cil managed + { + // Code size 23 (0x17) + .maxstack 8 + .line 1029,1029 : 13,96 '' + IL_0000: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0005: ldarg.2 + IL_0006: callvirt instance object [mscorlib]System.UnhandledExceptionEventArgs::get_ExceptionObject() + IL_000b: castclass [mscorlib]System.Exception + IL_0010: ldnull + IL_0011: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 1030,1030 : 9,10 '' + IL_0016: ret + } // end of method Loader::TrapUnhandledException + + .method private hidebysig instance void + TrapUnhandledException(object sender, + class [System]System.Threading.ThreadExceptionEventArgs e) cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 1037,1037 : 13,97 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: callvirt instance class [mscorlib]System.Exception [System]System.Threading.ThreadExceptionEventArgs::get_Exception() + IL_0008: ldc.i4.0 + IL_0009: newobj instance void [mscorlib]System.UnhandledExceptionEventArgs::.ctor(object, + bool) + IL_000e: call instance void Virtuoso.Hyphen.Loader::TrapUnhandledException(object, + class [mscorlib]System.UnhandledExceptionEventArgs) + .line 1038,1038 : 9,10 '' + IL_0013: ret + } // end of method Loader::TrapUnhandledException + + .method private hidebysig static void VerifyFxConfiguration() cil managed + { + // Code size 127 (0x7f) + .maxstack 4 + .locals init ([0] string configFileName, + [1] class [mscorlib]System.IO.StreamReader reader, + [2] class [mscorlib]System.IO.StreamWriter writer) + .line 1045,1045 : 13,96 '' + IL_0000: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0005: callvirt instance class [mscorlib]System.AppDomainSetup [mscorlib]System.AppDomain::get_SetupInformation() + IL_000a: callvirt instance string [mscorlib]System.AppDomainSetup::get_ConfigurationFile() + IL_000f: stloc.0 + .line 1047,1047 : 13,86 '' + IL_0010: ldloc.0 + IL_0011: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0016: brtrue.s IL_0020 + + IL_0018: ldloc.0 + IL_0019: call bool [mscorlib]System.IO.File::Exists(string) + IL_001e: brtrue.s IL_007e + + .line 1049,1049 : 24,180 '' + IL_0020: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetExecutingAssembly() + IL_0025: ldstr "Virtuoso.Miranda.Plugins.Resources.miranda32.exe.c" + + "onfig" + IL_002a: callvirt instance class [mscorlib]System.IO.Stream [mscorlib]System.Reflection.Assembly::GetManifestResourceStream(string) + IL_002f: newobj instance void [mscorlib]System.IO.StreamReader::.ctor(class [mscorlib]System.IO.Stream) + IL_0034: stloc.1 + .line 1050,1050 : 24,78 '' + .try + { + IL_0035: ldloc.0 + IL_0036: newobj instance void [mscorlib]System.IO.StreamWriter::.ctor(string) + IL_003b: stloc.2 + .line 1051,1051 : 21,54 '' + .try + { + IL_003c: ldloc.2 + IL_003d: ldloc.1 + IL_003e: callvirt instance string [mscorlib]System.IO.TextReader::ReadToEnd() + IL_0043: callvirt instance void [mscorlib]System.IO.TextWriter::Write(string) + IL_0048: leave.s IL_0054 + + } // end .try + finally + { + IL_004a: ldloc.2 + IL_004b: brfalse.s IL_0053 + + IL_004d: ldloc.2 + IL_004e: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0053: endfinally + } // end handler + IL_0054: leave.s IL_0060 + + } // end .try + finally + { + IL_0056: ldloc.1 + IL_0057: brfalse.s IL_005f + + IL_0059: ldloc.1 + IL_005a: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_005f: endfinally + .line 1053,1053 : 17,180 '' + } // end handler + IL_0060: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_MirandaRestartRequired() + IL_0065: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaRestartRequired() + IL_006a: ldc.i4.0 + IL_006b: ldc.i4.s 48 + IL_006d: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0072: pop + .line 1054,1054 : 17,95 '' + IL_0073: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaRestartRequired() + IL_0078: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_007d: throw + + .line 1056,1056 : 9,10 '' + IL_007e: ret + } // end of method Loader::VerifyFxConfiguration + + .method private hidebysig instance void + EnsureSingleInstance() cil managed + { + // Code size 36 (0x24) + .maxstack 4 + .locals init ([0] bool acquired) + .line 1063,1063 : 13,35 '' + IL_0000: ldc.i4.0 + IL_0001: stloc.0 + .line 1064,1064 : 13,90 '' + IL_0002: ldarg.0 + IL_0003: ldc.i4.1 + IL_0004: call string Virtuoso.Hyphen.Loader::GetSingletonMutexName() + IL_0009: ldloca.s acquired + IL_000b: newobj instance void [mscorlib]System.Threading.Mutex::.ctor(bool, + string, + bool&) + IL_0010: stfld class [mscorlib]System.Threading.Mutex Virtuoso.Hyphen.Loader::SingleInstanceMutex + .line 1066,1066 : 13,27 '' + IL_0015: ldloc.0 + IL_0016: brtrue.s IL_0023 + + .line 1067,1067 : 17,99 '' + IL_0018: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_HyphenSxSNotSupported() + IL_001d: newobj instance void [mscorlib]System.NotSupportedException::.ctor(string) + IL_0022: throw + + .line 1068,1068 : 9,10 '' + IL_0023: ret + } // end of method Loader::EnsureSingleInstance + + .method private hidebysig static string + GetSingletonMutexName() cil managed + { + // Code size 29 (0x1d) + .maxstack 2 + .locals init ([0] int32 CS$0$0000) + .line 1076,1076 : 13,92 '' + IL_0000: ldstr "{0}::Hyphen" + IL_0005: call class [System]System.Diagnostics.Process [System]System.Diagnostics.Process::GetCurrentProcess() + IL_000a: callvirt instance int32 [System]System.Diagnostics.Process::get_Id() + IL_000f: stloc.0 + IL_0010: ldloca.s CS$0$0000 + IL_0012: call instance string [mscorlib]System.Int32::ToString() + IL_0017: call string [mscorlib]System.String::Format(string, + object) + IL_001c: ret + } // end of method Loader::GetSingletonMutexName + + .method public hidebysig instance object + DoContextCallback(class [mscorlib]System.Delegate del, + object[] args) cil managed + { + .param [2] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 22 (0x16) + .maxstack 8 + .line 1087,1087 : 13,29 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 1088,1088 : 17,56 '' + IL_0003: ldstr "del" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 1090,1090 : 13,44 '' + IL_000e: ldarg.1 + IL_000f: ldarg.2 + IL_0010: callvirt instance object [mscorlib]System.Delegate::DynamicInvoke(object[]) + IL_0015: ret + } // end of method Loader::DoContextCallback + + .method public hidebysig static void VerifyDefaultDomain() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 1099,1099 : 13,63 '' + IL_0000: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0005: callvirt instance bool [mscorlib]System.AppDomain::IsDefaultAppDomain() + IL_000a: brtrue.s IL_0017 + + .line 1100,1100 : 17,105 '' + IL_000c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_FeatureNotAvailableInDomain() + IL_0011: newobj instance void [mscorlib]System.NotSupportedException::.ctor(string) + IL_0016: throw + + .line 1101,1101 : 9,10 '' + IL_0017: ret + } // end of method Loader::VerifyDefaultDomain + + .method private hidebysig instance void + 'b__0'(object param0, + class [mscorlib]System.EventArgs param1) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 25 (0x19) + .maxstack 8 + .line 830,830 : 17,42 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Hyphen.Loader::PluginsLoadedEvent + IL_0006: callvirt instance bool [mscorlib]System.Threading.EventWaitHandle::Set() + IL_000b: pop + .line 831,831 : 17,65 '' + IL_000c: ldarg.0 + IL_000d: ldfld class [System]System.IO.FileSystemWatcher Virtuoso.Hyphen.Loader::PluginsFolderWatcher + IL_0012: ldc.i4.1 + IL_0013: callvirt instance void [System]System.IO.FileSystemWatcher::set_EnableRaisingEvents(bool) + IL_0018: ret + } // end of method Loader::'b__0' + + .method private hidebysig static void 'b__1'(class Virtuoso.Miranda.Plugins.PluginManagerBase _sender, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu _menu) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 7 (0x7) + .maxstack 8 + .line 872,872 : 21,65 '' + IL_0000: ldarg.1 + IL_0001: call void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::RegisterInterceptors(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu) + IL_0006: ret + } // end of method Loader::'b__1' + + .method private hidebysig static void 'b__3'(class Virtuoso.Miranda.Plugins.PluginManagerBase param0, + object param1) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 27 (0x1b) + .maxstack 8 + .line 947,947 : 21,188 '' + IL_0000: ldc.i4.0 + IL_0001: call class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Singleton() + IL_0006: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management() + IL_000b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins() + IL_0010: call string Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreatePath(class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + string, + string) + IL_0015: call void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present(bool, + string) + IL_001a: ret + } // end of method Loader::'b__3' + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 70 (0x46) + .maxstack 4 + .line 54,54 : 9,153 '' + IL_0000: ldstr "http://virtuosity.aspone.cz/files/miranda/developm" + + "ent/hyphen/updates/hyphen_update.zip" + IL_0005: newobj instance void [System]System.Uri::.ctor(string) + IL_000a: stsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenUpdateUrl + .line 55,55 : 13,138 '' + IL_000f: ldstr "http://virtuosity.aspone.cz/files/miranda/developm" + + "ent/hyphen/updates/hyphen_update_version.txt" + IL_0014: newobj instance void [System]System.Uri::.ctor(string) + IL_0019: stsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenVersionUrl + .line 56,56 : 13,72 '' + IL_001e: ldstr "http://virtuosity.aspone.cz" + IL_0023: newobj instance void [System]System.Uri::.ctor(string) + IL_0028: stsfld class [System]System.Uri Virtuoso.Hyphen.Loader::HyphenHomepageUrl + .line 58,58 : 9,85 '' + IL_002d: ldc.i4.0 + IL_002e: ldc.i4.7 + IL_002f: ldc.i4.0 + IL_0030: ldc.i4.0 + IL_0031: newobj instance void [mscorlib]System.Version::.ctor(int32, + int32, + int32, + int32) + IL_0036: stsfld class [mscorlib]System.Version Virtuoso.Hyphen.Loader::MinMirandaVersion + .line 76,76 : 9,66 '' + IL_003b: newobj instance void [mscorlib]System.Object::.ctor() + IL_0040: stsfld object Virtuoso.Hyphen.Loader::SyncObject + IL_0045: ret + } // end of method Loader::.cctor + + .property class [mscorlib]System.Version + HyphenVersion() + { + .get class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + } // end of property Loader::HyphenVersion + .property instance bool PluginsLoaded() + { + .get instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + } // end of property Loader::PluginsLoaded + .property instance class Virtuoso.Hyphen.Native.PLUGININFO + PluginInfo() + { + .get instance class Virtuoso.Hyphen.Native.PLUGININFO Virtuoso.Hyphen.Loader::get_PluginInfo() + } // end of property Loader::PluginInfo +} // end of class Virtuoso.Hyphen.Loader + +.class private sequential ansi sealed beforefieldinit Virtuoso.Hyphen.Native.NativePluginLink + extends [mscorlib]System.Object +{ + .pack 4 + .size 0 + .custom instance void [mscorlib]System.Security.SuppressUnmanagedCodeSecurityAttribute::.ctor() = ( 01 00 00 00 ) + .field public initonly class Virtuoso.Hyphen.Native.CreateHookableEventPrototype CreateHookableEvent + .field public initonly class Virtuoso.Hyphen.Native.DestroyHookableEventPrototype DestroyHookableEvent + .field public initonly class Virtuoso.Hyphen.Native.NotifyEventHooksPrototype NotifyEventHooks + .field public initonly class Virtuoso.Hyphen.Native.HookEventPrototype HookEvent + .field public initonly class Virtuoso.Hyphen.Native.HookEventMessagePrototype HookEventMessage + .field public initonly class Virtuoso.Hyphen.Native.UnhookEventPrototype UnhookEvent + .field public initonly class Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype CreateServiceFunction + .field public initonly class Virtuoso.Hyphen.Native.CreateTransientServiceFunctionPrototype CreateTransientServiceFunction + .field public initonly class Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype DestroyServiceFunction + .field public initonly class Virtuoso.Hyphen.Native.CallServicePrototype CallService + .field public initonly class Virtuoso.Hyphen.Native.ServiceExistsPrototype ServiceExists + .field public initonly class Virtuoso.Hyphen.Native.CallServiceSyncPrototype CallServiceSync + .field public initonly class Virtuoso.Hyphen.Native.CallFunctionAsyncPrototype CallFunctionAsync + .field public initonly class Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype SetHookDefaultForHookableEvent + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method NativePluginLink::.ctor + +} // end of class Virtuoso.Hyphen.Native.NativePluginLink + +.class public auto ansi sealed Virtuoso.Hyphen.Native.AsyncFunctionCall + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 03 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method AsyncFunctionCall::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(native int ptr) runtime managed + { + } // end of method AsyncFunctionCall::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int ptr, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method AsyncFunctionCall::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method AsyncFunctionCall::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.AsyncFunctionCall + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CreateHookableEventPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CreateHookableEventPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(string marshal( lpstr) name) runtime managed + { + } // end of method CreateHookableEventPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CreateHookableEventPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CreateHookableEventPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CreateHookableEventPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.DestroyHookableEventPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method DestroyHookableEventPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int handle) runtime managed + { + } // end of method DestroyHookableEventPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int handle, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method DestroyHookableEventPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method DestroyHookableEventPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.DestroyHookableEventPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.NotifyEventHooksPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method NotifyEventHooksPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int handle, + native uint wParam, + native int lParam) runtime managed + { + } // end of method NotifyEventHooksPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int handle, + native uint wParam, + native int lParam, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method NotifyEventHooksPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method NotifyEventHooksPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.NotifyEventHooksPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.HookEventPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method HookEventPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback hook) runtime managed + { + } // end of method HookEventPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback hook, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method HookEventPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method HookEventPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.HookEventPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.HookEventMessagePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method HookEventMessagePrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(string marshal( lpstr) name, + native int hwnd, + uint32 msg) runtime managed + { + } // end of method HookEventMessagePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + native int hwnd, + uint32 msg, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method HookEventMessagePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method HookEventMessagePrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.HookEventMessagePrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.UnhookEventPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method UnhookEventPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int handle) runtime managed + { + } // end of method UnhookEventPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int handle, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method UnhookEventPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method UnhookEventPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.UnhookEventPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CreateServiceFunctionPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback service) runtime managed + { + } // end of method CreateServiceFunctionPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback service, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CreateServiceFunctionPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CreateServiceFunctionPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CreateTransientServiceFunctionPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CreateTransientServiceFunctionPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback service) runtime managed + { + } // end of method CreateTransientServiceFunctionPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + class Virtuoso.Miranda.Plugins.Callback service, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CreateTransientServiceFunctionPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CreateTransientServiceFunctionPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CreateTransientServiceFunctionPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method DestroyServiceFunctionPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int handle) runtime managed + { + } // end of method DestroyServiceFunctionPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int handle, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method DestroyServiceFunctionPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method DestroyServiceFunctionPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CallServicePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CallServicePrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) name, + native uint wParam, + native int lParam) runtime managed + { + } // end of method CallServicePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + native uint wParam, + native int lParam, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CallServicePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CallServicePrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CallServicePrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CallServiceUnsafePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CallServiceUnsafePrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) serviceName, + void* wParam, + void* lParam) runtime managed + { + } // end of method CallServiceUnsafePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) serviceName, + void* wParam, + void* lParam, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CallServiceUnsafePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CallServiceUnsafePrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CallServiceUnsafePrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.ServiceExistsPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method ServiceExistsPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) name) runtime managed + { + } // end of method ServiceExistsPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method ServiceExistsPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method ServiceExistsPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.ServiceExistsPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CallServiceSyncPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CallServiceSyncPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(string marshal( lpstr) name, + native uint wParam, + native int lParam) runtime managed + { + } // end of method CallServiceSyncPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(string marshal( lpstr) name, + native uint wParam, + native int lParam, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CallServiceSyncPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CallServiceSyncPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CallServiceSyncPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.CallFunctionAsyncPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method CallFunctionAsyncPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(class Virtuoso.Hyphen.Native.AsyncFunctionCall function, + native int ptr) runtime managed + { + } // end of method CallFunctionAsyncPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class Virtuoso.Hyphen.Native.AsyncFunctionCall function, + native int ptr, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method CallFunctionAsyncPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method CallFunctionAsyncPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.CallFunctionAsyncPrototype + +.class public auto ansi sealed Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method SetHookDefaultForHookableEventPrototype::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native int handle, + class Virtuoso.Miranda.Plugins.Callback hook) runtime managed + { + } // end of method SetHookDefaultForHookableEventPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int handle, + class Virtuoso.Miranda.Plugins.Callback hook, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method SetHookDefaultForHookableEventPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method SetHookDefaultForHookableEventPrototype::EndInvoke + +} // end of class Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu + extends [System.Windows.Forms]System.Windows.Forms.ContextMenuStrip +{ + .class auto ansi sealed nested private AddMainMenuItemInvoker + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method AddMainMenuItemInvoker::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem item) runtime managed + { + } // end of method AddMainMenuItemInvoker::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem item, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method AddMainMenuItemInvoker::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method AddMainMenuItemInvoker::EndInvoke + + } // end of class AddMainMenuItemInvoker + + .class auto ansi sealed nested private ModifyMenuItemInvoker + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method ModifyMenuItemInvoker::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM& itemData, + string handle) runtime managed + { + } // end of method ModifyMenuItemInvoker::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM& itemData, + string handle, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method ModifyMenuItemInvoker::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM& itemData, + class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method ModifyMenuItemInvoker::EndInvoke + + } // end of class ModifyMenuItemInvoker + + .field private static initonly class [mscorlib]System.Random HandleGenerator + .field private static initonly class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker AddMainMenuItemDelegate + .field private static initonly class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker ModifyMenuItemDelegate + .field private static initonly class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem EmptyItem + .field private initonly int32 EmptyItemIndex + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 71 (0x47) + .maxstack 2 + .line 43,43 : 9,71 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\ManagedMainMenu.cs' + IL_0000: newobj instance void [mscorlib]System.Random::.ctor() + IL_0005: stsfld class [mscorlib]System.Random Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::HandleGenerator + .line 45,45 : 9,126 '' + IL_000a: ldnull + IL_000b: ldftn void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItem(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem) + IL_0011: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker::.ctor(object, + native int) + IL_0016: stsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItemDelegate + .line 46,46 : 9,122 '' + IL_001b: ldnull + IL_001c: ldftn void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItem(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu, + valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM&, + string) + IL_0022: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker::.ctor(object, + native int) + IL_0027: stsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItemDelegate + .line 57,57 : 13,77 '' + IL_002c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Empty() + IL_0031: newobj instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::.ctor(string) + IL_0036: stsfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItem + .line 58,58 : 13,39 '' + IL_003b: ldsfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItem + IL_0040: ldc.i4.0 + IL_0041: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Visible(bool) + .line 59,59 : 9,10 '' + IL_0046: ret + } // end of method ManagedMainMenu::.cctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 36 (0x24) + .maxstack 8 + .line 61,61 : 9,35 '' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.ContextMenuStrip::.ctor() + .line 63,63 : 13,53 '' + IL_0006: ldarg.0 + IL_0007: ldc.i4.1 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStrip::set_RenderMode(valuetype [System.Windows.Forms]System.Windows.Forms.ToolStripRenderMode) + .line 64,64 : 13,51 '' + IL_000d: ldarg.0 + IL_000e: ldarg.0 + IL_000f: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0014: ldsfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItem + IL_0019: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_001e: stfld int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItemIndex + .line 65,65 : 9,10 '' + IL_0023: ret + } // end of method ManagedMainMenu::.ctor + + .method public hidebysig virtual instance object + InitializeLifetimeService() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 75,75 : 13,25 '' + IL_0000: ldnull + IL_0001: ret + } // end of method ManagedMainMenu::InitializeLifetimeService + + .method assembly hidebysig instance void + ShowUnderCursor() cil managed + { + // Code size 74 (0x4a) + .maxstack 2 + .line 84,84 : 13,34 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0006: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.Layout.ArrangedElementCollection::get_Count() + IL_000b: ldc.i4.1 + IL_000c: bne.un.s IL_0027 + + .line 85,85 : 17,54 '' + IL_000e: ldarg.0 + IL_000f: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0014: ldarg.0 + IL_0015: ldfld int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItemIndex + IL_001a: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::get_Item(int32) + IL_001f: ldc.i4.1 + IL_0020: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Visible(bool) + IL_0025: br.s IL_003e + + .line 87,87 : 17,55 '' + IL_0027: ldarg.0 + IL_0028: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_002d: ldarg.0 + IL_002e: ldfld int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::EmptyItemIndex + IL_0033: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::get_Item(int32) + IL_0038: ldc.i4.0 + IL_0039: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Visible(bool) + .line 89,89 : 13,35 '' + IL_003e: ldarg.0 + IL_003f: call valuetype [System.Drawing]System.Drawing.Point [System.Windows.Forms]System.Windows.Forms.Cursor::get_Position() + IL_0044: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStripDropDown::Show(valuetype [System.Drawing]System.Drawing.Point) + .line 90,90 : 9,10 '' + IL_0049: ret + } // end of method ManagedMainMenu::ShowUnderCursor + + .method assembly hidebysig static void + RegisterInterceptors(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu) cil managed + { + // Code size 63 (0x3f) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) + .line 105,105 : 13,61 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: stloc.0 + .line 107,107 : 13,136 '' + IL_0006: ldloc.0 + IL_0007: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors() + IL_000c: ldstr "CList/AddMainMenuItem" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItemServiceInterceptor(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Register(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 108,108 : 13,127 '' + IL_0022: ldloc.0 + IL_0023: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors() + IL_0028: ldstr "CList/ModifyMenuItem" + IL_002d: ldarg.0 + IL_002e: ldftn instance int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItemInterceptor(native uint, + native int) + IL_0034: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0039: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Register(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 109,109 : 9,10 '' + IL_003e: ret + } // end of method ManagedMainMenu::RegisterInterceptors + + .method assembly hidebysig static void + UnregisterInterceptors(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu) cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) + .line 113,113 : 13,61 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: stloc.0 + .line 115,115 : 13,98 '' + IL_0006: ldloc.0 + IL_0007: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors() + IL_000c: ldstr "CList/AddMainMenuItem" + IL_0011: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Unregister(string) + .line 116,116 : 13,97 '' + IL_0016: ldloc.0 + IL_0017: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors() + IL_001c: ldstr "CList/ModifyMenuItem" + IL_0021: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Unregister(string) + .line 117,117 : 9,10 '' + IL_0026: ret + } // end of method ManagedMainMenu::UnregisterInterceptors + + .method private hidebysig instance int32 + AddMainMenuItemServiceInterceptor(native uint wParam, + native int lParam) cil managed + { + // Code size 148 (0x94) + .maxstack 5 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM itemData, + [1] class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem menuItem, + [2] class [System.Drawing]System.Drawing.Image itemImage, + [3] object[] CS$0$0000) + .line 121,121 : 13,107 '' + IL_0000: ldarg.2 + IL_0001: ldtoken Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_0010: unbox.any Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_0015: stloc.0 + .line 122,122 : 13,49 '' + IL_0016: ldnull + IL_0017: stloc.1 + .line 123,123 : 13,36 '' + IL_0018: ldnull + IL_0019: stloc.2 + .line 125,125 : 13,46 '' + IL_001a: ldloca.s itemData + IL_001c: ldfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + IL_0021: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0026: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_002b: brfalse.s IL_003f + + .line 126,126 : 17,82 '' + IL_002d: call class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::get_Singleton() + IL_0032: ldloca.s itemData + IL_0034: ldfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + IL_0039: callvirt instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Native.IconImageCache::GetIconImage(native int) + IL_003e: stloc.2 + .line 128,128 : 13,112 '' + IL_003f: ldloca.s itemData + IL_0041: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Text + IL_0046: ldloca.s itemData + IL_0048: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + IL_004d: ldloca.s itemData + IL_004f: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Service + IL_0054: ldloc.2 + IL_0055: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::.ctor(string, + string, + string, + class [System.Drawing]System.Drawing.Image) + IL_005a: stloc.1 + .line 130,130 : 13,32 '' + IL_005b: ldarg.0 + IL_005c: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_InvokeRequired() + IL_0061: brfalse.s IL_0081 + + .line 131,131 : 17,65 '' + IL_0063: ldarg.0 + IL_0064: ldsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItemDelegate + IL_0069: ldc.i4.2 + IL_006a: newarr [mscorlib]System.Object + IL_006f: stloc.3 + IL_0070: ldloc.3 + IL_0071: ldc.i4.0 + IL_0072: ldarg.0 + IL_0073: stelem.ref + IL_0074: ldloc.3 + IL_0075: ldc.i4.1 + IL_0076: ldloc.1 + IL_0077: stelem.ref + IL_0078: ldloc.3 + IL_0079: call instance object [System.Windows.Forms]System.Windows.Forms.Control::Invoke(class [mscorlib]System.Delegate, + object[]) + IL_007e: pop + IL_007f: br.s IL_008d + + .line 133,133 : 17,57 '' + IL_0081: ldsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItemDelegate + IL_0086: ldarg.0 + IL_0087: ldloc.1 + IL_0088: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/AddMainMenuItemInvoker::Invoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem) + .line 135,135 : 13,36 '' + IL_008d: ldloc.1 + IL_008e: callvirt instance int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_Handle() + IL_0093: ret + } // end of method ManagedMainMenu::AddMainMenuItemServiceInterceptor + + .method private hidebysig static void AddMainMenuItem(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem item) cil managed + { + // Code size 108 (0x6c) + .maxstack 3 + .locals init ([0] string popupName, + [1] class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem popupItem, + [2] class [System.Windows.Forms]System.Windows.Forms.ToolStripItem[] popupItems) + .line 140,140 : 13,55 '' + IL_0000: ldarg.1 + IL_0001: callvirt instance string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_PopUpMenu() + IL_0006: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000b: brtrue.s IL_005e + + .line 142,142 : 17,51 '' + IL_000d: ldarg.1 + IL_000e: callvirt instance string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_PopUpMenu() + IL_0013: stloc.0 + .line 143,143 : 17,52 '' + IL_0014: ldnull + IL_0015: stloc.1 + .line 145,145 : 17,80 '' + IL_0016: ldarg.0 + IL_0017: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_001c: ldloc.0 + IL_001d: ldc.i4.0 + IL_001e: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem[] [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Find(string, + bool) + IL_0023: stloc.2 + .line 147,147 : 17,43 '' + IL_0024: ldloc.2 + IL_0025: ldlen + IL_0026: conv.i4 + IL_0027: ldc.i4.0 + IL_0028: ble.s IL_0035 + + .line 148,148 : 21,66 '' + IL_002a: ldloc.2 + IL_002b: ldc.i4.0 + IL_002c: ldelem.ref + IL_002d: castclass [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem + IL_0032: stloc.1 + IL_0033: br.s IL_0050 + + .line 151,151 : 21,66 '' + IL_0035: ldloc.0 + IL_0036: newobj instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::.ctor(string) + IL_003b: stloc.1 + .line 152,152 : 21,48 '' + IL_003c: ldloc.1 + IL_003d: ldloc.0 + IL_003e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Name(string) + .line 154,154 : 21,47 '' + IL_0043: ldarg.0 + IL_0044: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0049: ldloc.1 + IL_004a: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_004f: pop + .line 157,157 : 17,51 '' + IL_0050: ldloc.1 + IL_0051: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStripDropDownItem::get_DropDownItems() + IL_0056: ldarg.1 + IL_0057: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_005c: pop + IL_005d: ret + + .line 160,160 : 17,38 '' + IL_005e: ldarg.0 + IL_005f: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0064: ldarg.1 + IL_0065: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_006a: pop + .line 161,161 : 9,10 '' + IL_006b: ret + } // end of method ManagedMainMenu::AddMainMenuItem + + .method private hidebysig instance int32 + ModifyMenuItemInterceptor(native uint wParam, + native int lParam) cil managed + { + // Code size 213 (0xd5) + .maxstack 5 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM itemData, + [1] string handle, + [2] int32 CS$1$0000, + [3] object[] CS$0$0001) + .line 167,167 : 17,111 '' + .try + { + IL_0000: ldarg.2 + IL_0001: ldtoken Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_0010: unbox.any Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_0015: stloc.0 + .line 168,168 : 17,51 '' + IL_0016: ldarga.s wParam + IL_0018: constrained. [mscorlib]System.UIntPtr + IL_001e: callvirt instance string [mscorlib]System.Object::ToString() + IL_0023: stloc.1 + .line 170,170 : 17,48 '' + IL_0024: ldarg.0 + IL_0025: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_002a: ldloc.1 + IL_002b: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::ContainsKey(string) + IL_0030: brtrue.s IL_008d + + .line 172,174 : 21,107 '' + IL_0032: ldloca.s itemData + IL_0034: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + IL_0039: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_003e: brtrue.s IL_0078 + + IL_0040: ldarg.0 + IL_0041: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0046: ldloca.s itemData + IL_0048: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + IL_004d: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::ContainsKey(string) + IL_0052: brfalse.s IL_0078 + + IL_0054: ldarg.0 + IL_0055: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_005a: ldloca.s itemData + IL_005c: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + IL_0061: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::get_Item(string) + IL_0066: castclass [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem + IL_006b: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStripDropDownItem::get_DropDownItems() + IL_0070: ldloc.1 + IL_0071: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::ContainsKey(string) + IL_0076: brtrue.s IL_008d + + .line 175,175 : 29,134 '' + IL_0078: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_007d: ldstr "CList/ModifyMenuItem" + IL_0082: ldarg.1 + IL_0083: ldarg.2 + IL_0084: ldc.i4.1 + IL_0085: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int, + bool) + IL_008a: stloc.2 + IL_008b: leave.s IL_00d3 + + .line 178,178 : 17,36 '' + IL_008d: ldarg.0 + IL_008e: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_InvokeRequired() + IL_0093: brfalse.s IL_00bc + + .line 179,179 : 21,76 '' + IL_0095: ldarg.0 + IL_0096: ldsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItemDelegate + IL_009b: ldc.i4.3 + IL_009c: newarr [mscorlib]System.Object + IL_00a1: stloc.3 + IL_00a2: ldloc.3 + IL_00a3: ldc.i4.0 + IL_00a4: ldarg.0 + IL_00a5: stelem.ref + IL_00a6: ldloc.3 + IL_00a7: ldc.i4.1 + IL_00a8: ldloc.0 + IL_00a9: box Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_00ae: stelem.ref + IL_00af: ldloc.3 + IL_00b0: ldc.i4.2 + IL_00b1: ldloc.1 + IL_00b2: stelem.ref + IL_00b3: ldloc.3 + IL_00b4: call instance object [System.Windows.Forms]System.Windows.Forms.Control::Invoke(class [mscorlib]System.Delegate, + object[]) + IL_00b9: pop + IL_00ba: br.s IL_00ca + + .line 181,181 : 21,72 '' + IL_00bc: ldsfld class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItemDelegate + IL_00c1: ldarg.0 + IL_00c2: ldloca.s itemData + IL_00c4: ldloc.1 + IL_00c5: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu/ModifyMenuItemInvoker::Invoke(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu, + valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM&, + string) + .line 183,183 : 17,26 '' + IL_00ca: ldc.i4.0 + IL_00cb: stloc.2 + IL_00cc: leave.s IL_00d3 + + .line 185,185 : 13,18 '' + } // end .try + catch [mscorlib]System.Object + { + IL_00ce: pop + .line 187,187 : 17,27 '' + IL_00cf: ldc.i4.m1 + IL_00d0: stloc.2 + IL_00d1: leave.s IL_00d3 + + .line 189,189 : 9,10 '' + } // end handler + IL_00d3: ldloc.2 + IL_00d4: ret + } // end of method ManagedMainMenu::ModifyMenuItemInterceptor + + .method private hidebysig static void ModifyMenuItem(class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu menu, + valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM& itemData, + string handle) cil managed + { + // Code size 292 (0x124) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem item, + [1] valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags 'flags', + [2] valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties itemFlags, + [3] class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem popupItem, + [4] valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties CS$0$0000) + .line 193,193 : 13,116 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0006: ldarg.2 + IL_0007: ldarg.1 + IL_0008: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + IL_000d: ldnull + IL_000e: ceq + IL_0010: ldc.i4.0 + IL_0011: ceq + IL_0013: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem[] [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Find(string, + bool) + IL_0018: ldc.i4.0 + IL_0019: ldelem.ref + IL_001a: castclass Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem + IL_001f: stloc.0 + .line 194,194 : 13,77 '' + IL_0020: ldarg.1 + IL_0021: ldfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Flags + IL_0026: stloc.1 + .line 196,196 : 13,90 '' + IL_0027: ldloc.1 + IL_0028: ldc.i4 0x80000000 + IL_002d: and + IL_002e: ldc.i4 0x80000000 + IL_0033: bne.un.s IL_0041 + + .line 197,197 : 17,43 '' + IL_0035: ldloc.0 + IL_0036: ldarg.1 + IL_0037: ldfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Text + IL_003c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Text(string) + .line 199,199 : 13,90 '' + IL_0041: ldloc.1 + IL_0042: ldc.i4 0x20000000 + IL_0047: and + IL_0048: ldc.i4 0x20000000 + IL_004d: bne.un.s IL_0065 + + .line 200,200 : 17,83 '' + IL_004f: ldloc.0 + IL_0050: call class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::get_Singleton() + IL_0055: ldarg.1 + IL_0056: ldfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + IL_005b: callvirt instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Native.IconImageCache::GetIconImage(native int) + IL_0060: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Image(class [System.Drawing]System.Drawing.Image) + .line 202,202 : 13,94 '' + IL_0065: ldloc.1 + IL_0066: ldc.i4 0x10000000 + IL_006b: and + IL_006c: ldc.i4 0x10000000 + IL_0071: bne.un.s IL_007f + + .line 203,203 : 17,59 '' + IL_0073: ldloc.0 + IL_0074: ldarg.1 + IL_0075: ldfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::HotKey + IL_007a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::set_ShortcutKeys(valuetype [System.Windows.Forms]System.Windows.Forms.Keys) + .line 205,205 : 13,92 '' + IL_007f: ldloc.1 + IL_0080: ldc.i4 0x40000000 + IL_0085: and + IL_0086: ldc.i4 0x40000000 + IL_008b: bne.un IL_0123 + + .line 207,207 : 17,108 '' + IL_0090: ldloc.1 + IL_0091: ldc.i4 0xfffffff + IL_0096: and + IL_0097: stloc.2 + .line 209,209 : 17,35 '' + IL_0098: ldloc.2 + IL_0099: stloc.s CS$0$0000 + IL_009b: ldloc.s CS$0$0000 + IL_009d: switch ( + IL_010e, + IL_00b7, + IL_0106, + IL_0123, + IL_00bf) + IL_00b6: ret + + .line 212,212 : 25,46 '' + IL_00b7: ldloc.0 + IL_00b8: ldc.i4.0 + IL_00b9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Enabled(bool) + .line 213,213 : 25,31 '' + IL_00be: ret + + .line 215,215 : 25,52 '' + IL_00bf: ldloc.0 + IL_00c0: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem [System.Windows.Forms]System.Windows.Forms.ToolStripItem::get_OwnerItem() + IL_00c5: brtrue.s IL_00d4 + + .line 216,216 : 29,53 '' + IL_00c7: ldarg.0 + IL_00c8: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_00cd: ldloc.0 + IL_00ce: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Remove(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_00d3: ret + + .line 219,219 : 29,93 '' + IL_00d4: ldloc.0 + IL_00d5: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItem [System.Windows.Forms]System.Windows.Forms.ToolStripItem::get_OwnerItem() + IL_00da: castclass [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem + IL_00df: stloc.3 + .line 220,220 : 29,66 '' + IL_00e0: ldloc.3 + IL_00e1: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStripDropDownItem::get_DropDownItems() + IL_00e6: ldloc.0 + IL_00e7: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Remove(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + .line 222,222 : 29,68 '' + IL_00ec: ldloc.3 + IL_00ed: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStripDropDownItem::get_DropDownItems() + IL_00f2: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.Layout.ArrangedElementCollection::get_Count() + IL_00f7: brtrue.s IL_0123 + + .line 223,223 : 33,62 '' + IL_00f9: ldarg.0 + IL_00fa: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_00ff: ldloc.3 + IL_0100: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Remove(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + .line 225,225 : 25,31 '' + IL_0105: ret + + .line 227,227 : 25,45 '' + IL_0106: ldloc.0 + IL_0107: ldc.i4.1 + IL_0108: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::set_Checked(bool) + .line 228,228 : 25,31 '' + IL_010d: ret + + .line 230,230 : 25,45 '' + IL_010e: ldloc.0 + IL_010f: ldc.i4.1 + IL_0110: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Enabled(bool) + .line 231,231 : 25,45 '' + IL_0115: ldloc.0 + IL_0116: ldc.i4.1 + IL_0117: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Visible(bool) + .line 232,232 : 25,46 '' + IL_011c: ldloc.0 + IL_011d: ldc.i4.0 + IL_011e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::set_Checked(bool) + .line 236,236 : 9,10 '' + IL_0123: ret + } // end of method ManagedMainMenu::ModifyMenuItem + +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.CCSDATA + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public initonly native int ContactHandle + .field public native int ServiceNamePtr + .field public native uint WParam + .field public native int LParam + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + string serviceName) cil managed + { + // Code size 56 (0x38) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle CS$0$0000) + .line 43,43 : 13,56 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\CCSDATA.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0007: stfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ContactHandle + .line 44,44 : 13,102 '' + IL_000c: ldarg.0 + IL_000d: ldarg.2 + IL_000e: ldc.i4.0 + IL_000f: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0014: stloc.0 + IL_0015: ldloca.s CS$0$0000 + IL_0017: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_001c: stfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ServiceNamePtr + .line 46,46 : 13,40 '' + IL_0021: ldarg.0 + IL_0022: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0027: stfld native uint Virtuoso.Miranda.Plugins.Native.CCSDATA::WParam + .line 47,47 : 13,39 '' + IL_002c: ldarg.0 + IL_002d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0032: stfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::LParam + .line 48,48 : 9,10 '' + IL_0037: ret + } // end of method CCSDATA::.ctor + + .method public hidebysig instance void + Free() cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 52,52 : 13,47 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ServiceNamePtr + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0010: brfalse.s IL_001d + + .line 53,53 : 17,53 '' + IL_0012: ldarg.0 + IL_0013: ldfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ServiceNamePtr + IL_0018: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + .line 54,54 : 9,10 '' + IL_001d: ret + } // end of method CCSDATA::Free + +} // end of class Virtuoso.Miranda.Plugins.Native.CCSDATA + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public native int Module + .field public native int Name + .field public valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Value + .method public hidebysig static object + ExtractValue(native int pDbWriteSetting) cil managed + { + // Code size 250 (0xfa) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING dbWriteSetting, + [1] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType CS$0$0000) + .line 40,40 : 13,105 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\DBCONTACTSETTING.cs' + IL_0000: ldarga.s pDbWriteSetting + IL_0002: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0007: ldobj Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + IL_000c: stloc.0 + .line 42,42 : 13,68 '' + IL_000d: ldloca.s dbWriteSetting + IL_000f: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0014: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + IL_0019: stloc.1 + IL_001a: ldloc.1 + IL_001b: switch ( + IL_00f0, + IL_0083, + IL_009a, + IL_00f2, + IL_00b1) + IL_0034: ldloc.1 + IL_0035: ldc.i4 0xfc + IL_003a: sub + IL_003b: switch ( + IL_006c, + IL_006c, + IL_00c8, + IL_0055) + IL_0050: br IL_00f2 + + .line 45,45 : 21,87 '' + IL_0055: ldloca.s dbWriteSetting + IL_0057: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_005c: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0061: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + IL_0066: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringAnsi(native int) + IL_006b: ret + + .line 48,48 : 21,86 '' + IL_006c: ldloca.s dbWriteSetting + IL_006e: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0073: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0078: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + IL_007d: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringUni(native int) + IL_0082: ret + + .line 50,50 : 21,65 '' + IL_0083: ldloca.s dbWriteSetting + IL_0085: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_008a: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_008f: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Byte + IL_0094: box [mscorlib]System.Byte + IL_0099: ret + + .line 52,52 : 21,65 '' + IL_009a: ldloca.s dbWriteSetting + IL_009c: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00a1: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_00a6: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Word + IL_00ab: box [mscorlib]System.UInt16 + IL_00b0: ret + + .line 54,54 : 21,66 '' + IL_00b1: ldloca.s dbWriteSetting + IL_00b3: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00b8: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_00bd: ldfld uint32 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::DWord + IL_00c2: box [mscorlib]System.UInt32 + IL_00c7: ret + + .line 56,56 : 21,112 '' + IL_00c8: ldloca.s dbWriteSetting + IL_00ca: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00cf: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB Virtuoso.Miranda.Plugins.Native.DBVARIANT::Blob + IL_00d4: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB::BlobPtr + IL_00d9: ldloca.s dbWriteSetting + IL_00db: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00e0: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB Virtuoso.Miranda.Plugins.Native.DBVARIANT::Blob + IL_00e5: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB::Size + IL_00ea: call uint8[] Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToBlob(native int, + int32) + IL_00ef: ret + + .line 58,58 : 21,33 '' + IL_00f0: ldnull + IL_00f1: ret + + .line 60,60 : 21,57 '' + IL_00f2: ldloc.0 + IL_00f3: call void Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::LogUnsupportedValue(valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING) + .line 61,61 : 21,33 '' + IL_00f8: ldnull + IL_00f9: ret + } // end of method DBCONTACTWRITESETTING::ExtractValue + + .method private hidebysig static void LogUnsupportedValue(valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING dbWriteSetting) cil managed + { + // Code size 94 (0x5e) + .maxstack 6 + .locals init ([0] string name, + [1] string module, + [2] string[] CS$0$0000) + .line 67,67 : 13,33 '' + IL_0000: ldstr "N/A" + IL_0005: stloc.0 + .line 68,68 : 13,35 '' + IL_0006: ldstr "N/A" + IL_000b: stloc.1 + .line 72,72 : 17,85 '' + .try + { + IL_000c: ldarga.s dbWriteSetting + IL_000e: ldfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Name + IL_0013: ldc.i4.0 + IL_0014: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0019: stloc.0 + .line 73,73 : 17,89 '' + IL_001a: ldarga.s dbWriteSetting + IL_001c: ldfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Module + IL_0021: ldc.i4.0 + IL_0022: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0027: stloc.1 + IL_0028: leave.s IL_002d + + .line 75,75 : 13,30 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_002a: pop + IL_002b: leave.s IL_002d + + .line 78,79 : 13,80 '' + } // end handler + IL_002d: ldstr "Attempted to extract an unsupported DB contact set" + + "ting {0}:{1} of type {1}" + IL_0032: ldloc.1 + IL_0033: ldc.i4.2 + IL_0034: newarr [mscorlib]System.String + IL_0039: stloc.2 + IL_003a: ldloc.2 + IL_003b: ldc.i4.0 + IL_003c: ldloc.0 + IL_003d: stelem.ref + IL_003e: ldloc.2 + IL_003f: ldc.i4.1 + IL_0040: ldarga.s dbWriteSetting + IL_0042: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0047: ldflda uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + IL_004c: ldstr "X" + IL_0051: call instance string [mscorlib]System.Byte::ToString(string) + IL_0056: stelem.ref + IL_0057: ldloc.2 + IL_0058: call void Virtuoso.Miranda.Plugins.Log::Warning(string, + string, + string[]) + .line 80,80 : 9,10 '' + IL_005d: ret + } // end of method DBCONTACTWRITESETTING::LogUnsupportedValue + +} // end of class Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public string Module + .field public string Name + .field public native int DbVariantPtr +} // end of class Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Native.DbVariantValue + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname uint8 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_DELETED = uint8(0x00) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_BYTE = uint8(0x01) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_WORD = uint8(0x02) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_DWORD = uint8(0x04) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_ASCIIZ = uint8(0xFF) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_BLOB = uint8(0xFE) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_UTF8 = uint8(0xFD) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVT_WCHAR = uint8(0xFC) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue DBVTF_VARIABLELENGTH = uint8(0x80) +} // end of class Virtuoso.Miranda.Plugins.Native.DbVariantValue + +.class private explicit ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBVARIANT + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 12 + .field [0] public uint8 Type + .field [4] public valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Primitives + .field [4] public valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Text + .field [4] public valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB Blob +} // end of class Virtuoso.Miranda.Plugins.Native.DBVARIANT + +.class private explicit ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field [0] public uint8 Byte + .field [0] public char Char + .field [0] public uint16 Word + .field [0] public int16 Short + .field [0] public uint32 DWord + .field [0] public int32 Integer +} // end of class Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE + +.class private explicit ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field [0] public native int TextPtr + .field [4] public uint16 TextBufferSize +} // end of class Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT + +.class private explicit ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field [0] public uint16 Size + .field [2] public native int BlobPtr +} // end of class Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB + +.class private sequential ansi beforefieldinit Virtuoso.Hyphen.Native.PLUGININFO + extends [mscorlib]System.Object +{ + .pack 4 + .size 0 + .field public int32 Size + .field public marshal( lpstr) string ShortName + .field public uint32 Version + .field public marshal( lpstr) string Description + .field public marshal( lpstr) string Author + .field public marshal( lpstr) string AuthorEmail + .field public marshal( lpstr) string Copyright + .field public marshal( lpstr) string HomePage + .field public uint8 Flags + .field public int32 ReplacesDefaultModule + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method PLUGININFO::.ctor + +} // end of class Virtuoso.Hyphen.Native.PLUGININFO + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.IconImageCache + extends [mscorlib]System.Object +{ + .field private static class Virtuoso.Miranda.Plugins.Native.IconImageCache singleton + .field private initonly class [mscorlib]System.Collections.Generic.Dictionary`2 IconCache + .field private initonly class [mscorlib]System.Collections.Generic.Dictionary`2 StreamedIconCache + .field private initonly class [mscorlib]System.Collections.Generic.Dictionary`2 ImageCache + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed synchronized + { + // Code size 43 (0x2b) + .maxstack 8 + .line 41,42 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\IconImageCache.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 44,44 : 13,57 '' + IL_0006: ldarg.0 + IL_0007: ldc.i4.1 + IL_0008: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_000d: stfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + .line 45,45 : 13,62 '' + IL_0012: ldarg.0 + IL_0013: ldc.i4.1 + IL_0014: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0019: stfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + .line 46,46 : 13,57 '' + IL_001e: ldarg.0 + IL_001f: ldc.i4.1 + IL_0020: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0025: stfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + .line 47,47 : 9,10 '' + IL_002a: ret + } // end of method IconImageCache::.ctor + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Native.IconImageCache + get_Singleton() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 57,57 : 17,72 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::singleton + IL_0005: dup + IL_0006: brtrue.s IL_0014 + + IL_0008: pop + IL_0009: newobj instance void Virtuoso.Miranda.Plugins.Native.IconImageCache::.ctor() + IL_000e: dup + IL_000f: stsfld class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::singleton + IL_0014: ret + } // end of method IconImageCache::get_Singleton + + .method public hidebysig instance class [System.Drawing]System.Drawing.Icon + GetIcon(native int handle) cil managed + { + // Code size 79 (0x4f) + .maxstack 4 + .locals init ([0] class [System.Drawing]System.Drawing.Icon icon, + [1] native int key, + [2] class [System.Drawing]System.Drawing.Icon CS$1$0000, + [3] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 67,67 : 13,29 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0006: dup + IL_0007: stloc.3 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 69,69 : 17,34 '' + .try + { + IL_000d: ldnull + IL_000e: stloc.0 + .line 70,70 : 17,37 '' + IL_000f: ldarg.1 + IL_0010: stloc.1 + .line 72,72 : 17,48 '' + IL_0011: ldarg.0 + IL_0012: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0017: ldloc.1 + IL_0018: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_001d: brfalse.s IL_002e + + .line 73,73 : 21,43 '' + IL_001f: ldarg.0 + IL_0020: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0025: ldloc.1 + IL_0026: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_002b: stloc.0 + IL_002c: br.s IL_0042 + + .line 75,75 : 21,69 '' + IL_002e: ldarg.0 + IL_002f: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0034: ldloc.1 + IL_0035: ldarg.1 + IL_0036: call class [System.Drawing]System.Drawing.Icon [System.Drawing]System.Drawing.Icon::FromHandle(native int) + IL_003b: dup + IL_003c: stloc.0 + IL_003d: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + .line 77,77 : 17,29 '' + IL_0042: ldloc.0 + IL_0043: stloc.2 + IL_0044: leave.s IL_004d + + } // end .try + finally + { + IL_0046: ldloc.3 + IL_0047: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_004c: endfinally + .line 79,79 : 9,10 '' + } // end handler + IL_004d: ldloc.2 + IL_004e: ret + } // end of method IconImageCache::GetIcon + + .method public hidebysig instance class [System.Drawing]System.Drawing.Icon + GetStreamedIcon(class [mscorlib]System.IO.Stream 'stream') cil managed + { + // Code size 141 (0x8d) + .maxstack 3 + .locals init ([0] int32 streamHandle, + [1] class [System.Drawing]System.Drawing.Icon icon, + [2] class [System.Drawing]System.Drawing.Icon CS$1$0000, + [3] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001, + [4] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0002) + .line 83,83 : 13,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0006: dup + IL_0007: stloc.3 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 85,85 : 17,33 '' + .try + { + IL_000d: ldarg.0 + IL_000e: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0013: dup + IL_0014: stloc.s CS$2$0002 + IL_0016: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 87,87 : 21,68 '' + .try + { + IL_001b: ldarg.1 + IL_001c: call int32 Virtuoso.Miranda.Plugins.Native.IconImageCache::ComputeStreamHandle(class [mscorlib]System.IO.Stream) + IL_0021: stloc.0 + .line 89,89 : 21,69 '' + IL_0022: ldarg.0 + IL_0023: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0028: ldloc.0 + IL_0029: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_002e: brfalse.s IL_003f + + .line 90,90 : 25,64 '' + IL_0030: ldarg.0 + IL_0031: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0036: ldloc.0 + IL_0037: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_003c: stloc.2 + IL_003d: leave.s IL_008b + + .line 92,92 : 21,50 '' + IL_003f: ldarg.1 + IL_0040: newobj instance void [System.Drawing]System.Drawing.Icon::.ctor(class [mscorlib]System.IO.Stream) + IL_0045: stloc.1 + .line 94,94 : 21,60 '' + IL_0046: ldarg.0 + IL_0047: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_004c: ldloc.0 + IL_004d: ldloc.1 + IL_004e: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + .line 96,96 : 21,61 '' + IL_0053: ldarg.0 + IL_0054: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0059: ldloc.1 + IL_005a: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_005f: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0064: brtrue.s IL_0078 + + .line 97,97 : 25,55 '' + IL_0066: ldarg.0 + IL_0067: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_006c: ldloc.1 + IL_006d: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_0072: ldloc.1 + IL_0073: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + .line 99,99 : 21,33 '' + IL_0078: ldloc.1 + IL_0079: stloc.2 + IL_007a: leave.s IL_008b + + } // end .try + finally + { + IL_007c: ldloc.s CS$2$0002 + IL_007e: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0083: endfinally + } // end handler + } // end .try + finally + { + IL_0084: ldloc.3 + IL_0085: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_008a: endfinally + .line 102,102 : 9,10 '' + } // end handler + IL_008b: ldloc.2 + IL_008c: ret + } // end of method IconImageCache::GetStreamedIcon + + .method private hidebysig static int32 + ComputeStreamHandle(class [mscorlib]System.IO.Stream 'stream') cil managed + { + // Code size 65 (0x41) + .maxstack 2 + .locals init ([0] int32 streamHandle, + [1] int32 result, + [2] int64 prevPosition, + [3] int32 CS$1$0000, + [4] class [mscorlib]System.IO.Stream CS$2$0001) + .line 106,106 : 13,26 '' + IL_0000: ldarg.0 + IL_0001: dup + IL_0002: stloc.s CS$2$0001 + IL_0004: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 108,108 : 17,38 '' + .try + { + IL_0009: ldc.i4.0 + IL_000a: stloc.0 + .line 110,110 : 17,53 '' + IL_000b: ldarg.0 + IL_000c: callvirt instance int64 [mscorlib]System.IO.Stream::get_Position() + IL_0011: stloc.2 + .line 111,111 : 17,37 '' + IL_0012: ldarg.0 + IL_0013: ldc.i4.0 + IL_0014: conv.i8 + IL_0015: callvirt instance void [mscorlib]System.IO.Stream::set_Position(int64) + IL_001a: br.s IL_0021 + + .line 114,114 : 21,50 '' + IL_001c: ldloc.0 + IL_001d: ldloc.1 + IL_001e: conv.u1 + IL_001f: add + IL_0020: stloc.0 + .line 113,113 : 17,59 '' + IL_0021: ldarg.0 + IL_0022: callvirt instance int32 [mscorlib]System.IO.Stream::ReadByte() + IL_0027: dup + IL_0028: stloc.1 + IL_0029: ldc.i4.m1 + IL_002a: bne.un.s IL_001c + + .line 116,116 : 17,48 '' + IL_002c: ldarg.0 + IL_002d: ldloc.2 + IL_002e: callvirt instance void [mscorlib]System.IO.Stream::set_Position(int64) + .line 117,117 : 17,37 '' + IL_0033: ldloc.0 + IL_0034: stloc.3 + IL_0035: leave.s IL_003f + + } // end .try + finally + { + IL_0037: ldloc.s CS$2$0001 + IL_0039: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_003e: endfinally + .line 119,119 : 9,10 '' + } // end handler + IL_003f: ldloc.3 + IL_0040: ret + } // end of method IconImageCache::ComputeStreamHandle + + .method public hidebysig instance class [System.Drawing]System.Drawing.Image + GetIconImage(native int handle) cil managed + { + // Code size 85 (0x55) + .maxstack 4 + .locals init ([0] class [System.Drawing]System.Drawing.Image image, + [1] class [System.Drawing]System.Drawing.Icon icon, + [2] class [System.Drawing]System.Drawing.Image CS$1$0000, + [3] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 123,123 : 13,32 '' + IL_0000: ldnull + IL_0001: stloc.0 + .line 124,124 : 13,41 '' + IL_0002: ldarg.0 + IL_0003: ldarg.1 + IL_0004: call instance class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Native.IconImageCache::GetIcon(native int) + IL_0009: stloc.1 + .line 126,126 : 13,30 '' + IL_000a: ldarg.0 + IL_000b: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_0010: dup + IL_0011: stloc.3 + IL_0012: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 128,128 : 17,50 '' + .try + { + IL_0017: ldarg.0 + IL_0018: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_001d: ldloc.1 + IL_001e: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0023: brfalse.s IL_0034 + + .line 129,129 : 21,46 '' + IL_0025: ldarg.0 + IL_0026: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_002b: ldloc.1 + IL_002c: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0031: stloc.0 + IL_0032: br.s IL_0048 + + .line 131,131 : 21,64 '' + IL_0034: ldarg.0 + IL_0035: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_003a: ldloc.1 + IL_003b: ldloc.1 + IL_003c: callvirt instance class [System.Drawing]System.Drawing.Bitmap [System.Drawing]System.Drawing.Icon::ToBitmap() + IL_0041: dup + IL_0042: stloc.0 + IL_0043: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + .line 133,133 : 17,30 '' + IL_0048: ldloc.0 + IL_0049: stloc.2 + IL_004a: leave.s IL_0053 + + } // end .try + finally + { + IL_004c: ldloc.3 + IL_004d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0052: endfinally + .line 135,135 : 9,10 '' + } // end handler + IL_0053: ldloc.2 + IL_0054: ret + } // end of method IconImageCache::GetIconImage + + .method public hidebysig instance bool + IsCached(native int handle) cil managed + { + // Code size 37 (0x25) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 139,139 : 13,29 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 140,140 : 17,54 '' + .try + { + IL_000d: ldarg.0 + IL_000e: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0013: ldarg.1 + IL_0014: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0019: stloc.0 + IL_001a: leave.s IL_0023 + + } // end .try + finally + { + IL_001c: ldloc.1 + IL_001d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0022: endfinally + .line 141,141 : 9,10 '' + } // end handler + IL_0023: ldloc.0 + IL_0024: ret + } // end of method IconImageCache::IsCached + + .method public hidebysig instance bool + IsCached(class [mscorlib]System.IO.Stream 'stream') cil managed + { + // Code size 42 (0x2a) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001) + .line 145,145 : 13,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 146,146 : 17,83 '' + .try + { + IL_000d: ldarg.0 + IL_000e: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0013: ldarg.1 + IL_0014: call int32 Virtuoso.Miranda.Plugins.Native.IconImageCache::ComputeStreamHandle(class [mscorlib]System.IO.Stream) + IL_0019: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_001e: stloc.0 + IL_001f: leave.s IL_0028 + + } // end .try + finally + { + IL_0021: ldloc.1 + IL_0022: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0027: endfinally + .line 147,147 : 9,10 '' + } // end handler + IL_0028: ldloc.0 + IL_0029: ret + } // end of method IconImageCache::IsCached + + .method public hidebysig instance void + Dispose() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 155,155 : 13,27 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Native.IconImageCache::Dispose(bool) + .line 156,156 : 9,10 '' + IL_0007: ret + } // end of method IconImageCache::Dispose + + .method private hidebysig instance void + Dispose(bool disposing) cil managed synchronized + { + // Code size 299 (0x12b) + .maxstack 2 + .locals init ([0] class [System.Drawing]System.Drawing.Icon icon, + [1] class [System.Drawing]System.Drawing.Icon V_1, + [2] class [System.Drawing]System.Drawing.Image image, + [3] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000, + [4] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001, + [5] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0002, + [6] valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator CS$5$0003, + [7] valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator CS$5$0004, + [8] valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator CS$5$0005) + .line 161,161 : 13,39 '' + IL_0000: ldarg.0 + IL_0001: call void [mscorlib]System.GC::SuppressFinalize(object) + .line 163,163 : 13,27 '' + IL_0006: ldarg.1 + IL_0007: brfalse IL_012a + + .line 165,165 : 17,33 '' + IL_000c: ldarg.0 + IL_000d: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_0012: dup + IL_0013: stloc.3 + IL_0014: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 167,167 : 21,38 '' + .try + { + IL_0019: ldarg.0 + IL_001a: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_001f: dup + IL_0020: stloc.s CS$2$0001 + IL_0022: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 169,169 : 25,49 '' + .try + { + IL_0027: ldarg.0 + IL_0028: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_002d: dup + IL_002e: stloc.s CS$2$0002 + IL_0030: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 171,171 : 51,67 '' + .try + { + IL_0035: ldarg.0 + IL_0036: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_003b: callvirt instance class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection class [mscorlib]System.Collections.Generic.Dictionary`2::get_Values() + IL_0040: callvirt instance valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection::GetEnumerator() + IL_0045: stloc.s CS$5$0003 + .try + { + IL_0047: br.s IL_0057 + + .line 171,171 : 38,47 '' + IL_0049: ldloca.s CS$5$0003 + IL_004b: call instance !1 valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::get_Current() + IL_0050: stloc.0 + .line 172,172 : 33,48 '' + IL_0051: ldloc.0 + IL_0052: callvirt instance void [System.Drawing]System.Drawing.Icon::Dispose() + .line 171,171 : 48,50 '' + IL_0057: ldloca.s CS$5$0003 + IL_0059: call instance bool valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::MoveNext() + IL_005e: brtrue.s IL_0049 + + IL_0060: leave.s IL_0070 + + } // end .try + finally + { + IL_0062: ldloca.s CS$5$0003 + IL_0064: constrained. valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator + IL_006a: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_006f: endfinally + .line 174,174 : 51,75 '' + } // end handler + IL_0070: ldarg.0 + IL_0071: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_0076: callvirt instance class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection class [mscorlib]System.Collections.Generic.Dictionary`2::get_Values() + IL_007b: callvirt instance valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection::GetEnumerator() + IL_0080: stloc.s CS$5$0004 + .try + { + IL_0082: br.s IL_0092 + + .line 174,174 : 38,47 '' + IL_0084: ldloca.s CS$5$0004 + IL_0086: call instance !1 valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::get_Current() + IL_008b: stloc.1 + .line 175,175 : 33,48 '' + IL_008c: ldloc.1 + IL_008d: callvirt instance void [System.Drawing]System.Drawing.Icon::Dispose() + .line 174,174 : 48,50 '' + IL_0092: ldloca.s CS$5$0004 + IL_0094: call instance bool valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::MoveNext() + IL_0099: brtrue.s IL_0084 + + IL_009b: leave.s IL_00ab + + } // end .try + finally + { + IL_009d: ldloca.s CS$5$0004 + IL_009f: constrained. valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator + IL_00a5: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_00aa: endfinally + .line 177,177 : 53,70 '' + } // end handler + IL_00ab: ldarg.0 + IL_00ac: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_00b1: callvirt instance class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection class [mscorlib]System.Collections.Generic.Dictionary`2::get_Values() + IL_00b6: callvirt instance valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection::GetEnumerator() + IL_00bb: stloc.s CS$5$0005 + .try + { + IL_00bd: br.s IL_00cd + + .line 177,177 : 38,49 '' + IL_00bf: ldloca.s CS$5$0005 + IL_00c1: call instance !1 valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::get_Current() + IL_00c6: stloc.2 + .line 178,178 : 33,49 '' + IL_00c7: ldloc.2 + IL_00c8: callvirt instance void [System.Drawing]System.Drawing.Image::Dispose() + .line 177,177 : 50,52 '' + IL_00cd: ldloca.s CS$5$0005 + IL_00cf: call instance bool valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::MoveNext() + IL_00d4: brtrue.s IL_00bf + + IL_00d6: leave.s IL_00e6 + + } // end .try + finally + { + IL_00d8: ldloca.s CS$5$0005 + IL_00da: constrained. valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator + IL_00e0: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_00e5: endfinally + .line 180,180 : 29,47 '' + } // end handler + IL_00e6: ldarg.0 + IL_00e7: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::IconCache + IL_00ec: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + .line 181,181 : 29,55 '' + IL_00f1: ldarg.0 + IL_00f2: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::StreamedIconCache + IL_00f7: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + .line 182,182 : 29,48 '' + IL_00fc: ldarg.0 + IL_00fd: ldfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Native.IconImageCache::ImageCache + IL_0102: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + .line 184,184 : 29,46 '' + IL_0107: ldnull + IL_0108: stsfld class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::singleton + IL_010d: leave.s IL_0117 + + } // end .try + finally + { + IL_010f: ldloc.s CS$2$0002 + IL_0111: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0116: endfinally + } // end handler + IL_0117: leave.s IL_0121 + + } // end .try + finally + { + IL_0119: ldloc.s CS$2$0001 + IL_011b: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0120: endfinally + } // end handler + IL_0121: leave.s IL_012a + + } // end .try + finally + { + IL_0123: ldloc.3 + IL_0124: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0129: endfinally + .line 189,189 : 9,10 '' + } // end handler + IL_012a: ret + } // end of method IconImageCache::Dispose + + .property class Virtuoso.Miranda.Plugins.Native.IconImageCache + Singleton() + { + .get class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::get_Singleton() + } // end of property IconImageCache::Singleton +} // end of class Virtuoso.Miranda.Plugins.Native.IconImageCache + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle + implements [mscorlib]System.IDisposable +{ + .method public hidebysig newslot specialname abstract virtual + instance native int get_IntPtr() cil managed + { + } // end of method IUnmanagedMemoryHandle::get_IntPtr + + .method public hidebysig newslot abstract virtual + instance void Free() cil managed + { + } // end of method IUnmanagedMemoryHandle::Free + + .property instance native int IntPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle::get_IntPtr() + } // end of property IUnmanagedMemoryHandle::IntPtr +} // end of class Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.InteropBuffer + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle, + [mscorlib]System.IDisposable +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field private static literal string LogCategory = "Hyphen::InteropBuffer" + .field private initonly int32 size + .field private native int sizeAsIntPtr + .field private native uint sizeAsUIntPtr + .field private initonly object SyncObject + .field private native int intPtr + .field private int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Owner + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) reserved + .method assembly hidebysig specialname rtspecialname + instance void .ctor(int32 size) cil managed + { + // Code size 52 (0x34) + .maxstack 8 + .line 53,53 : 9,41 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\InteropBuffer.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 55,55 : 13,27 '' + IL_0006: ldarg.1 + IL_0007: ldc.i4.0 + IL_0008: bgt.s IL_0015 + + .line 55,55 : 28,74 '' + IL_000a: ldstr "size" + IL_000f: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0014: throw + + .line 57,57 : 13,39 '' + IL_0015: ldarg.0 + IL_0016: newobj instance void [mscorlib]System.Object::.ctor() + IL_001b: stfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + .line 60,60 : 13,30 '' + IL_0020: ldarg.0 + IL_0021: ldarg.1 + IL_0022: stfld int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::size + .line 62,62 : 13,49 '' + IL_0027: ldarg.0 + IL_0028: ldarg.1 + IL_0029: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_002e: stfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + .line 64,64 : 9,10 '' + IL_0033: ret + } // end of method InteropBuffer::.ctor + + .method family hidebysig virtual instance void + Finalize() cil managed + { + // Code size 17 (0x11) + .maxstack 2 + .line 68,68 : 13,28 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose(bool) + IL_0007: leave.s IL_0010 + + .line 69,69 : 9,10 '' + } // end .try + finally + { + IL_0009: ldarg.0 + IL_000a: call instance void [mscorlib]System.Object::Finalize() + IL_000f: endfinally + .line 69,69 : 9,10 '' + } // end handler + IL_0010: ret + } // end of method InteropBuffer::Finalize + + .method private hidebysig instance void + CheckLock() cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 73,73 : 13,28 '' + IL_0000: ldarg.0 + IL_0001: volatile. + IL_0003: ldfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + IL_0008: brtrue.s IL_0015 + + .line 73,73 : 29,116 '' + IL_000a: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InteropBufferNotLocked() + IL_000f: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0014: throw + + .line 74,74 : 9,10 '' + IL_0015: ret + } // end of method InteropBuffer::CheckLock + + .method public hidebysig newslot specialname virtual final + instance native int get_IntPtr() cil managed + { + // Code size 66 (0x42) + .maxstack 2 + .locals init ([0] native int CS$1$0000, + [1] object CS$2$0001) + .line 84,84 : 17,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 87,87 : 21,33 '' + .try + { + IL_000d: ldarg.0 + IL_000e: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::CheckLock() + .line 89,89 : 21,47 '' + IL_0013: ldarg.0 + IL_0014: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_0019: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_001e: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0023: brfalse.s IL_0030 + + .line 90,90 : 25,76 '' + IL_0025: ldstr "InteropBuffer" + IL_002a: newobj instance void [mscorlib]System.ObjectDisposedException::.ctor(string) + IL_002f: throw + + .line 92,92 : 21,35 '' + IL_0030: ldarg.0 + IL_0031: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_0036: stloc.0 + IL_0037: leave.s IL_0040 + + } // end .try + finally + { + IL_0039: ldloc.1 + IL_003a: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_003f: endfinally + .line 94,94 : 13,14 '' + } // end handler + IL_0040: ldloc.0 + IL_0041: ret + } // end of method InteropBuffer::get_IntPtr + + .method private hidebysig newslot virtual final + instance void Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle.Free() cil managed + { + .override Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle::Free + // Code size 36 (0x24) + .maxstack 2 + .locals init ([0] object CS$2$0000) + .line 99,99 : 13,30 '' + IL_0000: ldarg.0 + IL_0001: ldfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 101,101 : 17,29 '' + .try + { + IL_000d: ldarg.0 + IL_000e: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::CheckLock() + .line 102,102 : 17,31 '' + IL_0013: ldarg.0 + IL_0014: ldc.i4.1 + IL_0015: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose(bool) + IL_001a: leave.s IL_0023 + + } // end .try + finally + { + IL_001c: ldloc.0 + IL_001d: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0022: endfinally + .line 104,104 : 9,10 '' + } // end handler + IL_0023: ret + } // end of method InteropBuffer::Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle.Free + + .method private hidebysig newslot virtual final + instance void System.IDisposable.Dispose() cil managed + { + .override [mscorlib]System.IDisposable::Dispose + // Code size 7 (0x7) + .maxstack 8 + .line 112,112 : 13,51 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle::Free() + .line 113,113 : 9,10 '' + IL_0006: ret + } // end of method InteropBuffer::System.IDisposable.Dispose + + .method assembly hidebysig instance void + Dispose(bool disposing) cil managed + { + // Code size 47 (0x2f) + .maxstack 8 + .line 117,117 : 13,39 '' + IL_0000: ldarg.0 + IL_0001: call void [mscorlib]System.GC::SuppressFinalize(object) + .line 119,119 : 13,39 '' + IL_0006: ldarg.0 + IL_0007: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_000c: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0011: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0016: brfalse.s IL_002e + + .line 121,121 : 17,45 '' + IL_0018: ldarg.0 + IL_0019: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_001e: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + .line 122,122 : 17,38 '' + IL_0023: ldarg.0 + IL_0024: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0029: stfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + .line 126,126 : 9,10 '' + IL_002e: ret + } // end of method InteropBuffer::Dispose + + .method public hidebysig specialname instance bool + get_Locked() cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 136,136 : 17,35 '' + IL_0000: ldarg.0 + IL_0001: volatile. + IL_0003: ldfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: ldc.i4.0 + IL_000c: ceq + IL_000e: ret + } // end of method InteropBuffer::get_Locked + + .method public hidebysig specialname instance int32 + get_Size() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 144,144 : 17,29 '' + IL_0000: ldarg.0 + IL_0001: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::size + IL_0006: ret + } // end of method InteropBuffer::get_Size + + .method public hidebysig specialname instance native int + get_SizeAsIntPtr() cil managed + { + // Code size 42 (0x2a) + .maxstack 8 + .line 152,152 : 17,49 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsIntPtr + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0010: brfalse.s IL_0023 + + .line 153,153 : 21,53 '' + IL_0012: ldarg.0 + IL_0013: ldarg.0 + IL_0014: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::size + IL_0019: newobj instance void [mscorlib]System.IntPtr::.ctor(int32) + IL_001e: stfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsIntPtr + .line 155,155 : 17,37 '' + IL_0023: ldarg.0 + IL_0024: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsIntPtr + IL_0029: ret + } // end of method InteropBuffer::get_SizeAsIntPtr + + .method public hidebysig specialname instance native uint + get_SizeAsUIntPtr() cil managed + { + // Code size 43 (0x2b) + .maxstack 8 + .line 163,163 : 17,51 '' + IL_0000: ldarg.0 + IL_0001: ldfld native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsUIntPtr + IL_0006: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_000b: call bool [mscorlib]System.UIntPtr::op_Equality(native uint, + native uint) + IL_0010: brfalse.s IL_0024 + + .line 164,164 : 21,58 '' + IL_0012: ldarg.0 + IL_0013: ldarg.0 + IL_0014: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::size + IL_0019: conv.i8 + IL_001a: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint64) + IL_001f: stfld native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsUIntPtr + .line 166,166 : 17,38 '' + IL_0024: ldarg.0 + IL_0025: ldfld native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::sizeAsUIntPtr + IL_002a: ret + } // end of method InteropBuffer::get_SizeAsUIntPtr + + .method assembly hidebysig specialname + instance bool get_Reserved() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 174,174 : 17,33 '' + IL_0000: ldarg.0 + IL_0001: volatile. + IL_0003: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::reserved + IL_0008: ret + } // end of method InteropBuffer::get_Reserved + + .method assembly hidebysig specialname + instance void set_Reserved(bool 'value') cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 178,178 : 17,34 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: volatile. + IL_0004: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::reserved + .line 179,179 : 13,14 '' + IL_0009: ret + } // end of method InteropBuffer::set_Reserved + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 188,188 : 13,41 '' + IL_0000: ldarg.0 + IL_0001: ldflda native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_0006: constrained. [mscorlib]System.IntPtr + IL_000c: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0011: ret + } // end of method InteropBuffer::GetHashCode + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 32 (0x20) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer other) + .line 193,193 : 13,29 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_0005 + + .line 193,193 : 30,43 '' + IL_0003: ldc.i4.0 + IL_0004: ret + + .line 195,195 : 13,56 '' + IL_0005: ldarg.1 + IL_0006: isinst Virtuoso.Miranda.Plugins.Native.InteropBuffer + IL_000b: stloc.0 + .line 196,196 : 13,31 '' + IL_000c: ldloc.0 + IL_000d: brtrue.s IL_0011 + + .line 196,196 : 32,45 '' + IL_000f: ldc.i4.0 + IL_0010: ret + + .line 198,198 : 13,59 '' + IL_0011: ldarg.0 + IL_0012: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0017: ldloc.0 + IL_0018: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_001d: ceq + IL_001f: ret + } // end of method InteropBuffer::Equals + + .method public hidebysig instance void + Lock() cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 205,205 : 13,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + IL_0006: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 206,206 : 13,58 '' + IL_000b: ldarg.0 + IL_000c: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0011: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_0016: volatile. + IL_0018: stfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + .line 209,209 : 9,10 '' + IL_001d: ret + } // end of method InteropBuffer::Lock + + .method public hidebysig instance void + Unlock() cil managed + { + // Code size 58 (0x3a) + .maxstack 8 + .line 214,214 : 13,25 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::CheckLock() + .line 216,216 : 13,63 '' + IL_0006: ldarg.0 + IL_0007: volatile. + IL_0009: ldfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + IL_000e: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0013: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_0018: bne.un.s IL_002f + + .line 218,218 : 17,42 '' + IL_001a: ldarg.0 + IL_001b: ldfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + IL_0020: call void [mscorlib]System.Threading.Monitor::Exit(object) + .line 221,221 : 17,27 '' + IL_0025: ldarg.0 + IL_0026: ldc.i4.0 + IL_0027: volatile. + IL_0029: stfld int32 modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBuffer::Owner + IL_002e: ret + + .line 224,224 : 17,119 '' + IL_002f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidCrossThreadInteropBufferUnlock() + IL_0034: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0039: throw + } // end of method InteropBuffer::Unlock + + .method public hidebysig instance void + Zero() cil managed + { + // Code size 59 (0x3b) + .maxstack 3 + .locals init ([0] int32 i, + [1] object CS$2$0000) + .line 229,229 : 13,30 '' + IL_0000: ldarg.0 + IL_0001: ldfld object Virtuoso.Miranda.Plugins.Native.InteropBuffer::SyncObject + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 232,232 : 17,29 '' + .try + { + IL_000d: ldarg.0 + IL_000e: call instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::CheckLock() + .line 234,234 : 22,32 '' + IL_0013: ldc.i4.0 + IL_0014: stloc.0 + IL_0015: br.s IL_0028 + + .line 235,235 : 21,53 '' + IL_0017: ldarg.0 + IL_0018: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_001d: ldloc.0 + IL_001e: ldc.i4.0 + IL_001f: call void [mscorlib]System.Runtime.InteropServices.Marshal::WriteByte(native int, + int32, + uint8) + .line 234,234 : 43,46 '' + IL_0024: ldloc.0 + IL_0025: ldc.i4.1 + IL_0026: add + IL_0027: stloc.0 + .line 234,234 : 33,41 '' + IL_0028: ldloc.0 + IL_0029: ldarg.0 + IL_002a: call instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_002f: blt.s IL_0017 + + IL_0031: leave.s IL_003a + + } // end .try + finally + { + IL_0033: ldloc.1 + IL_0034: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0039: endfinally + .line 237,237 : 9,10 '' + } // end handler + IL_003a: ret + } // end of method InteropBuffer::Zero + + .method public hidebysig specialname static + native int op_Implicit(class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer) cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 241,241 : 13,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::intPtr + IL_0006: ret + } // end of method InteropBuffer::op_Implicit + + .property instance native int IntPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + } // end of property InteropBuffer::IntPtr + .property instance bool Locked() + { + .get instance bool Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Locked() + } // end of property InteropBuffer::Locked + .property instance int32 Size() + { + .get instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + } // end of property InteropBuffer::Size + .property instance native int SizeAsIntPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsIntPtr() + } // end of property InteropBuffer::SizeAsIntPtr + .property instance native uint SizeAsUIntPtr() + { + .get instance native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsUIntPtr() + } // end of property InteropBuffer::SizeAsUIntPtr + .property instance bool Reserved() + { + .set instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::set_Reserved(bool) + .get instance bool Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Reserved() + } // end of property InteropBuffer::Reserved +} // end of class Virtuoso.Miranda.Plugins.Native.InteropBuffer + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.InteropBufferPool + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass2' + extends [mscorlib]System.Object + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field public int32 size + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method '<>c__DisplayClass2'::.ctor + + .method public hidebysig instance bool + 'b__0'(class Virtuoso.Miranda.Plugins.Native.InteropBuffer _buffer) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 127,127 : 25,50 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\InteropBufferPool.cs' + IL_0000: ldarg.1 + IL_0001: callvirt instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_0006: ldarg.0 + IL_0007: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + IL_000c: blt.s IL_0010 + + .line 128,128 : 29,41 '' + IL_000e: ldc.i4.1 + IL_000f: ret + + .line 130,130 : 29,42 '' + IL_0010: ldc.i4.0 + IL_0011: ret + } // end of method '<>c__DisplayClass2'::'b__0' + + } // end of class '<>c__DisplayClass2' + + .field public static literal int32 DefaultMaximumAvailableBufferSize = int32(0x00000104) + .field private static literal int32 DefaultBuffersCount = int32(0x00000002) + .field private static int32 maximumAvailableBufferSize + .field private static int32 NextAvailableBufferIndex + .field private static class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Buffers + .field private static bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Disposed + .method public hidebysig specialname static + int32 get_MaximumAvailableBufferSize() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 39,39 : 19,71 '' + IL_0000: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_0005: ret + } // end of method InteropBufferPool::get_MaximumAvailableBufferSize + + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 51,51 : 9,36 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 51,51 : 39,40 '' + IL_0006: ret + } // end of method InteropBufferPool::.ctor + + .method assembly hidebysig static void + Dispose() cil managed + { + // Code size 91 (0x5b) + .maxstack 3 + .locals init ([0] int32 i, + [1] class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] CS$2$0000) + .line 59,59 : 13,45 '' + IL_0000: volatile. + IL_0002: ldsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Disposed + IL_0007: brtrue.s IL_0010 + + IL_0009: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_000e: brtrue.s IL_0011 + + .line 60,60 : 17,24 '' + IL_0010: ret + + .line 62,62 : 13,27 '' + IL_0011: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0016: dup + IL_0017: stloc.1 + IL_0018: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 64,64 : 17,33 '' + .try + { + IL_001d: ldc.i4.1 + IL_001e: volatile. + IL_0020: stsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Disposed + .line 66,66 : 22,32 '' + IL_0025: ldc.i4.0 + IL_0026: stloc.0 + IL_0027: br.s IL_0047 + + .line 70,70 : 25,50 '' + .try + { + IL_0029: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_002e: ldloc.0 + IL_002f: ldelem.ref + IL_0030: ldc.i4.1 + IL_0031: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose(bool) + .line 71,71 : 25,43 '' + IL_0036: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_003b: ldloc.0 + IL_003c: ldnull + IL_003d: stelem.ref + IL_003e: leave.s IL_0043 + + .line 73,73 : 21,26 '' + } // end .try + catch [mscorlib]System.Object + { + IL_0040: pop + IL_0041: leave.s IL_0043 + + .line 66,66 : 53,56 '' + } // end handler + IL_0043: ldloc.0 + IL_0044: ldc.i4.1 + IL_0045: add + IL_0046: stloc.0 + .line 66,66 : 33,51 '' + IL_0047: ldloc.0 + IL_0048: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_004d: ldlen + IL_004e: conv.i4 + IL_004f: blt.s IL_0029 + + IL_0051: leave.s IL_005a + + } // end .try + finally + { + IL_0053: ldloc.1 + IL_0054: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0059: endfinally + .line 76,76 : 9,10 '' + } // end handler + IL_005a: ret + } // end of method InteropBufferPool::Dispose + + .method assembly hidebysig static void + Refresh() cil managed + { + // Code size 25 (0x19) + .maxstack 8 + .line 80,80 : 13,23 '' + IL_0000: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Dispose() + .line 82,82 : 13,28 '' + IL_0005: ldnull + IL_0006: stsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + .line 83,83 : 13,30 '' + IL_000b: ldc.i4.0 + IL_000c: volatile. + IL_000e: stsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Disposed + .line 85,85 : 13,37 '' + IL_0013: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::VerifyPoolConsistency() + .line 86,86 : 9,10 '' + IL_0018: ret + } // end of method InteropBufferPool::Refresh + + .method private hidebysig static void VerifyPoolConsistency() cil managed + { + // Code size 84 (0x54) + .maxstack 3 + .locals init ([0] int32 i) + .line 90,90 : 13,26 '' + IL_0000: volatile. + IL_0002: ldsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Disposed + IL_0007: brfalse.s IL_0014 + + .line 91,91 : 17,72 '' + IL_0009: ldstr "InteropBufferPool" + IL_000e: newobj instance void [mscorlib]System.ObjectDisposedException::.ctor(string) + IL_0013: throw + + .line 93,93 : 13,33 '' + IL_0014: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0019: brtrue.s IL_0053 + + .line 95,95 : 17,46 '' + IL_001b: ldc.i4.0 + IL_001c: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + .line 96,96 : 17,80 '' + IL_0021: ldc.i4 0x104 + IL_0026: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + .line 98,98 : 17,66 '' + IL_002b: ldc.i4.2 + IL_002c: newarr Virtuoso.Miranda.Plugins.Native.InteropBuffer + IL_0031: stsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + .line 100,100 : 22,32 '' + IL_0036: ldc.i4.0 + IL_0037: stloc.0 + IL_0038: br.s IL_004f + + .line 101,101 : 21,80 '' + IL_003a: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_003f: ldloc.0 + IL_0040: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_0045: newobj instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::.ctor(int32) + IL_004a: stelem.ref + .line 100,100 : 58,61 '' + IL_004b: ldloc.0 + IL_004c: ldc.i4.1 + IL_004d: add + IL_004e: stloc.0 + .line 100,100 : 33,56 '' + IL_004f: ldloc.0 + IL_0050: ldc.i4.2 + IL_0051: blt.s IL_003a + + .line 103,103 : 9,10 '' + IL_0053: ret + } // end of method InteropBufferPool::VerifyPoolConsistency + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Native.InteropBuffer + AcquireBuffer() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 107,107 : 13,62 '' + IL_0000: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_0005: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer(int32) + IL_000a: ret + } // end of method InteropBufferPool::AcquireBuffer + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Native.InteropBuffer + AcquireBuffer(int32 size) cil managed + { + // Code size 195 (0xc3) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] int32 index, + [2] class [mscorlib]System.Predicate`1 'CS$<>9__CachedAnonymousMethodDelegate1', + [3] class Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2' 'CS$<>8__locals3', + [4] class Virtuoso.Miranda.Plugins.Native.InteropBuffer CS$1$0000, + [5] class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] CS$2$0001) + IL_0000: ldnull + IL_0001: stloc.2 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::.ctor() + IL_0007: stloc.3 + IL_0008: ldloc.3 + IL_0009: ldarg.0 + IL_000a: stfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + .line 112,112 : 13,27 '' + IL_000f: ldloc.3 + IL_0010: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + IL_0015: ldc.i4.0 + IL_0016: bgt.s IL_0023 + + .line 113,113 : 17,63 '' + IL_0018: ldstr "size" + IL_001d: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0022: throw + + .line 115,115 : 13,37 '' + IL_0023: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::VerifyPoolConsistency() + .line 117,117 : 13,27 '' + IL_0028: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_002d: dup + IL_002e: stloc.s CS$2$0001 + IL_0030: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 119,119 : 17,45 '' + .try + { + IL_0035: ldnull + IL_0036: stloc.0 + .line 121,121 : 17,104 '' + IL_0037: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_003c: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0041: ldlen + IL_0042: conv.i4 + IL_0043: ldc.i4.1 + IL_0044: sub + IL_0045: bgt.s IL_0054 + + IL_0047: ldloc.3 + IL_0048: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + IL_004d: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_0052: ble.s IL_0062 + + .line 122,122 : 21,54 '' + IL_0054: ldloc.3 + IL_0055: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + IL_005a: newobj instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::.ctor(int32) + IL_005f: stloc.0 + IL_0060: br.s IL_00ac + + .line 125,131 : 21,24 '' + IL_0062: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0067: ldloc.2 + IL_0068: brtrue.s IL_0077 + + IL_006a: ldloc.3 + IL_006b: ldftn instance bool Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::'b__0'(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_0071: newobj instance void class [mscorlib]System.Predicate`1::.ctor(object, + native int) + IL_0076: stloc.2 + IL_0077: ldloc.2 + IL_0078: call int32 [mscorlib]System.Array::FindIndex(!!0[], + class [mscorlib]System.Predicate`1) + IL_007d: stloc.1 + .line 133,133 : 21,73 '' + IL_007e: ldloc.1 + IL_007f: ldc.i4.m1 + IL_0080: beq.s IL_008a + + IL_0082: ldloc.1 + IL_0083: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_0088: bge.s IL_0098 + + .line 134,134 : 25,58 '' + IL_008a: ldloc.3 + IL_008b: ldfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool/'<>c__DisplayClass2'::size + IL_0090: newobj instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::.ctor(int32) + IL_0095: stloc.0 + IL_0096: br.s IL_00ac + + .line 137,137 : 25,49 '' + IL_0098: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_009d: ldloc.1 + IL_009e: ldelem.ref + IL_009f: stloc.0 + .line 138,138 : 25,52 '' + IL_00a0: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_00a5: ldc.i4.1 + IL_00a6: add + IL_00a7: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + .line 142,142 : 17,40 '' + IL_00ac: ldloc.0 + IL_00ad: ldc.i4.1 + IL_00ae: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::set_Reserved(bool) + .line 143,143 : 17,31 '' + IL_00b3: ldloc.0 + IL_00b4: stloc.s CS$1$0000 + IL_00b6: leave.s IL_00c0 + + } // end .try + finally + { + IL_00b8: ldloc.s CS$2$0001 + IL_00ba: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00bf: endfinally + .line 145,145 : 9,10 '' + } // end handler + IL_00c0: ldloc.s CS$1$0000 + IL_00c2: ret + } // end of method InteropBufferPool::AcquireBuffer + + .method public hidebysig static void ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer) cil managed + { + // Code size 177 (0xb1) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] CS$2$0000) + .line 149,149 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_0004 + + .line 150,150 : 17,24 '' + IL_0003: ret + + .line 152,152 : 13,31 '' + IL_0004: ldarg.0 + IL_0005: callvirt instance bool Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Locked() + IL_000a: brfalse.s IL_0017 + + .line 153,153 : 17,106 '' + IL_000c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InteropBufferNotUnlocked() + IL_0011: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0016: throw + + .line 155,155 : 13,34 '' + IL_0017: ldarg.0 + IL_0018: callvirt instance bool Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Reserved() + IL_001d: brtrue.s IL_0025 + + .line 156,156 : 17,47 '' + IL_001f: newobj instance void [mscorlib]System.ArgumentException::.ctor() + IL_0024: throw + + .line 158,158 : 13,37 '' + IL_0025: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::VerifyPoolConsistency() + .line 160,160 : 13,27 '' + IL_002a: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_002f: dup + IL_0030: stloc.0 + IL_0031: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 162,162 : 17,58 '' + .try + { + IL_0036: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_003b: ldarg.0 + IL_003c: call int32 [mscorlib]System.Array::IndexOf(!!0[], + !!0) + IL_0041: ldc.i4.m1 + IL_0042: bne.un.s IL_0094 + + .line 164,164 : 21,66 '' + IL_0044: ldarg.0 + IL_0045: callvirt instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_004a: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_004f: ble.s IL_008b + + .line 166,166 : 25,76 '' + IL_0051: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_0056: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_005b: ldlen + IL_005c: conv.i4 + IL_005d: ldc.i4.1 + IL_005e: sub + IL_005f: bgt.s IL_00a0 + + .line 168,168 : 29,77 '' + IL_0061: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0066: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_006b: ldelem.ref + IL_006c: ldc.i4.1 + IL_006d: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose(bool) + .line 169,169 : 29,72 '' + IL_0072: ldsfld class Virtuoso.Miranda.Plugins.Native.InteropBuffer[] Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Buffers + IL_0077: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_007c: ldarg.0 + IL_007d: stelem.ref + .line 171,171 : 29,70 '' + IL_007e: ldarg.0 + IL_007f: callvirt instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_0084: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_0089: br.s IL_00a0 + + .line 175,175 : 25,46 '' + IL_008b: ldarg.0 + IL_008c: ldc.i4.1 + IL_008d: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose(bool) + IL_0092: br.s IL_00a0 + + .line 178,178 : 21,48 '' + IL_0094: ldsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + IL_0099: ldc.i4.1 + IL_009a: sub + IL_009b: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::NextAvailableBufferIndex + .line 180,180 : 17,41 '' + IL_00a0: ldarg.0 + IL_00a1: ldc.i4.0 + IL_00a2: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::set_Reserved(bool) + IL_00a7: leave.s IL_00b0 + + } // end .try + finally + { + IL_00a9: ldloc.0 + IL_00aa: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00af: endfinally + .line 182,182 : 9,10 '' + } // end handler + IL_00b0: ret + } // end of method InteropBufferPool::ReleaseBuffer + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 35,35 : 9,91 '' + IL_0000: ldc.i4 0x104 + IL_0005: stsfld int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::maximumAvailableBufferSize + IL_000a: ret + } // end of method InteropBufferPool::.cctor + + .property int32 MaximumAvailableBufferSize() + { + .get int32 Virtuoso.Miranda.Plugins.Native.InteropBufferPool::get_MaximumAvailableBufferSize() + } // end of property InteropBufferPool::MaximumAvailableBufferSize +} // end of class Virtuoso.Miranda.Plugins.Native.InteropBufferPool + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.EventHandleCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 30,30 : 9,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\EventHandleCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.3 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + .line 30,30 : 54,55 '' + IL_0007: ret + } // end of method EventHandleCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection + +.class interface private abstract auto ansi Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 +{ + .method public hidebysig newslot abstract virtual + instance !T Find(string tag) cil managed + { + } // end of method ITagSearchable`1::Find + +} // end of class Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + extends class [mscorlib]System.Collections.Generic.List`1 + implements class Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 29,29 : 9,52 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\HookDescriptorCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.3 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + .line 29,29 : 55,56 '' + IL_0007: ret + } // end of method HookDescriptorCollection::.ctor + + .method public hidebysig instance void + Add(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor item) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 37,37 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance bool class [mscorlib]System.Collections.Generic.List`1::Contains(!0) + IL_0007: brfalse.s IL_000a + + .line 37,37 : 33,40 '' + IL_0009: ret + + .line 38,38 : 13,28 '' + IL_000a: ldarg.0 + IL_000b: ldarg.1 + IL_000c: call instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 39,39 : 9,10 '' + IL_0011: ret + } // end of method HookDescriptorCollection::Add + + .method public hidebysig newslot virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + Find(string name) cil managed + { + // Code size 78 (0x4e) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor CS$1$0000, + [2] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001) + .line 43,43 : 13,30 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 44,44 : 17,57 '' + IL_0003: ldstr "name" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 46,46 : 51,55 '' + IL_000e: ldarg.0 + IL_000f: call instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0014: stloc.2 + .try + { + IL_0015: br.s IL_0031 + + .line 46,46 : 22,47 '' + IL_0017: ldloca.s CS$5$0001 + IL_0019: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_001e: stloc.0 + .line 47,47 : 17,45 '' + IL_001f: ldloc.0 + IL_0020: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_0025: ldarg.1 + IL_0026: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_002b: brfalse.s IL_0031 + + .line 48,48 : 21,39 '' + IL_002d: ldloc.0 + IL_002e: stloc.1 + IL_002f: leave.s IL_004c + + .line 46,46 : 48,50 '' + IL_0031: ldloca.s CS$5$0001 + IL_0033: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0038: brtrue.s IL_0017 + + IL_003a: leave.s IL_004a + + } // end .try + finally + { + IL_003c: ldloca.s CS$5$0001 + IL_003e: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0044: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0049: endfinally + .line 50,50 : 13,25 '' + } // end handler + IL_004a: ldnull + IL_004b: ret + + .line 51,51 : 9,10 '' + IL_004c: ldloc.1 + IL_004d: ret + } // end of method HookDescriptorCollection::Find + +} // end of class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher + extends [mscorlib]System.Object +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 26,26 : 9,34 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\EventPublisher.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 26,26 : 37,38 '' + IL_0006: ret + } // end of method EventPublisher::.ctor + + .method family hidebysig instance bool + InvokeChainCancelable<(Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs) TEventArgs>(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'handler', + !!TEventArgs eventArgs) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 30,30 : 13,80 '' + IL_0000: ldarg.1 + IL_0001: ldarg.0 + IL_0002: ldarg.2 + IL_0003: call bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + object, + !!0) + IL_0008: ret + } // end of method EventPublisher::InvokeChainCancelable + + .method public hidebysig static bool InvokeChainCancelable<(Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs) TEventArgs>(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'handler', + object sender, + !!TEventArgs eventArgs) cil managed + { + // Code size 49 (0x31) + .maxstack 3 + .locals init ([0] bool retValue, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 del, + [2] class [mscorlib]System.Delegate[] CS$6$0000, + [3] int32 CS$7$0001) + .line 35,35 : 13,58 '' + IL_0000: ldc.i4.0 + IL_0001: stloc.0 + .line 37,37 : 13,33 '' + IL_0002: ldarg.0 + IL_0003: brfalse.s IL_002f + + .line 39,39 : 65,92 '' + IL_0005: ldarg.0 + IL_0006: callvirt instance class [mscorlib]System.Delegate[] [mscorlib]System.Delegate::GetInvocationList() + IL_000b: stloc.2 + IL_000c: ldc.i4.0 + IL_000d: stloc.3 + IL_000e: br.s IL_0029 + + .line 39,39 : 26,61 '' + IL_0010: ldloc.2 + IL_0011: ldloc.3 + IL_0012: ldelem.ref + IL_0013: castclass class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 + IL_0018: stloc.1 + .line 41,41 : 21,92 '' + IL_0019: ldloc.1 + IL_001a: ldarg.1 + IL_001b: ldarg.2 + IL_001c: callvirt instance bool class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1::Invoke(object, + !0) + IL_0021: dup + IL_0022: stloc.0 + IL_0023: brtrue.s IL_002f + + IL_0025: ldloc.3 + IL_0026: ldc.i4.1 + IL_0027: add + IL_0028: stloc.3 + .line 39,39 : 62,64 '' + IL_0029: ldloc.3 + IL_002a: ldloc.2 + IL_002b: ldlen + IL_002c: conv.i4 + IL_002d: blt.s IL_0010 + + .line 46,46 : 13,29 '' + IL_002f: ldloc.0 + IL_0030: ret + } // end of method EventPublisher::InvokeChainCancelable + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContactList + extends Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher +{ + .field private static literal string ME_CLC_SHOWINFOTIP = "CLC/ShowInfoTip" + .field private static literal string ME_CLC_HIDEINFOTIP = "CLC/HideInfoTip" + .field private static literal string MS_CLC_SETINFOTIPHOVERTIME = "CLC/SetInfoTipHoverTime" + .field private static literal string MS_CLC_GETINFOTIPHOVERTIME = "CLC/GetInfoTipHoverTime" + .field private static literal string ME_CLIST_STATUSMODECHANGE = "CList/StatusModeChange" + .field private static literal string ME_CLIST_PREBUILDCONTACTMENU = "CList/PreBuildContactMenu" + .field private static literal string ME_CLIST_DOUBLECLICKED = "CList/DoubleClicked" + .field private static literal string MS_CLIST_ADDEVENT = "CList/AddEvent" + .field private static literal string MS_CLIST_REMOVEEVENT = "Clist/RemoveEvent" + .field private static initonly object SyncObject + .field private class [mscorlib]System.EventHandler`1> InfoTipShowEventHandler + .field private class [mscorlib]System.EventHandler`1> InfoTipHideEventHandler + .field private class [mscorlib]System.EventHandler`1 ProtocolStatusChangeEventHandler + .field private class [mscorlib]System.EventHandler`1> ContactMenuShowingEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> ContactDoubleClickedEventHandler + .field private bool ContactSelectionTrackingEnabled + .field private class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo selectedContact + .field private static initonly class [mscorlib]System.Random Random + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 69,69 : 9,31 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContactList.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::.ctor() + .line 69,69 : 34,35 '' + IL_0006: ret + } // end of method ContactList::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_SelectedContact() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 79,79 : 17,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactList::selectedContact + IL_0006: ret + } // end of method ContactList::get_SelectedContact + + .method public hidebysig specialname instance valuetype [mscorlib]System.Nullable`1 + get_Transparency() cil managed + { + // Code size 47 (0x2f) + .maxstack 4 + .locals init ([0] object alpha, + [1] valuetype [mscorlib]System.Nullable`1 CS$0$0000) + .line 87,87 : 17,110 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0005: ldstr "Alpha" + IL_000a: ldstr "CList" + IL_000f: ldc.i4.1 + IL_0010: callvirt instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(string, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0015: stloc.0 + .line 89,89 : 17,35 '' + IL_0016: ldloc.0 + IL_0017: brfalse.s IL_0025 + + .line 90,90 : 21,40 '' + IL_0019: ldloc.0 + IL_001a: unbox.any [mscorlib]System.Byte + IL_001f: newobj instance void valuetype [mscorlib]System.Nullable`1::.ctor(!0) + IL_0024: ret + + .line 92,92 : 21,33 '' + IL_0025: ldloca.s CS$0$0000 + IL_0027: initobj valuetype [mscorlib]System.Nullable`1 + IL_002d: ldloc.1 + IL_002e: ret + } // end of method ContactList::get_Transparency + + .method public hidebysig specialname instance void + set_Transparency(valuetype [mscorlib]System.Nullable`1 'value') cil managed + { + // Code size 40 (0x28) + .maxstack 8 + .line 96,96 : 17,136 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0005: ldstr "Alpha" + IL_000a: ldstr "CList" + IL_000f: ldarga.s 'value' + IL_0011: ldc.i4 0xff + IL_0016: call instance !0 valuetype [mscorlib]System.Nullable`1::GetValueOrDefault(!0) + IL_001b: box [mscorlib]System.Byte + IL_0020: ldc.i4.1 + IL_0021: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting(string, + string, + object, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0026: pop + .line 97,97 : 13,14 '' + IL_0027: ret + } // end of method ContactList::set_Transparency + + .method public hidebysig specialname instance bool + get_TransparencyEnabled() cil managed + { + // Code size 39 (0x27) + .maxstack 4 + .locals init ([0] object enabled) + .line 104,104 : 17,118 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0005: ldstr "Transparent" + IL_000a: ldstr "CList" + IL_000f: ldc.i4.1 + IL_0010: callvirt instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(string, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0015: stloc.0 + .line 106,106 : 17,37 '' + IL_0016: ldloc.0 + IL_0017: brfalse.s IL_0025 + + .line 107,107 : 21,61 '' + IL_0019: ldloc.0 + IL_001a: unbox.any [mscorlib]System.Byte + IL_001f: call bool [mscorlib]System.Convert::ToBoolean(uint8) + IL_0024: ret + + .line 109,109 : 21,34 '' + IL_0025: ldc.i4.0 + IL_0026: ret + } // end of method ContactList::get_TransparencyEnabled + + .method public hidebysig specialname instance void + set_TransparencyEnabled(bool 'value') cil managed + { + // Code size 34 (0x22) + .maxstack 8 + .line 113,113 : 17,125 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0005: ldstr "Transparent" + IL_000a: ldstr "CList" + IL_000f: ldarg.1 + IL_0010: call uint8 [mscorlib]System.Convert::ToByte(bool) + IL_0015: box [mscorlib]System.Byte + IL_001a: ldc.i4.1 + IL_001b: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting(string, + string, + object, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0020: pop + .line 114,114 : 13,14 '' + IL_0021: ret + } // end of method ContactList::set_TransparencyEnabled + + .method private hidebysig instance void + FireInfoTipEvent(class [mscorlib]System.EventHandler`1> e, + native int lParam) cil managed + { + // Code size 42 (0x2a) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip infoTip, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1 eArgs) + .line 123,123 : 13,27 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_0004 + + .line 124,124 : 17,24 '' + IL_0003: ret + + .line 126,126 : 13,121 '' + IL_0004: ldarg.2 + IL_0005: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip + IL_000a: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000f: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_0014: unbox.any Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip + IL_0019: stloc.0 + .line 127,127 : 13,116 '' + IL_001a: ldloc.0 + IL_001b: newobj instance void class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::.ctor(!0) + IL_0020: stloc.1 + .line 129,129 : 13,28 '' + IL_0021: ldarg.1 + IL_0022: ldarg.0 + IL_0023: ldloc.1 + IL_0024: callvirt instance void class [mscorlib]System.EventHandler`1>::Invoke(object, + !0) + .line 130,130 : 9,10 '' + IL_0029: ret + } // end of method ContactList::FireInfoTipEvent + + .method public hidebysig specialname instance void + add_InfoTipShow(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 137,137 : 17,140 '' + IL_0000: ldarg.0 + IL_0001: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipShowEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>>(!!0&, + !!0) + .line 138,143 : 17,24 '' + IL_000c: ldstr "CLC/ShowInfoTip" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__0'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 144,144 : 13,14 '' + IL_0022: ret + } // end of method ContactList::add_InfoTipShow + + .method public hidebysig specialname instance void + remove_InfoTipShow(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 148,148 : 17,140 '' + IL_0000: ldarg.0 + IL_0001: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipShowEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>>(!!0&, + !!0) + .line 149,149 : 17,102 '' + IL_000c: ldstr "CLC/ShowInfoTip" + IL_0011: ldarg.0 + IL_0012: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipShowEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 150,150 : 13,14 '' + IL_001c: ret + } // end of method ContactList::remove_InfoTipShow + + .method public hidebysig specialname instance void + add_InfoTipHide(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 158,158 : 17,140 '' + IL_0000: ldarg.0 + IL_0001: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipHideEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>>(!!0&, + !!0) + .line 159,164 : 17,24 '' + IL_000c: ldstr "CLC/HideInfoTip" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__1'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 165,165 : 13,14 '' + IL_0022: ret + } // end of method ContactList::add_InfoTipHide + + .method public hidebysig specialname instance void + remove_InfoTipHide(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 169,169 : 17,140 '' + IL_0000: ldarg.0 + IL_0001: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipHideEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>>(!!0&, + !!0) + .line 170,170 : 17,102 '' + IL_000c: ldstr "CLC/HideInfoTip" + IL_0011: ldarg.0 + IL_0012: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipHideEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 171,171 : 13,14 '' + IL_001c: ret + } // end of method ContactList::remove_InfoTipHide + + .method public hidebysig specialname instance void + add_ProtocolStatusChange(class [mscorlib]System.EventHandler`1 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 179,179 : 17,138 '' + IL_0000: ldarg.0 + IL_0001: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ProtocolStatusChangeEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + .line 180,195 : 17,24 '' + IL_000c: ldstr "CList/StatusModeChange" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__2'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 196,196 : 13,14 '' + IL_0022: ret + } // end of method ContactList::add_ProtocolStatusChange + + .method public hidebysig specialname instance void + remove_ProtocolStatusChange(class [mscorlib]System.EventHandler`1 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 200,200 : 17,138 '' + IL_0000: ldarg.0 + IL_0001: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ProtocolStatusChangeEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + .line 201,201 : 17,113 '' + IL_000c: ldstr "CList/StatusModeChange" + IL_0011: ldarg.0 + IL_0012: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ProtocolStatusChangeEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 202,202 : 13,14 '' + IL_001c: ret + } // end of method ContactList::remove_ProtocolStatusChange + + .method public hidebysig specialname instance void + add_ContactMenuShowing(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 210,210 : 17,140 '' + IL_0000: ldarg.0 + IL_0001: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactMenuShowingEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>>(!!0&, + !!0) + .line 211,218 : 17,24 '' + IL_000c: ldstr "CList/PreBuildContactMenu" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__3'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 219,219 : 13,14 '' + IL_0022: ret + } // end of method ContactList::add_ContactMenuShowing + + .method public hidebysig specialname instance void + remove_ContactMenuShowing(class [mscorlib]System.EventHandler`1> 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 223,223 : 17,140 '' + IL_0000: ldarg.0 + IL_0001: ldflda class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactMenuShowingEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>>(!!0&, + !!0) + .line 224,224 : 17,114 '' + IL_000c: ldstr "CList/PreBuildContactMenu" + IL_0011: ldarg.0 + IL_0012: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactMenuShowingEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 225,225 : 13,14 '' + IL_001c: ret + } // end of method ContactList::remove_ContactMenuShowing + + .method public hidebysig specialname instance void + add_ContactDoubleClicked(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 233,233 : 17,149 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactDoubleClickedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>>(!!0&, + !!0) + .line 234,239 : 17,24 '' + IL_000c: ldstr "CList/DoubleClicked" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__4'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 240,240 : 13,14 '' + IL_0022: ret + } // end of method ContactList::add_ContactDoubleClicked + + .method public hidebysig specialname instance void + remove_ContactDoubleClicked(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 244,244 : 17,149 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactDoubleClickedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>>(!!0&, + !!0) + .line 245,245 : 17,110 '' + IL_000c: ldstr "CList/DoubleClicked" + IL_0011: ldarg.0 + IL_0012: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactDoubleClickedEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 246,246 : 13,14 '' + IL_001c: ret + } // end of method ContactList::remove_ContactDoubleClicked + + .method public hidebysig instance void + AddMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item) cil managed + { + // Code size 144 (0x90) + .maxstack 6 + .locals init ([0] string serviceName, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeHandle, + [2] valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM nativeItem, + [3] native int handle) + .line 257,257 : 13,31 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 258,258 : 17,58 '' + IL_0003: ldstr "owner" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 260,260 : 13,30 '' + IL_000e: ldarg.2 + IL_000f: brtrue.s IL_001c + + .line 261,261 : 17,57 '' + IL_0011: ldstr "item" + IL_0016: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001b: throw + + .line 263,263 : 13,146 '' + IL_001c: ldarg.2 + IL_001d: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IsContactMenuItem() + IL_0022: brtrue.s IL_002b + + IL_0024: ldstr "CList/AddMainMenuItem" + IL_0029: br.s IL_0030 + + IL_002b: ldstr "CList/AddContactMenuItem" + IL_0030: stloc.0 + .line 265,265 : 13,108 '' + IL_0031: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0036: stloc.1 + .line 266,266 : 13,71 '' + IL_0037: ldloca.s nativeItem + IL_0039: ldarg.1 + IL_003a: ldarg.2 + IL_003b: newobj instance void Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_0040: stobj Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + .line 270,270 : 17,89 '' + .try + { + IL_0045: ldloca.s nativeItem + IL_0047: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_004c: stloc.1 + .line 272,273 : 17,72 '' + IL_004d: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0052: ldloc.0 + IL_0053: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0058: ldloca.s nativeHandle + IL_005a: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_005f: ldarg.1 + IL_0060: isinst Virtuoso.Hyphen.Mini.StandalonePlugin + IL_0065: brfalse.s IL_0072 + + IL_0067: ldarg.2 + IL_0068: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IsAdditional() + IL_006d: ldc.i4.0 + IL_006e: ceq + IL_0070: br.s IL_0073 + + IL_0072: ldc.i4.0 + IL_0073: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int, + bool) + IL_0078: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_007d: stloc.3 + .line 275,275 : 17,45 '' + IL_007e: ldarg.2 + IL_007f: ldloc.3 + IL_0080: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_MirandaHandle(native int) + IL_0085: leave.s IL_008f + + .line 280,280 : 17,37 '' + } // end .try + finally + { + IL_0087: ldloca.s nativeHandle + IL_0089: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_008e: endfinally + .line 282,282 : 9,10 '' + } // end handler + IL_008f: ret + } // end of method ContactList::AddMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + string text) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 286,286 : 13,98 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldarg.3 + IL_0004: ldc.i4.0 + IL_0005: ldnull + IL_0006: ldc.i4.0 + IL_0007: ldc.i4.1 + IL_0008: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_000d: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties 'flags') cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 291,291 : 13,80 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldnull + IL_0004: ldarg.3 + IL_0005: ldnull + IL_0006: ldc.i4.0 + IL_0007: ldc.i4.1 + IL_0008: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_000d: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys hotKey) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 296,296 : 13,103 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldnull + IL_0004: ldc.i4.0 + IL_0005: ldnull + IL_0006: ldarg.3 + IL_0007: ldc.i4.1 + IL_0008: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_000d: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + class [System.Drawing]System.Drawing.Icon icon) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 301,301 : 13,98 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldnull + IL_0004: ldc.i4.0 + IL_0005: ldarg.3 + IL_0006: ldc.i4.0 + IL_0007: ldc.i4.1 + IL_0008: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_000d: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + string text, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties 'flags', + class [System.Drawing]System.Drawing.Icon icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys hotKey) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 306,306 : 13,85 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldarg.3 + IL_0004: ldarg.s 'flags' + IL_0006: ldarg.s icon + IL_0008: ldarg.s hotKey + IL_000a: ldc.i4.1 + IL_000b: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties, + class [System.Drawing]System.Drawing.Icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys, + bool) + IL_0010: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ModifyMenuItem(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + string text, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties 'flags', + class [System.Drawing]System.Drawing.Icon icon, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys hotKey, + bool updateItemDescriptor) cil managed + { + // Code size 325 (0x145) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeHandle, + [1] valuetype Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM nativeItem, + [2] valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags modifyFlags, + [3] bool result, + [4] class [mscorlib]System.Exception e, + [5] bool CS$1$0000) + .line 311,311 : 13,31 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 312,312 : 17,58 '' + IL_0003: ldstr "owner" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 314,314 : 13,34 '' + IL_000e: ldarg.2 + IL_000f: brtrue.s IL_001c + + .line 315,315 : 17,61 '' + IL_0011: ldstr "menuItem" + IL_0016: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001b: throw + + .line 317,317 : 13,55 '' + IL_001c: ldarg.2 + IL_001d: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_MirandaHandle() + IL_0022: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0027: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_002c: brfalse.s IL_0039 + + .line 318,318 : 17,74 '' + IL_002e: ldstr "Invalid menu item handle." + IL_0033: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0038: throw + + .line 320,320 : 13,108 '' + IL_0039: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_003e: stloc.0 + .line 324,324 : 17,69 '' + .try + { + .try + { + IL_003f: ldarg.2 + IL_0040: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginMenuItemUpdate(class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + .line 326,326 : 17,79 '' + IL_0045: ldloca.s nativeItem + IL_0047: ldarg.1 + IL_0048: ldarg.2 + IL_0049: newobj instance void Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + IL_004e: stobj Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + .line 327,327 : 17,76 '' + IL_0053: ldc.i4.0 + IL_0054: stloc.2 + .line 329,329 : 17,34 '' + IL_0055: ldarg.3 + IL_0056: brfalse.s IL_0073 + + .line 331,331 : 21,66 '' + IL_0058: ldloc.2 + IL_0059: ldc.i4 0x80000000 + IL_005e: or + IL_005f: stloc.2 + .line 332,332 : 21,44 '' + IL_0060: ldloca.s nativeItem + IL_0062: ldarg.3 + IL_0063: stfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Text + .line 334,334 : 21,46 '' + IL_0068: ldarg.s updateItemDescriptor + IL_006a: brfalse.s IL_0073 + + .line 334,334 : 47,68 '' + IL_006c: ldarg.2 + IL_006d: ldarg.3 + IL_006e: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Text(string) + .line 336,336 : 17,61 '' + IL_0073: ldarg.s 'flags' + IL_0075: ldc.i4.m1 + IL_0076: beq.s IL_0095 + + .line 338,338 : 21,67 '' + IL_0078: ldloc.2 + IL_0079: ldc.i4 0x40000000 + IL_007e: or + IL_007f: stloc.2 + .line 339,339 : 21,52 '' + IL_0080: ldloca.s nativeItem + IL_0082: ldarg.s 'flags' + IL_0084: stfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Flags + .line 341,341 : 21,46 '' + IL_0089: ldarg.s updateItemDescriptor + IL_008b: brfalse.s IL_0095 + + .line 341,341 : 47,70 '' + IL_008d: ldarg.2 + IL_008e: ldarg.s 'flags' + IL_0090: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Flags(valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties) + .line 343,343 : 17,34 '' + IL_0095: ldarg.s icon + IL_0097: brfalse.s IL_00af + + .line 345,345 : 21,66 '' + IL_0099: ldloc.2 + IL_009a: ldc.i4 0x20000000 + IL_009f: or + IL_00a0: stloc.2 + .line 346,346 : 21,51 '' + IL_00a1: ldloca.s nativeItem + IL_00a3: ldarg.s icon + IL_00a5: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_00aa: stfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + .line 348,348 : 17,33 '' + IL_00af: ldarg.s hotKey + IL_00b1: brfalse.s IL_00d0 + + .line 350,350 : 21,68 '' + IL_00b3: ldloc.2 + IL_00b4: ldc.i4 0x10000000 + IL_00b9: or + IL_00ba: stloc.2 + .line 351,351 : 21,54 '' + IL_00bb: ldloca.s nativeItem + IL_00bd: ldarg.s hotKey + IL_00bf: stfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::HotKey + .line 352,352 : 21,46 '' + IL_00c4: ldarg.s updateItemDescriptor + IL_00c6: brfalse.s IL_00d0 + + .line 352,352 : 47,72 '' + IL_00c8: ldarg.2 + IL_00c9: ldarg.s hotKey + IL_00cb: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HotKey(valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys) + .line 355,355 : 17,55 '' + IL_00d0: ldloca.s nativeItem + IL_00d2: dup + IL_00d3: ldfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Flags + IL_00d8: ldloc.2 + IL_00d9: or + IL_00da: stfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Flags + .line 357,357 : 17,89 '' + IL_00df: ldloca.s nativeItem + IL_00e1: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_00e6: stloc.0 + .line 358,359 : 17,36 '' + IL_00e7: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_00ec: ldstr "CList/ModifyMenuItem" + IL_00f1: ldarg.2 + IL_00f2: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_MirandaHandle() + IL_00f7: call int32 [mscorlib]System.IntPtr::op_Explicit(native int) + IL_00fc: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint32) + IL_0101: ldloca.s nativeHandle + IL_0103: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0108: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_010d: brfalse.s IL_0112 + + IL_010f: ldc.i4.0 + IL_0110: br.s IL_0113 + + IL_0112: ldc.i4.1 + IL_0113: stloc.3 + .line 362,362 : 17,31 '' + IL_0114: ldloc.3 + IL_0115: stloc.s CS$1$0000 + IL_0117: leave.s IL_0142 + + .line 364,364 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0119: stloc.s e + .line 366,366 : 17,119 '' + IL_011b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0120: ldloc.s e + IL_0122: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0127: call string [mscorlib]System.String::Concat(string, + string) + IL_012c: ldloc.s e + IL_012e: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_0133: throw + + .line 370,370 : 17,37 '' + } // end handler + } // end .try + finally + { + IL_0134: ldloca.s nativeHandle + IL_0136: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + .line 371,371 : 17,59 '' + IL_013b: ldarg.2 + IL_013c: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0141: endfinally + .line 373,373 : 9,10 '' + } // end handler + IL_0142: ldloc.s CS$1$0000 + IL_0144: ret + } // end of method ContactList::ModifyMenuItem + + .method public hidebysig instance bool + ShowBaloonTip(string title, + string text, + string protocol, + valuetype [System.Windows.Forms]System.Windows.Forms.ToolTipIcon icon, + int32 timeout) cil managed + { + // Code size 96 (0x60) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeHandle, + [1] valuetype Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY msn, + [2] int32 result, + [3] bool retValue, + [4] bool CS$1$0000) + .line 381,381 : 13,122 '' + IL_0000: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0005: stloc.0 + .line 385,385 : 17,88 '' + .try + { + IL_0006: ldloca.s msn + IL_0008: ldarg.1 + IL_0009: ldarg.2 + IL_000a: ldarg.s icon + IL_000c: newobj instance void Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::.ctor(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.ToolTipIcon) + IL_0011: stobj Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY + .line 386,386 : 17,45 '' + IL_0016: ldloca.s msn + IL_0018: ldarg.s timeout + IL_001a: stfld uint32 Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Timeout + .line 387,387 : 17,41 '' + IL_001f: ldloca.s msn + IL_0021: ldarg.3 + IL_0022: stfld string Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Protocol + .line 389,389 : 17,89 '' + IL_0027: ldloca.s msn + IL_0029: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_002e: stloc.0 + .line 390,390 : 17,141 '' + IL_002f: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0034: ldstr "Miranda/Systray/Notify" + IL_0039: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_003e: ldloca.s nativeHandle + IL_0040: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0045: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_004a: stloc.2 + .line 392,392 : 17,47 '' + IL_004b: ldloc.2 + IL_004c: ldc.i4.0 + IL_004d: ceq + IL_004f: stloc.3 + .line 395,395 : 17,33 '' + IL_0050: ldloc.3 + IL_0051: stloc.s CS$1$0000 + IL_0053: leave.s IL_005d + + .line 399,399 : 17,37 '' + } // end .try + finally + { + IL_0055: ldloca.s nativeHandle + IL_0057: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_005c: endfinally + .line 401,401 : 9,10 '' + } // end handler + IL_005d: ldloc.s CS$1$0000 + IL_005f: ret + } // end of method ContactList::ShowBaloonTip + + .method public hidebysig instance bool + SetInfoTipHoverTime(int32 time) cil managed + { + // Code size 32 (0x20) + .maxstack 4 + .locals init ([0] int32 result) + .line 405,405 : 13,123 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "CLC/SetInfoTipHoverTime" + IL_000a: ldarg.1 + IL_000b: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint32) + IL_0010: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0015: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_001a: stloc.0 + .line 408,408 : 13,32 '' + IL_001b: ldloc.0 + IL_001c: ldc.i4.0 + IL_001d: ceq + IL_001f: ret + } // end of method ContactList::SetInfoTipHoverTime + + .method public hidebysig instance int32 + GetInfoTipHoverTime() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 413,413 : 13,83 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "CLC/GetInfoTipHoverTime" + IL_000a: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_000f: ret + } // end of method ContactList::GetInfoTipHoverTime + + .method public hidebysig instance void + EnableContactSelectionTracking() cil managed + { + // Code size 86 (0x56) + .maxstack 3 + .locals init ([0] class [mscorlib]System.EventHandler 'CS$<>9__CachedAnonymousMethodDelegate6', + [1] object CS$2$0000) + IL_0000: ldnull + IL_0001: stloc.0 + .line 418,418 : 13,30 '' + IL_0002: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactList::SyncObject + IL_0007: dup + IL_0008: stloc.1 + IL_0009: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 420,420 : 17,53 '' + .try + { + IL_000e: ldarg.0 + IL_000f: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactSelectionTrackingEnabled + IL_0014: brfalse.s IL_0018 + + .line 421,421 : 21,28 '' + IL_0016: leave.s IL_0055 + + .line 423,423 : 17,62 '' + IL_0018: ldarg.0 + IL_0019: ldarg.0 + IL_001a: ldftn instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::HandleContactSelection(object, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1) + IL_0020: newobj instance void class [mscorlib]System.EventHandler`1>::.ctor(object, + native int) + IL_0025: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ContactMenuShowing(class [mscorlib]System.EventHandler`1>) + .line 424,424 : 17,56 '' + IL_002a: ldarg.0 + IL_002b: ldc.i4.1 + IL_002c: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactSelectionTrackingEnabled + .line 426,426 : 17,131 '' + IL_0031: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0036: ldloc.0 + IL_0037: brtrue.s IL_0046 + + IL_0039: ldarg.0 + IL_003a: ldftn instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::'b__5'(object, + class [mscorlib]System.EventArgs) + IL_0040: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0045: stloc.0 + IL_0046: ldloc.0 + IL_0047: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::add_IsolatedModePluginsUnloading(class [mscorlib]System.EventHandler) + IL_004c: leave.s IL_0055 + + } // end .try + finally + { + IL_004e: ldloc.1 + IL_004f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0054: endfinally + .line 428,428 : 9,10 '' + } // end handler + IL_0055: ret + } // end of method ContactList::EnableContactSelectionTracking + + .method private hidebysig instance void + HandleContactSelection(object sender, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1 e) cil managed + { + // Code size 34 (0x22) + .maxstack 2 + .locals init ([0] object CS$2$0000) + .line 432,432 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactList::SyncObject + IL_0005: dup + IL_0006: stloc.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 433,433 : 17,47 '' + .try + { + IL_000c: ldarg.0 + IL_000d: ldarg.2 + IL_000e: callvirt instance !0 class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::get_EventData() + IL_0013: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactList::selectedContact + IL_0018: leave.s IL_0021 + + } // end .try + finally + { + IL_001a: ldloc.0 + IL_001b: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0020: endfinally + .line 434,434 : 9,10 '' + } // end handler + IL_0021: ret + } // end of method ContactList::HandleContactSelection + + .method public hidebysig instance native int + AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + class [System.Drawing]System.Drawing.Icon icon, + string serviceToCall, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties properties, + string toolTip) cil managed + { + // Code size 45 (0x2d) + .maxstack 8 + .line 442,442 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0014 + + .line 443,443 : 17,60 '' + IL_0009: ldstr "contact" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 445,445 : 13,116 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: ldarg.2 + IL_0017: ldarg.3 + IL_0018: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_001d: ldarg.1 + IL_001e: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0023: ldarg.s properties + IL_0025: ldarg.s toolTip + IL_0027: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class [System.Drawing]System.Drawing.Icon, + string, + native int, + native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties, + string) + IL_002c: ret + } // end of method ContactList::AddEvent + + .method public hidebysig instance native int + AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + class [System.Drawing]System.Drawing.Icon icon, + string serviceToCall, + native int lParamToPass, + native int eventToken, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties properties, + string toolTip) cil managed + { + // Code size 216 (0xd8) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent clistEvent, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeStruct, + [2] native int eventHandle, + [3] native int CS$1$0000) + .line 450,450 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0014 + + .line 451,451 : 17,60 '' + IL_0009: ldstr "contact" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 453,453 : 13,30 '' + IL_0014: ldarg.2 + IL_0015: brtrue.s IL_0022 + + .line 454,454 : 17,57 '' + IL_0017: ldstr "icon" + IL_001c: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0021: throw + + .line 456,456 : 13,66 '' + IL_0022: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::.ctor() + IL_0027: stloc.0 + .line 457,457 : 13,62 '' + IL_0028: ldloc.0 + IL_0029: ldarg.1 + IL_002a: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_002f: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::ContactHandle + .line 458,458 : 13,49 '' + IL_0034: ldloc.0 + IL_0035: ldarg.s eventToken + IL_0037: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::EventHandle + .line 459,459 : 13,49 '' + IL_003c: ldloc.0 + IL_003d: ldarg.s properties + IL_003f: stfld uint32 Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::Flags + .line 460,460 : 13,49 '' + IL_0044: ldloc.0 + IL_0045: ldarg.2 + IL_0046: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_004b: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::IconHandle + .line 461,461 : 13,46 '' + IL_0050: ldloc.0 + IL_0051: ldarg.s lParamToPass + IL_0053: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::set_LParam(native int) + .line 462,462 : 13,52 '' + IL_0058: ldloc.0 + IL_0059: ldarg.3 + IL_005a: stfld string Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::ServiceName + .line 463,463 : 13,42 '' + IL_005f: ldloc.0 + IL_0060: ldarg.s toolTip + IL_0062: stfld string Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::Tooltip + .line 465,465 : 13,114 '' + IL_0067: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_006c: stloc.1 + .line 469,469 : 17,92 '' + .try + { + IL_006d: ldloca.s clistEvent + IL_006f: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0074: stloc.1 + .line 470,470 : 17,135 '' + IL_0075: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_007a: ldstr "CList/AddEvent" + IL_007f: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0084: ldloca.s nativeStruct + IL_0086: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_008b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0090: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0095: stloc.2 + .line 472,472 : 17,48 '' + IL_0096: ldloc.2 + IL_0097: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_009c: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_00a1: brfalse.s IL_00c5 + + .line 473,473 : 21,176 '' + IL_00a3: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_00a8: ldstr "CList/AddEvent" + IL_00ad: ldloca.s eventHandle + IL_00af: constrained. [mscorlib]System.IntPtr + IL_00b5: callvirt instance string [mscorlib]System.Object::ToString() + IL_00ba: call string [mscorlib]System.String::Format(string, + object, + object) + IL_00bf: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_00c4: throw + + .line 475,475 : 17,47 '' + IL_00c5: ldloc.0 + IL_00c6: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::EventHandle + IL_00cb: stloc.3 + IL_00cc: leave.s IL_00d6 + + .line 479,479 : 17,37 '' + } // end .try + finally + { + IL_00ce: ldloca.s nativeStruct + IL_00d0: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_00d5: endfinally + .line 481,481 : 9,10 '' + } // end handler + IL_00d6: ldloc.3 + IL_00d7: ret + } // end of method ContactList::AddEvent + + .method public hidebysig instance bool + RemoveEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 34 (0x22) + .maxstack 8 + .line 485,485 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0014 + + .line 486,486 : 17,60 '' + IL_0009: ldstr "contact" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 488,488 : 13,64 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: ldarg.1 + IL_0017: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_001c: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::RemoveEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + native int) + IL_0021: ret + } // end of method ContactList::RemoveEvent + + .method public hidebysig instance bool + RemoveEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + native int eventToken) cil managed + { + // Code size 51 (0x33) + .maxstack 8 + .line 493,493 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0014 + + .line 494,494 : 17,60 '' + IL_0009: ldstr "contact" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 496,496 : 13,132 '' + IL_0014: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0019: ldstr "Clist/RemoveEvent" + IL_001e: ldarg.1 + IL_001f: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0024: ldarg.2 + IL_0025: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_002a: call bool [mscorlib]System.Convert::ToBoolean(int32) + IL_002f: ldc.i4.0 + IL_0030: ceq + IL_0032: ret + } // end of method ContactList::RemoveEvent + + .method private hidebysig instance int32 + 'b__0'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 15 (0xf) + .maxstack 8 + .line 141,141 : 25,75 '' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipShowEventHandler + IL_0007: ldarg.2 + IL_0008: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::FireInfoTipEvent(class [mscorlib]System.EventHandler`1>, + native int) + .line 142,142 : 25,60 '' + IL_000d: ldc.i4.0 + IL_000e: ret + } // end of method ContactList::'b__0' + + .method private hidebysig instance int32 + 'b__1'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 15 (0xf) + .maxstack 8 + .line 162,162 : 25,75 '' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::InfoTipHideEventHandler + IL_0007: ldarg.2 + IL_0008: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::FireInfoTipEvent(class [mscorlib]System.EventHandler`1>, + native int) + .line 163,163 : 25,60 '' + IL_000d: ldc.i4.0 + IL_000e: ret + } // end of method ContactList::'b__1' + + .method private hidebysig instance int32 + 'b__2'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 82 (0x52) + .maxstack 3 + .locals init ([0] string protocolName, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs eArgs) + .line 183,183 : 25,126 '' + IL_0000: ldarg.2 + IL_0001: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0006: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000b: brtrue.s IL_0016 + + IL_000d: ldarg.2 + IL_000e: ldc.i4.0 + IL_000f: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0014: br.s IL_0017 + + IL_0016: ldnull + IL_0017: stloc.0 + .line 184,184 : 25,50 '' + IL_0018: ldnull + IL_0019: stloc.1 + .line 186,186 : 25,65 '' + IL_001a: ldloc.0 + IL_001b: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0020: brtrue.s IL_002e + + .line 187,187 : 29,90 '' + IL_0022: ldloc.0 + IL_0023: ldc.i4 0x3e8 + IL_0028: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType) + IL_002d: stloc.1 + .line 189,189 : 25,135 '' + IL_002e: ldloc.1 + IL_002f: ldarg.1 + IL_0030: call valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToStatus(native uint) + IL_0035: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.Protocol, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + IL_003a: stloc.2 + .line 191,191 : 25,70 '' + IL_003b: ldarg.0 + IL_003c: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ProtocolStatusChangeEventHandler + IL_0041: brfalse.s IL_0050 + + .line 192,192 : 29,75 '' + IL_0043: ldarg.0 + IL_0044: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ProtocolStatusChangeEventHandler + IL_0049: ldarg.0 + IL_004a: ldloc.2 + IL_004b: callvirt instance void class [mscorlib]System.EventHandler`1::Invoke(object, + !0) + .line 194,194 : 25,60 '' + IL_0050: ldc.i4.0 + IL_0051: ret + } // end of method ContactList::'b__2' + + .method private hidebysig instance int32 + 'b__3'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 33 (0x21) + .maxstack 8 + .line 214,214 : 25,68 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactMenuShowingEventHandler + IL_0006: brfalse.s IL_001f + + .line 215,215 : 29,137 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [mscorlib]System.EventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactMenuShowingEventHandler + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native uint) + IL_0015: newobj instance void class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::.ctor(!0) + IL_001a: callvirt instance void class [mscorlib]System.EventHandler`1>::Invoke(object, + !0) + .line 217,217 : 25,60 '' + IL_001f: ldc.i4.0 + IL_0020: ret + } // end of method ContactList::'b__3' + + .method private hidebysig instance int32 + 'b__4'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 31 (0x1f) + .maxstack 3 + .locals init ([0] bool retValue) + .line 237,237 : 25,203 '' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ContactDoubleClickedEventHandler + IL_0007: ldarg.1 + IL_0008: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native uint) + IL_000d: newobj instance void class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::.ctor(!0) + IL_0012: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable>(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + !!0) + IL_0017: stloc.0 + .line 238,238 : 25,58 '' + IL_0018: ldloc.0 + IL_0019: call int32 [mscorlib]System.Convert::ToInt32(bool) + IL_001e: ret + } // end of method ContactList::'b__4' + + .method private hidebysig instance void + 'b__5'(object param0, + class [mscorlib]System.EventArgs param1) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 19 (0x13) + .maxstack 8 + .line 426,426 : 83,128 '' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: ldftn instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::HandleContactSelection(object, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1) + IL_0008: newobj instance void class [mscorlib]System.EventHandler`1>::.ctor(object, + native int) + IL_000d: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ContactMenuShowing(class [mscorlib]System.EventHandler`1>) + IL_0012: ret + } // end of method ContactList::'b__5' + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 51,51 : 9,66 '' + IL_0000: newobj instance void [mscorlib]System.Object::.ctor() + IL_0005: stsfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactList::SyncObject + .line 63,63 : 9,62 '' + IL_000a: newobj instance void [mscorlib]System.Random::.ctor() + IL_000f: stsfld class [mscorlib]System.Random Virtuoso.Miranda.Plugins.Infrastructure.ContactList::Random + IL_0014: ret + } // end of method ContactList::.cctor + + .event class [mscorlib]System.EventHandler`1> InfoTipShow + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_InfoTipShow(class [mscorlib]System.EventHandler`1>) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_InfoTipShow(class [mscorlib]System.EventHandler`1>) + } // end of event ContactList::InfoTipShow + .event class [mscorlib]System.EventHandler`1> InfoTipHide + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_InfoTipHide(class [mscorlib]System.EventHandler`1>) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_InfoTipHide(class [mscorlib]System.EventHandler`1>) + } // end of event ContactList::InfoTipHide + .event class [mscorlib]System.EventHandler`1 ProtocolStatusChange + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ProtocolStatusChange(class [mscorlib]System.EventHandler`1) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ProtocolStatusChange(class [mscorlib]System.EventHandler`1) + } // end of event ContactList::ProtocolStatusChange + .event class [mscorlib]System.EventHandler`1> ContactMenuShowing + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ContactMenuShowing(class [mscorlib]System.EventHandler`1>) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ContactMenuShowing(class [mscorlib]System.EventHandler`1>) + } // end of event ContactList::ContactMenuShowing + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1> ContactDoubleClicked + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ContactDoubleClicked(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1>) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ContactDoubleClicked(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1>) + } // end of event ContactList::ContactDoubleClicked + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + SelectedContact() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactList::get_SelectedContact() + } // end of property ContactList::SelectedContact + .property instance valuetype [mscorlib]System.Nullable`1 + Transparency() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::set_Transparency(valuetype [mscorlib]System.Nullable`1) + .get instance valuetype [mscorlib]System.Nullable`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactList::get_Transparency() + } // end of property ContactList::Transparency + .property instance bool TransparencyEnabled() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactList::get_TransparencyEnabled() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::set_TransparencyEnabled(bool) + } // end of property ContactList::TransparencyEnabled +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactList + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute + extends [mscorlib]System.Attribute +{ + .method famorassem hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 26,26 : 9,43 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\HookAttribute.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + .line 26,26 : 46,47 '' + IL_0006: ret + } // end of method HookAttribute::.ctor + + .method assembly hidebysig newslot specialname abstract strict virtual + instance string get_HookName() cil managed + { + } // end of method HookAttribute::get_HookName + + .method assembly hidebysig newslot specialname abstract strict virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + get_HookType() cil managed + { + } // end of method HookAttribute::get_HookType + + .property instance string HookName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::get_HookName() + } // end of property HookAttribute::HookName + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + HookType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::get_HookType() + } // end of property HookAttribute::HookType +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute + extends Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 40 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ..@.....T..Allow + 4D 75 6C 74 69 70 6C 65 01 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 01 ) // rited. + .field private string eventName + .method public hidebysig specialname instance string + get_EventName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 34,34 : 17,39 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\EventHookAttribute.cs' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::eventName + IL_0006: ret + } // end of method EventHookAttribute::get_EventName + + .method public hidebysig specialname instance void + set_EventName(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 38,38 : 17,40 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::eventName + .line 39,39 : 13,14 '' + IL_0007: ret + } // end of method EventHookAttribute::set_EventName + + .method assembly hidebysig specialname strict virtual + instance string get_HookName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 44,44 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: call instance string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_EventName() + IL_0006: ret + } // end of method EventHookAttribute::get_HookName + + .method assembly hidebysig specialname strict virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + get_HookType() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 49,49 : 19,45 '' + IL_0000: ldc.i4.1 + IL_0001: ret + } // end of method EventHookAttribute::get_HookType + + .method public hidebysig specialname rtspecialname + instance void .ctor(string eventName) cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .line 56,56 : 9,52 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::.ctor() + .line 58,58 : 13,35 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 59,59 : 17,62 '' + IL_0009: ldstr "eventName" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 61,61 : 13,40 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: stfld string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::eventName + .line 62,62 : 9,10 '' + IL_001b: ret + } // end of method EventHookAttribute::.ctor + + .property instance string EventName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_EventName() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::set_EventName(string) + } // end of property EventHookAttribute::EventName + .property instance string HookName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_HookName() + } // end of property EventHookAttribute::HookName + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + HookType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_HookType() + } // end of property EventHookAttribute::HookType +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute + +.class public abstract auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs + extends [mscorlib]System.EventArgs +{ + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 27,27 : 9,37 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.EventArgs::.ctor() + .line 27,27 : 40,41 '' + IL_0006: ret + } // end of method MirandaEventArgs::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1 + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs +{ + .field private !T eventData + .method public hidebysig specialname instance !T + get_EventData() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 34,34 : 17,39 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContactListEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: ldfld !0 class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::eventData + IL_0006: ret + } // end of method ContactListEventArgs`1::get_EventData + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(!T eventData) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 42,42 : 9,51 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs::.ctor() + .line 44,44 : 13,40 '' + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: stfld !0 class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::eventData + .line 45,45 : 9,10 '' + IL_000d: ret + } // end of method ContactListEventArgs`1::.ctor + + .property instance !T EventData() + { + .get instance !T Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::get_EventData() + } // end of property ContactListEventArgs`1::EventData +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1 + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject +{ + .field private static initonly class [mscorlib]System.Type ItemTypeType + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType 'type' + .method family hidebysig specialname rtspecialname + instance void .ctor(native int handle, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType 'type') cil managed + { + // Code size 58 (0x3a) + .maxstack 8 + .line 43,43 : 9,75 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaItem.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.ctor(native int) + .line 45,45 : 13,53 '' + IL_0007: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::ItemTypeType + IL_000c: ldarg.2 + IL_000d: box Virtuoso.Miranda.Plugins.Infrastructure.ItemType + IL_0012: call bool [mscorlib]System.Enum::IsDefined(class [mscorlib]System.Type, + object) + IL_0017: brtrue.s IL_0024 + + .line 46,46 : 17,63 '' + IL_0019: ldstr "type" + IL_001e: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0023: throw + + .line 48,48 : 13,46 '' + IL_0024: ldarg.2 + IL_0025: brtrue.s IL_0032 + + .line 49,49 : 17,83 '' + IL_0027: ldstr "Unspecified type is not supported." + IL_002c: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0031: throw + + .line 51,51 : 13,30 '' + IL_0032: ldarg.0 + IL_0033: ldarg.2 + IL_0034: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::'type' + .line 52,52 : 9,10 '' + IL_0039: ret + } // end of method MirandaItem::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(native int handle) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 54,54 : 9,44 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::.ctor() + .line 56,56 : 13,41 '' + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle(native int) + .line 57,57 : 9,10 '' + IL_000d: ret + } // end of method MirandaItem::.ctor + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType + get_Type() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 67,67 : 17,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::'type' + IL_0006: ret + } // end of method MirandaItem::get_Type + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 35,35 : 9,70 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ItemType + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::ItemTypeType + IL_000f: ret + } // end of method MirandaItem::.cctor + + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType + Type() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::get_Type() + } // end of property MirandaItem::Type +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem +{ + .field private static literal string MS_CLIST_GROUPGETNAME = "CList/GroupGetName" + .method assembly hidebysig specialname rtspecialname + instance void .ctor(native int handle) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 37,37 : 9,73 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\GroupInfo.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.2 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.ctor(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType) + .line 37,37 : 76,77 '' + IL_0008: ret + } // end of method GroupInfo::.ctor + + .method public hidebysig specialname instance string + get_Name() cil managed + { + // Code size 54 (0x36) + .maxstack 4 + .locals init ([0] native int pName) + .line 47,47 : 17,126 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "CList/GroupGetName" + IL_000a: ldarg.0 + IL_000b: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0010: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0015: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_001a: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_001f: stloc.0 + .line 50,50 : 17,42 '' + IL_0020: ldloc.0 + IL_0021: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0026: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_002b: brfalse.s IL_0034 + + .line 51,51 : 21,59 '' + IL_002d: ldloc.0 + IL_002e: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringAnsi(native int) + IL_0033: ret + + .line 53,53 : 21,33 '' + IL_0034: ldnull + IL_0035: ret + } // end of method GroupInfo::get_Name + + .method public hidebysig specialname instance bool + get_IsExpanded() cil managed + { + // Code size 62 (0x3e) + .maxstack 4 + .locals init ([0] int32 expanded, + [1] native int pName, + [2] native int CS$0$0000) + .line 61,61 : 17,34 '' + IL_0000: ldc.i4.0 + IL_0001: stloc.0 + .line 63,63 : 17,142 '' + IL_0002: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0007: ldstr "CList/GroupGetName" + IL_000c: ldarg.0 + IL_000d: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0012: stloc.2 + IL_0013: ldloca.s CS$0$0000 + IL_0015: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_001a: ldloca.s expanded + IL_001c: conv.u + IL_001d: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0022: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0027: stloc.1 + .line 66,66 : 17,42 '' + IL_0028: ldloc.1 + IL_0029: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002e: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0033: brfalse.s IL_003c + + .line 67,67 : 21,56 '' + IL_0035: ldloc.0 + IL_0036: call bool [mscorlib]System.Convert::ToBoolean(int32) + IL_003b: ret + + .line 69,69 : 21,34 '' + IL_003c: ldc.i4.0 + IL_003d: ret + } // end of method GroupInfo::get_IsExpanded + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo::get_Name() + } // end of property GroupInfo::Name + .property instance bool IsExpanded() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo::get_IsExpanded() + } // end of property GroupInfo::IsExpanded +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.HookType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Undefined = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType EventHook = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType ServiceFunction = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.HookType + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + implements [mscorlib]System.Runtime.Serialization.ISerializable +{ + .class auto ansi sealed nested private ContactDisplayNameOptions + extends [mscorlib]System.Enum + { + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo/ContactDisplayNameOptions Ansi = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo/ContactDisplayNameOptions NoMyHandle = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo/ContactDisplayNameOptions Unicode = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo/ContactDisplayNameOptions NoCache = int32(0x00000004) + } // end of class ContactDisplayNameOptions + + .field private static literal string MS_DB_CONTACT_IS = "DB/Contact/Is" + .field private static literal string MS_PROTO_GETCONTACTBASEPROTO = "Proto/GetContactBaseProto" + .field private static literal string MS_DB_CONTACT_WRITESETTING = "DB/Contact/WriteSetting" + .field private static literal string MS_DB_CONTACT_GETSETTING = "DB/Contact/GetSetting" + .field private static literal string MS_DB_CONTACT_GETSETTINGSTATIC = "DB/Contact/GetSettingStatic" + .field private static literal string MS_DB_CONTACT_DELETESETTING = "DB/Contact/DeleteSetting" + .field private static literal string MS_DB_CONTACT_ADD = "DB/Contact/Add" + .field private static literal string MS_DB_CONTACT_DELETE = "DB/Contact/Delete" + .field private static literal string MS_CLIST_GETCONTACTDISPLAYNAME = "CList/GetContactDisplayName" + .field private static literal string SETTING_STATUS = "Status" + .field private static literal string MS_MSG_SENDMESSAGE = "SRMsg/SendCommand" + .field private static literal string MS_MSG_SENDMESSAGE_2 = "SRMsg/LaunchMessageWindow" + .field private static initonly object SyncObject + .field private static initonly class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo meNeutral + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.Protocol owningModule + .field private object 'value' + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType valueType + .field private object uniqueID + .field private static class [mscorlib]System.Converter`2 'CS$<>9__CachedAnonymousMethodDelegate2' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 96,97 : 9,50 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContactInfo.cs' + IL_0000: ldarg.0 + IL_0001: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0006: ldc.i4.1 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.ctor(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType) + .line 99,99 : 13,58 '' + IL_000c: ldarg.0 + IL_000d: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_0012: stfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::owningModule + .line 100,100 : 9,10 '' + IL_0017: ret + } // end of method ContactInfo::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 23 (0x17) + .maxstack 8 + .line 102,103 : 9,59 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldstr "MirandaHandle" + IL_0007: callvirt instance int64 [mscorlib]System.Runtime.Serialization.SerializationInfo::GetInt64(string) + IL_000c: call native int [mscorlib]System.IntPtr::op_Explicit(int64) + IL_0011: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor(native int) + .line 105,105 : 9,10 '' + IL_0016: ret + } // end of method ContactInfo::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(native uint contactHandle) cil managed + { + .custom instance void [mscorlib]System.ObsoleteAttribute::.ctor(string) = ( 01 00 3F 57 69 6C 6C 20 62 65 20 72 65 6D 6F 76 // ..?Will be remov + 65 64 20 69 6E 20 74 68 65 20 66 75 74 75 72 65 // ed in the future + 2C 20 75 73 65 20 46 72 6F 6D 48 61 6E 64 6C 65 // , use FromHandle + 28 55 49 6E 74 50 74 72 29 20 69 6E 73 74 65 61 // (UIntPtr) instea + 64 2E 00 00 ) // d... + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 13 (0xd) + .maxstack 8 + .line 107,108 : 9,92 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call native int Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native uint) + IL_0007: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor(native int) + .line 108,108 : 95,96 '' + IL_000c: ret + } // end of method ContactInfo::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(native int contactHandle) cil managed + { + .custom instance void [mscorlib]System.ObsoleteAttribute::.ctor(string) = ( 01 00 3E 57 69 6C 6C 20 62 65 20 72 65 6D 6F 76 // ..>Will be remov + 65 64 20 69 6E 20 74 68 65 20 66 75 74 75 72 65 // ed in the future + 2C 20 75 73 65 20 46 72 6F 6D 48 61 6E 64 6C 65 // , use FromHandle + 28 49 6E 74 50 74 72 29 20 69 6E 73 74 65 61 64 // (IntPtr) instead + 2E 00 00 ) // ... + // Code size 147 (0x93) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context, + [1] native int protoNamePtr, + [2] string protoName) + .line 110,112 : 9,52 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.1 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.ctor(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType) + .line 114,114 : 13,61 '' + IL_0008: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_000d: stloc.0 + .line 116,116 : 13,120 '' + IL_000e: ldarg.1 + IL_000f: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0014: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0019: brfalse.s IL_0039 + + IL_001b: ldloc.0 + IL_001c: ldstr "DB/Contact/Is" + IL_0021: ldarg.1 + IL_0022: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0027: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_002c: brtrue.s IL_0039 + + .line 117,117 : 17,87 '' + IL_002e: ldstr "Contact not found in Miranda database." + IL_0033: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0038: throw + + .line 119,119 : 13,67 '' + IL_0039: ldarg.1 + IL_003a: call native int Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetModuleNamePtr(native int) + IL_003f: stloc.1 + .line 121,121 : 13,45 '' + IL_0040: ldloc.1 + IL_0041: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0046: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_004b: brfalse.s IL_006c + + .line 123,123 : 17,90 '' + IL_004d: ldloc.1 + IL_004e: ldc.i4.0 + IL_004f: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0054: stloc.2 + .line 124,124 : 17,91 '' + IL_0055: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_005a: callvirt instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Protocols() + IL_005f: ldloc.2 + IL_0060: ldarg.0 + IL_0061: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::owningModule + IL_0066: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::TryGetValue(!0, + !1&) + IL_006b: pop + .line 127,127 : 13,38 '' + IL_006c: ldarg.0 + IL_006d: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::owningModule + IL_0072: brtrue.s IL_008b + + .line 129,129 : 17,57 '' + IL_0074: ldarg.0 + IL_0075: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_007a: stfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::owningModule + .line 131,131 : 17,50 '' + IL_007f: ldarg.1 + IL_0080: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0085: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_008a: pop + .line 135,135 : 13,48 '' + IL_008b: ldarg.0 + IL_008c: ldarg.1 + IL_008d: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle(native int) + .line 136,136 : 9,10 '' + IL_0092: ret + } // end of method ContactInfo::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + FromHandle(native int contactHandle) cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 140,140 : 13,51 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor(native int) + IL_0006: ret + } // end of method ContactInfo::FromHandle + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + FromHandle(native uint contactHandle) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 7 (0x7) + .maxstack 8 + .line 146,146 : 13,51 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor(native uint) + IL_0006: ret + } // end of method ContactInfo::FromHandle + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType + get_PropertyType() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 155,155 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::valueType + IL_0006: ret + } // end of method ContactInfo::get_PropertyType + + .method public hidebysig specialname instance object + get_PropertyValue() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 160,160 : 19,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'value' + IL_0006: ret + } // end of method ContactInfo::get_PropertyValue + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_OwningModule() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 165,165 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::owningModule + IL_0006: ret + } // end of method ContactInfo::get_OwningModule + + .method public hidebysig specialname instance bool + get_IsSelf() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 172,172 : 17,55 '' + IL_0000: ldarg.0 + IL_0001: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0010: ret + } // end of method ContactInfo::get_IsSelf + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_MeNeutral() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 180,180 : 17,34 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::meNeutral + IL_0005: ret + } // end of method ContactInfo::get_MeNeutral + + .method public hidebysig specialname instance valuetype [mscorlib]System.Nullable`1 + get_Status() cil managed + { + // Code size 66 (0x42) + .maxstack 3 + .locals init ([0] object obj, + [1] valuetype [mscorlib]System.Nullable`1 CS$0$0000, + [2] valuetype [mscorlib]System.Nullable`1 CS$0$0001) + .line 188,188 : 17,61 '' + IL_0000: ldarg.0 + IL_0001: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule() + IL_0006: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_000b: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0010: brfalse.s IL_001c + + .line 189,189 : 21,33 '' + IL_0012: ldloca.s CS$0$0000 + IL_0014: initobj valuetype [mscorlib]System.Nullable`1 + IL_001a: ldloc.1 + IL_001b: ret + + .line 191,191 : 17,86 '' + IL_001c: ldarg.0 + IL_001d: ldstr "Status" + IL_0022: ldc.i4.2 + IL_0023: call instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0028: stloc.0 + .line 193,193 : 17,33 '' + IL_0029: ldloc.0 + IL_002a: brfalse.s IL_0038 + + .line 194,194 : 21,52 '' + IL_002c: ldloc.0 + IL_002d: unbox.any [mscorlib]System.UInt16 + IL_0032: newobj instance void valuetype [mscorlib]System.Nullable`1::.ctor(!0) + IL_0037: ret + + .line 196,196 : 21,33 '' + IL_0038: ldloca.s CS$0$0001 + IL_003a: initobj valuetype [mscorlib]System.Nullable`1 + IL_0040: ldloc.2 + IL_0041: ret + } // end of method ContactInfo::get_Status + + .method public hidebysig specialname instance string + get_DisplayName() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 204,204 : 17,54 '' + IL_0000: ldarg.0 + IL_0001: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0006: call string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetDisplayName(native int) + IL_000b: ret + } // end of method ContactInfo::get_DisplayName + + .method public hidebysig specialname instance object + get_UniqueID() cil managed + { + // Code size 58 (0x3a) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType 'type', + [1] object CS$1$0000, + [2] object CS$2$0001) + .line 213,213 : 17,34 '' + IL_0000: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::SyncObject + IL_0005: dup + IL_0006: stloc.2 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 215,215 : 21,42 '' + .try + { + IL_000c: ldarg.0 + IL_000d: ldfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::uniqueID + IL_0012: brtrue.s IL_0028 + + .line 218,218 : 25,76 '' + IL_0014: ldarg.0 + IL_0015: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_001a: ldarg.0 + IL_001b: ldflda object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::uniqueID + IL_0020: ldloca.s 'type' + IL_0022: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetUniqueID(native int, + object&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType&) + IL_0027: pop + .line 221,221 : 21,37 '' + IL_0028: ldarg.0 + IL_0029: ldfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::uniqueID + IL_002e: stloc.1 + IL_002f: leave.s IL_0038 + + } // end .try + finally + { + IL_0031: ldloc.2 + IL_0032: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0037: endfinally + .line 223,223 : 13,14 '' + } // end handler + IL_0038: ldloc.1 + IL_0039: ret + } // end of method ContactInfo::get_UniqueID + + .method public hidebysig instance bool + WriteSetting(string name, + object 'value', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType saveAs) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 234,234 : 13,68 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.0 + IL_0003: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule() + IL_0008: ldarg.2 + IL_0009: ldarg.3 + IL_000a: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting(string, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner, + object, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_000f: ret + } // end of method ContactInfo::WriteSetting + + .method public hidebysig instance bool + WriteSetting(string name, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + object 'value', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType saveAs) cil managed + { + // Code size 31 (0x1f) + .maxstack 8 + .line 239,239 : 13,31 '' + IL_0000: ldarg.2 + IL_0001: brtrue.s IL_000e + + .line 240,240 : 17,58 '' + IL_0003: ldstr "owner" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 242,242 : 13,66 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: ldarg.2 + IL_0011: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + IL_0016: ldarg.3 + IL_0017: ldarg.s saveAs + IL_0019: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting(string, + string, + object, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_001e: ret + } // end of method ContactInfo::WriteSetting + + .method public hidebysig instance bool + WriteSettingAsBlob(string name, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + uint8[] 'blob') cil managed + { + // Code size 29 (0x1d) + .maxstack 8 + .line 247,247 : 13,31 '' + IL_0000: ldarg.2 + IL_0001: brtrue.s IL_000e + + .line 248,248 : 17,58 '' + IL_0003: ldstr "owner" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 250,250 : 13,63 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: ldarg.2 + IL_0011: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + IL_0016: ldarg.3 + IL_0017: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSettingAsBlob(string, + string, + uint8[]) + IL_001c: ret + } // end of method ContactInfo::WriteSettingAsBlob + + .method public hidebysig instance bool + WriteSettingAsBlob(string name, + string owner, + uint8[] 'blob') cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 255,255 : 13,30 '' + IL_0000: ldarg.3 + IL_0001: brtrue.s IL_000e + + .line 256,256 : 17,57 '' + IL_0003: ldstr "blob" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 258,258 : 13,49 '' + IL_000e: newobj instance void [mscorlib]System.NotImplementedException::.ctor() + IL_0013: throw + } // end of method ContactInfo::WriteSettingAsBlob + + .method public hidebysig instance bool + WriteSetting(string name, + string owner, + object 'value', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType saveAs) cil managed + { + // Code size 481 (0x1e1) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle valueHandle, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle nameHandle, + [2] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle moduleNameHandle, + [3] native int blobPtr, + [4] valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING dbSetting, + [5] bool result, + [6] class [mscorlib]System.FormatException fE, + [7] class [mscorlib]System.Exception e, + [8] bool CS$1$0000, + [9] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType CS$0$0001, + [10] native int CS$0$0002) + .line 265,265 : 13,45 '' + IL_0000: ldarg.2 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 266,266 : 17,58 '' + IL_0008: ldstr "owner" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 268,268 : 13,44 '' + IL_0013: ldarg.1 + IL_0014: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0019: brfalse.s IL_0026 + + .line 269,269 : 17,57 '' + IL_001b: ldstr "name" + IL_0020: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0025: throw + + .line 271,271 : 13,77 '' + IL_0026: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_002b: stloc.0 + .line 272,272 : 13,94 '' + IL_002c: ldarg.1 + IL_002d: ldc.i4.0 + IL_002e: call valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0033: stloc.1 + .line 273,273 : 13,101 '' + IL_0034: ldarg.2 + IL_0035: ldc.i4.0 + IL_0036: call valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_003b: stloc.2 + .line 275,275 : 13,42 '' + IL_003c: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0041: stloc.3 + .line 279,279 : 17,79 '' + .try + { + .try + { + IL_0042: ldloca.s dbSetting + IL_0044: initobj Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + .line 280,280 : 17,45 '' + IL_004a: ldloca.s dbSetting + IL_004c: ldloc.1 + IL_004d: call native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle) + IL_0052: stfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Name + .line 281,281 : 17,53 '' + IL_0057: ldloca.s dbSetting + IL_0059: ldloc.2 + IL_005a: call native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle) + IL_005f: stfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Module + .line 282,282 : 17,51 '' + IL_0064: ldloca.s dbSetting + IL_0066: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_006b: initobj Virtuoso.Miranda.Plugins.Native.DBVARIANT + .line 283,283 : 17,53 '' + IL_0071: ldloca.s dbSetting + IL_0073: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0078: ldarg.s saveAs + IL_007a: stfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + .line 285,285 : 17,32 '' + IL_007f: ldarg.s saveAs + IL_0081: stloc.s CS$0$0001 + IL_0083: ldloc.s CS$0$0001 + IL_0085: ldc.i4.1 + IL_0086: sub + IL_0087: switch ( + IL_010f, + IL_0128, + IL_0160, + IL_0141) + IL_009c: ldloc.s CS$0$0001 + IL_009e: ldc.i4 0xfc + IL_00a3: sub + IL_00a4: switch ( + IL_00e8, + IL_00e8, + IL_015a, + IL_00be) + IL_00b9: br IL_0160 + + .line 288,288 : 25,104 '' + IL_00be: ldarg.3 + IL_00bf: callvirt instance string [mscorlib]System.Object::ToString() + IL_00c4: ldc.i4.0 + IL_00c5: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_00ca: stloc.0 + .line 289,289 : 25,75 '' + IL_00cb: ldloca.s dbSetting + IL_00cd: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00d2: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_00d7: ldloca.s valueHandle + IL_00d9: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_00de: stfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + .line 290,290 : 25,31 '' + IL_00e3: br IL_016b + + .line 293,293 : 25,107 '' + IL_00e8: ldarg.3 + IL_00e9: callvirt instance string [mscorlib]System.Object::ToString() + IL_00ee: ldc.i4.1 + IL_00ef: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_00f4: stloc.0 + .line 294,294 : 25,75 '' + IL_00f5: ldloca.s dbSetting + IL_00f7: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_00fc: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0101: ldloca.s valueHandle + IL_0103: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0108: stfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + .line 295,295 : 25,31 '' + IL_010d: br.s IL_016b + + .line 298,298 : 25,81 '' + IL_010f: ldloca.s dbSetting + IL_0111: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0116: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_011b: ldarg.3 + IL_011c: call uint8 [mscorlib]System.Convert::ToByte(object) + IL_0121: stfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Byte + .line 299,299 : 25,31 '' + IL_0126: br.s IL_016b + + .line 301,301 : 25,83 '' + IL_0128: ldloca.s dbSetting + IL_012a: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_012f: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_0134: ldarg.3 + IL_0135: call uint16 [mscorlib]System.Convert::ToUInt16(object) + IL_013a: stfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Word + .line 302,302 : 25,31 '' + IL_013f: br.s IL_016b + + .line 304,304 : 25,84 '' + IL_0141: ldloca.s dbSetting + IL_0143: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_0148: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_014d: ldarg.3 + IL_014e: call uint32 [mscorlib]System.Convert::ToUInt32(object) + IL_0153: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::DWord + .line 305,305 : 25,31 '' + IL_0158: br.s IL_016b + + .line 307,307 : 25,61 '' + IL_015a: newobj instance void [mscorlib]System.NotImplementedException::.ctor() + IL_015f: throw + + .line 321,321 : 25,73 '' + IL_0160: ldstr "saveAs" + IL_0165: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_016a: throw + + .line 324,324 : 17,144 '' + IL_016b: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0170: ldstr "DB/Contact/WriteSetting" + IL_0175: ldarg.0 + IL_0176: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_017b: stloc.s CS$0$0002 + IL_017d: ldloca.s CS$0$0002 + IL_017f: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0184: ldloca.s dbSetting + IL_0186: conv.u + IL_0187: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_018c: ldc.i4.0 + IL_018d: ceq + IL_018f: stloc.s result + .line 327,327 : 17,31 '' + IL_0191: ldloc.s result + IL_0193: stloc.s CS$1$0000 + IL_0195: leave.s IL_01de + + .line 329,329 : 13,39 '' + } // end .try + catch [mscorlib]System.FormatException + { + IL_0197: stloc.s fE + .line 331,331 : 17,68 '' + IL_0199: ldstr "value" + IL_019e: ldloc.s fE + IL_01a0: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string, + class [mscorlib]System.Exception) + IL_01a5: throw + + .line 333,333 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_01a6: stloc.s e + .line 335,335 : 17,107 '' + IL_01a8: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_01ad: ldloc.s e + IL_01af: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_01b4: throw + + .line 339,339 : 17,36 '' + } // end handler + } // end .try + finally + { + IL_01b5: ldloca.s valueHandle + IL_01b7: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + .line 340,340 : 17,35 '' + IL_01bc: ldloca.s nameHandle + IL_01be: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + .line 341,341 : 17,41 '' + IL_01c3: ldloca.s moduleNameHandle + IL_01c5: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + .line 343,343 : 17,44 '' + IL_01ca: ldloc.3 + IL_01cb: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_01d0: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_01d5: brfalse.s IL_01dd + + .line 344,344 : 21,50 '' + IL_01d7: ldloc.3 + IL_01d8: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_01dd: endfinally + .line 346,346 : 9,10 '' + } // end handler + IL_01de: ldloc.s CS$1$0000 + IL_01e0: ret + } // end of method ContactInfo::WriteSetting + + .method public hidebysig instance object + ReadSetting(string name, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 354,354 : 13,61 '' + IL_0000: ldarg.0 + IL_0001: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0006: ldarg.1 + IL_0007: ldarg.2 + IL_0008: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(native int, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_000d: ret + } // end of method ContactInfo::ReadSetting + + .method public hidebysig static object + ReadSetting(native int contactHandle, + string name, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 46 (0x2e) + .maxstack 4 + .locals init ([0] native int pOwnerName) + .line 359,359 : 13,65 '' + IL_0000: ldarg.0 + IL_0001: call native int Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetModuleNamePtr(native int) + IL_0006: stloc.0 + .line 361,361 : 13,43 '' + IL_0007: ldloc.0 + IL_0008: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000d: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0012: brfalse.s IL_001f + + .line 362,362 : 17,94 '' + IL_0014: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_OwnerUnknown() + IL_0019: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_001e: throw + + .line 364,364 : 13,98 '' + IL_001f: ldarg.0 + IL_0020: ldarg.1 + IL_0021: ldloc.0 + IL_0022: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringAnsi(native int) + IL_0027: ldarg.2 + IL_0028: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(native int, + string, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_002d: ret + } // end of method ContactInfo::ReadSetting + + .method public hidebysig instance object + ReadSetting(string name, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 369,369 : 13,68 '' + IL_0000: ldarg.0 + IL_0001: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0006: ldarg.1 + IL_0007: ldarg.2 + IL_0008: ldarg.3 + IL_0009: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(native int, + string, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_000e: ret + } // end of method ContactInfo::ReadSetting + + .method public hidebysig static object + ReadSetting(native int contactHandle, + string name, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 29 (0x1d) + .maxstack 8 + .line 374,374 : 13,31 '' + IL_0000: ldarg.2 + IL_0001: brtrue.s IL_000e + + .line 375,375 : 17,58 '' + IL_0003: ldstr "owner" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 377,377 : 13,73 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: ldarg.2 + IL_0011: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + IL_0016: ldarg.3 + IL_0017: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(native int, + string, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_001c: ret + } // end of method ContactInfo::ReadSetting + + .method public hidebysig instance object + ReadSetting(string name, + string owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 382,382 : 13,68 '' + IL_0000: ldarg.0 + IL_0001: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0006: ldarg.1 + IL_0007: ldarg.2 + IL_0008: ldarg.3 + IL_0009: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting(native int, + string, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_000e: ret + } // end of method ContactInfo::ReadSetting + + .method public hidebysig static object + ReadSetting(native int contactHandle, + string name, + string owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType readAs) cil managed + { + // Code size 160 (0xa0) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING dbSetting, + [2] valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT dbVariant, + [3] class [mscorlib]System.Exception e, + [4] object CS$1$0000) + .line 387,387 : 13,44 '' + IL_0000: ldarg.1 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 388,388 : 17,57 '' + IL_0008: ldstr "name" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 390,390 : 13,70 '' + IL_0013: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer() + IL_0018: stloc.0 + .line 394,394 : 17,75 '' + .try + { + .try + { + IL_0019: ldloca.s dbSetting + IL_001b: initobj Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING + .line 395,395 : 17,39 '' + IL_0021: ldloca.s dbSetting + IL_0023: ldarg.1 + IL_0024: stfld string Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING::Name + .line 397,397 : 17,55 '' + IL_0029: ldloca.s dbVariant + IL_002b: initobj Virtuoso.Miranda.Plugins.Native.DBVARIANT + .line 398,398 : 17,47 '' + IL_0031: ldloca.s dbVariant + IL_0033: ldarg.3 + IL_0034: stfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + .line 400,400 : 17,31 '' + IL_0039: ldloc.0 + IL_003a: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + .line 402,402 : 17,56 '' + IL_003f: ldarg.3 + IL_0040: ldc.i4 0xfe + IL_0045: beq.s IL_006e + + .line 404,404 : 21,60 '' + IL_0047: ldloca.s dbVariant + IL_0049: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_004e: ldloc.0 + IL_004f: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0054: stfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + .line 405,405 : 21,73 '' + IL_0059: ldloca.s dbVariant + IL_005b: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0060: ldloc.0 + IL_0061: callvirt instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_0066: conv.u2 + IL_0067: stfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextBufferSize + IL_006c: br.s IL_0074 + + .line 409,409 : 21,57 '' + IL_006e: newobj instance void [mscorlib]System.NotImplementedException::.ctor() + IL_0073: throw + + .line 413,413 : 17,96 '' + IL_0074: ldarg.0 + IL_0075: ldarg.2 + IL_0076: ldloca.s dbSetting + IL_0078: ldloca.s dbVariant + IL_007a: call object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSettingInternal(native int, + string, + valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING&, + valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT&) + IL_007f: stloc.s CS$1$0000 + IL_0081: leave.s IL_009d + + .line 416,416 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0083: stloc.3 + .line 418,418 : 17,107 '' + IL_0084: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0089: ldloc.3 + IL_008a: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_008f: throw + + .line 422,422 : 17,33 '' + } // end handler + } // end .try + finally + { + IL_0090: ldloc.0 + IL_0091: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + .line 423,423 : 17,57 '' + IL_0096: ldloc.0 + IL_0097: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_009c: endfinally + .line 425,425 : 9,10 '' + } // end handler + IL_009d: ldloc.s CS$1$0000 + IL_009f: ret + } // end of method ContactInfo::ReadSetting + + .method private hidebysig static object + ReadSettingInternal(native int contactHandle, + string owner, + valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING& setting, + valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT& 'variant') cil managed + { + // Code size 111 (0x6f) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 dbSettingHandle, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 dbVariantHandle, + [2] int32 result, + [3] object CS$1$0000) + .line 429,429 : 13,123 '' + IL_0000: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0005: stloc.0 + .line 430,430 : 13,103 '' + IL_0006: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_000b: stloc.1 + .line 434,434 : 17,85 '' + .try + { + IL_000c: ldarg.3 + IL_000d: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0012: stloc.1 + .line 436,436 : 17,40 '' + IL_0013: ldarg.2 + IL_0014: ldarg.1 + IL_0015: stfld string Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING::Module + .line 437,437 : 17,63 '' + IL_001a: ldarg.2 + IL_001b: ldloca.s dbVariantHandle + IL_001d: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0022: stfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING::DbVariantPtr + .line 439,439 : 17,95 '' + IL_0027: ldarg.2 + IL_0028: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_002d: stloc.0 + .line 441,441 : 17,136 '' + IL_002e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0033: ldstr "DB/Contact/GetSettingStatic" + IL_0038: ldarg.0 + IL_0039: ldloca.s dbSettingHandle + IL_003b: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0040: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0045: stloc.2 + .line 444,444 : 17,33 '' + IL_0046: ldloc.2 + IL_0047: brfalse.s IL_004d + + .line 445,445 : 21,33 '' + IL_0049: ldnull + IL_004a: stloc.3 + IL_004b: leave.s IL_006d + + .line 447,447 : 17,58 '' + IL_004d: ldloca.s dbVariantHandle + IL_004f: ldarg.3 + IL_0050: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalBack(!0&) + .line 448,448 : 17,64 '' + IL_0055: ldarg.3 + IL_0056: call object Virtuoso.Miranda.Plugins.Infrastructure.Translate::ValueFromVariant(valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT&) + IL_005b: stloc.3 + IL_005c: leave.s IL_006d + + .line 452,452 : 17,40 '' + } // end .try + finally + { + IL_005e: ldloca.s dbVariantHandle + IL_0060: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + .line 453,453 : 17,40 '' + IL_0065: ldloca.s dbSettingHandle + IL_0067: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_006c: endfinally + .line 455,455 : 9,10 '' + } // end handler + IL_006d: ldloc.3 + IL_006e: ret + } // end of method ContactInfo::ReadSettingInternal + + .method public hidebysig instance bool + DeleteSetting(string name, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner) cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .line 463,463 : 13,31 '' + IL_0000: ldarg.2 + IL_0001: brtrue.s IL_000e + + .line 464,464 : 17,58 '' + IL_0003: ldstr "owner" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 466,466 : 13,52 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: ldarg.2 + IL_0011: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + IL_0016: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::DeleteSetting(string, + string) + IL_001b: ret + } // end of method ContactInfo::DeleteSetting + + .method public hidebysig instance bool + DeleteSetting(string name, + string owner) cil managed + { + // Code size 115 (0x73) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING dbGetSetting, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 dbSettingHandle, + [2] bool CS$1$0000) + .line 471,471 : 13,44 '' + IL_0000: ldarg.1 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 472,472 : 17,57 '' + IL_0008: ldstr "name" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 474,474 : 13,45 '' + IL_0013: ldarg.2 + IL_0014: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0019: brfalse.s IL_0026 + + .line 475,475 : 17,58 '' + IL_001b: ldstr "owner" + IL_0020: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0025: throw + + .line 477,477 : 13,74 '' + IL_0026: ldloca.s dbGetSetting + IL_0028: initobj Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING + .line 478,478 : 13,38 '' + IL_002e: ldloca.s dbGetSetting + IL_0030: ldarg.1 + IL_0031: stfld string Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING::Name + .line 479,479 : 13,41 '' + IL_0036: ldloca.s dbGetSetting + IL_0038: ldarg.2 + IL_0039: stfld string Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING::Module + .line 481,481 : 13,139 '' + IL_003e: ldloca.s dbSettingHandle + IL_0040: ldloca.s dbGetSetting + IL_0042: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + .line 485,485 : 17,132 '' + .try + { + IL_0047: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_004c: ldstr "DB/Contact/DeleteSetting" + IL_0051: ldarg.0 + IL_0052: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0057: ldloca.s dbSettingHandle + IL_0059: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_005e: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0063: ldc.i4.0 + IL_0064: ceq + IL_0066: stloc.2 + IL_0067: leave.s IL_0071 + + .line 489,489 : 17,40 '' + } // end .try + finally + { + IL_0069: ldloca.s dbSettingHandle + IL_006b: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_0070: endfinally + .line 491,491 : 9,10 '' + } // end handler + IL_0071: ldloc.2 + IL_0072: ret + } // end of method ContactInfo::DeleteSetting + + .method public hidebysig static !!TId[] + GetUniqueIDs(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo[] contacts) cil managed + { + .param [1] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 45 (0x2d) + .maxstack 8 + .line 499,499 : 13,34 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 500,500 : 17,61 '' + IL_0003: ldstr "contacts" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 502,502 : 13,38 '' + IL_000e: ldarg.0 + IL_000f: ldlen + IL_0010: conv.i4 + IL_0011: brtrue.s IL_001a + + .line 503,503 : 17,35 '' + IL_0013: ldc.i4.0 + IL_0014: newarr !!TId + IL_0019: ret + + .line 505,511 : 13,16 '' + IL_001a: ldarg.0 + IL_001b: ldnull + IL_001c: ldftn !!0 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'b__0'(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0022: newobj instance void class [mscorlib]System.Converter`2::.ctor(object, + native int) + IL_0027: call !!1[] [mscorlib]System.Array::ConvertAll(!!0[], + class [mscorlib]System.Converter`2) + IL_002c: ret + } // end of method ContactInfo::GetUniqueIDs + + .method public hidebysig static string[] + GetDisplayNames(string[] uuids) cil managed + { + .param [1] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 62 (0x3e) + .maxstack 8 + .line 516,516 : 13,31 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 517,517 : 17,58 '' + IL_0003: ldstr "uuids" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 519,519 : 13,35 '' + IL_000e: ldarg.0 + IL_000f: ldlen + IL_0010: conv.i4 + IL_0011: brtrue.s IL_001a + + .line 520,520 : 17,38 '' + IL_0013: ldc.i4.0 + IL_0014: newarr [mscorlib]System.String + IL_0019: ret + + .line 522,533 : 13,16 '' + IL_001a: ldarg.0 + IL_001b: ldsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_0020: brtrue.s IL_0033 + + IL_0022: ldnull + IL_0023: ldftn string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'b__1'(string) + IL_0029: newobj instance void class [mscorlib]System.Converter`2::.ctor(object, + native int) + IL_002e: stsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_0033: ldsfld class [mscorlib]System.Converter`2 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'CS$<>9__CachedAnonymousMethodDelegate2' + IL_0038: call !!1[] [mscorlib]System.Array::ConvertAll(!!0[], + class [mscorlib]System.Converter`2) + IL_003d: ret + } // end of method ContactInfo::GetDisplayNames + + .method private hidebysig static native int + GetModuleNamePtr(native int contactHandle) cil managed + { + // Code size 27 (0x1b) + .maxstack 8 + .line 542,542 : 13,121 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "Proto/GetContactBaseProto" + IL_000a: ldarg.0 + IL_000b: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0010: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0015: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_001a: ret + } // end of method ContactInfo::GetModuleNamePtr + + .method public hidebysig static string + GetDisplayName(native int contactHandle) cil managed + { + // Code size 54 (0x36) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo/ContactDisplayNameOptions options, + [1] native int pName) + .line 547,547 : 13,83 '' + IL_0000: ldc.i4.2 + IL_0001: stloc.0 + .line 549,549 : 13,135 '' + IL_0002: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0007: ldstr "CList/GetContactDisplayName" + IL_000c: ldarg.0 + IL_000d: ldloc.0 + IL_000e: conv.i8 + IL_000f: call native int [mscorlib]System.IntPtr::op_Explicit(int64) + IL_0014: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0019: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_001e: stloc.1 + .line 551,551 : 13,38 '' + IL_001f: ldloc.1 + IL_0020: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0025: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_002a: brfalse.s IL_002e + + .line 552,552 : 17,29 '' + IL_002c: ldnull + IL_002d: ret + + .line 554,554 : 17,74 '' + IL_002e: ldloc.1 + IL_002f: ldc.i4.1 + IL_0030: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0035: ret + } // end of method ContactInfo::GetDisplayName + + .method public hidebysig static bool GetUniqueID(native int contactHandle, + [out] object& uuid, + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType& uuidType) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 559,559 : 13,101 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.s 15 + IL_0003: ldarg.1 + IL_0004: ldarg.2 + IL_0005: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetProperty(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + object&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType&) + IL_000a: ret + } // end of method ContactInfo::GetUniqueID + + .method public hidebysig static bool GetProperty(native int contactHandle, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty 'property', + [out] object& 'value', + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType& valueType) cil managed + { + // Code size 205 (0xcd) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.CONTACTINFO contactInfo, + [1] int32 result, + [2] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType CS$0$0000, + [3] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType CS$0$0001) + .line 564,564 : 13,103 '' + IL_0000: ldloca.s contactInfo + IL_0002: ldarg.0 + IL_0003: ldarg.0 + IL_0004: call native int Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetModuleNamePtr(native int) + IL_0009: newobj instance void Virtuoso.Miranda.Plugins.Native.CONTACTINFO::.ctor(native int, + native int) + IL_000e: stobj Virtuoso.Miranda.Plugins.Native.CONTACTINFO + .line 565,565 : 13,96 '' + IL_0013: ldloca.s contactInfo + IL_0015: ldarg.1 + IL_0016: ldc.i4 0x80 + IL_001b: or + IL_001c: conv.u1 + IL_001d: stfld uint8 Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Flag + .line 569,569 : 17,134 '' + IL_0022: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0027: ldstr "Miranda/Contact/GetContactInfo" + IL_002c: ldc.i4.0 + IL_002d: conv.u + IL_002e: ldloca.s contactInfo + IL_0030: conv.u + IL_0031: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0036: stloc.1 + .line 571,571 : 17,33 '' + IL_0037: ldloc.1 + IL_0038: brfalse.s IL_0042 + + .line 573,573 : 21,34 '' + IL_003a: ldarg.2 + IL_003b: ldnull + IL_003c: stind.ref + .line 574,574 : 21,65 '' + IL_003d: ldarg.3 + IL_003e: ldc.i4.0 + IL_003f: stind.i4 + .line 576,576 : 21,34 '' + IL_0040: ldc.i4.0 + IL_0041: ret + + .line 580,580 : 13,75 '' + IL_0042: ldarg.3 + IL_0043: ldloca.s contactInfo + IL_0045: ldfld uint8 Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Type + IL_004a: dup + IL_004b: stloc.2 + IL_004c: stind.i4 + IL_004d: ldloc.2 + IL_004e: stloc.3 + IL_004f: ldloc.3 + IL_0050: ldc.i4.1 + IL_0051: sub + IL_0052: switch ( + IL_0069, + IL_0094, + IL_00ae, + IL_0083) + IL_0067: br.s IL_00c3 + + .line 583,583 : 21,73 '' + IL_0069: ldarg.2 + IL_006a: ldloca.s contactInfo + IL_006c: ldflda native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Value + IL_0071: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_0076: call uint8 [mscorlib]System.Convert::ToByte(int32) + IL_007b: box [mscorlib]System.Byte + IL_0080: stind.ref + .line 584,584 : 21,27 '' + IL_0081: br.s IL_00cb + + .line 586,586 : 21,91 '' + IL_0083: ldarg.2 + IL_0084: ldloca.s contactInfo + IL_0086: ldfld native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Value + IL_008b: ldc.i4.1 + IL_008c: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0091: stind.ref + .line 587,587 : 21,27 '' + IL_0092: br.s IL_00cb + + .line 589,589 : 21,75 '' + IL_0094: ldarg.2 + IL_0095: ldloca.s contactInfo + IL_0097: ldflda native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Value + IL_009c: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_00a1: call uint16 [mscorlib]System.Convert::ToUInt16(int32) + IL_00a6: box [mscorlib]System.UInt16 + IL_00ab: stind.ref + .line 590,590 : 21,27 '' + IL_00ac: br.s IL_00cb + + .line 592,592 : 21,57 '' + IL_00ae: ldarg.2 + IL_00af: ldloca.s contactInfo + IL_00b1: ldflda native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Value + IL_00b6: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_00bb: box [mscorlib]System.Int32 + IL_00c0: stind.ref + .line 593,593 : 21,27 '' + IL_00c1: br.s IL_00cb + + .line 595,595 : 21,34 '' + IL_00c3: ldarg.2 + IL_00c4: ldnull + IL_00c5: stind.ref + .line 596,596 : 21,65 '' + IL_00c6: ldarg.3 + IL_00c7: ldc.i4.0 + IL_00c8: stind.i4 + .line 597,597 : 21,34 '' + IL_00c9: ldc.i4.0 + IL_00ca: ret + + .line 600,600 : 13,25 '' + IL_00cb: ldc.i4.1 + IL_00cc: ret + } // end of method ContactInfo::GetProperty + + .method private hidebysig newslot virtual final + instance void System.Runtime.Serialization.ISerializable.GetObjectData(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + .override [mscorlib]System.Runtime.Serialization.ISerializable::GetObjectData + // Code size 26 (0x1a) + .maxstack 3 + .locals init ([0] native int CS$0$0000) + .line 609,609 : 13,69 '' + IL_0000: ldarg.1 + IL_0001: ldstr "MirandaHandle" + IL_0006: ldarg.0 + IL_0007: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_000c: stloc.0 + IL_000d: ldloca.s CS$0$0000 + IL_000f: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0014: callvirt instance void [mscorlib]System.Runtime.Serialization.SerializationInfo::AddValue(string, + int64) + .line 610,610 : 9,10 '' + IL_0019: ret + } // end of method ContactInfo::System.Runtime.Serialization.ISerializable.GetObjectData + + .method public hidebysig instance !!TId + UniqueIdAs() cil managed + { + // Code size 42 (0x2a) + .maxstack 2 + .locals init ([0] object uuid, + [1] !!TId CS$0$0000) + .line 616,616 : 13,36 '' + IL_0000: ldarg.0 + IL_0001: call instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_UniqueID() + IL_0006: stloc.0 + .line 617,617 : 13,93 '' + IL_0007: ldloc.0 + IL_0008: brfalse.s IL_0020 + + IL_000a: ldloc.0 + IL_000b: ldtoken !!TId + IL_0010: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0015: call object [mscorlib]System.Convert::ChangeType(object, + class [mscorlib]System.Type) + IL_001a: unbox.any !!TId + IL_001f: ret + + IL_0020: ldloca.s CS$0$0000 + IL_0022: initobj !!TId + IL_0028: ldloc.1 + IL_0029: ret + } // end of method ContactInfo::UniqueIdAs + + .method public hidebysig virtual instance string + ToString() cil managed + { + // Code size 53 (0x35) + .maxstack 8 + .line 622,623 : 13,90 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_0005: ldarg.0 + IL_0006: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule() + IL_000b: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_0010: brfalse.s IL_0019 + + IL_0012: ldarg.0 + IL_0013: call instance string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_DisplayName() + IL_0018: ret + + IL_0019: ldstr "{0} ({1})" + IL_001e: ldarg.0 + IL_001f: call instance string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_DisplayName() + IL_0024: ldarg.0 + IL_0025: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule() + IL_002a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_002f: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0034: ret + } // end of method ContactInfo::ToString + + .method public hidebysig specialname static + bool op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo first, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo second) cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 628,628 : 13,55 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_0007: brfalse.s IL_000b + + .line 629,629 : 17,29 '' + IL_0009: ldc.i4.1 + IL_000a: ret + + .line 630,630 : 18,58 '' + IL_000b: ldarg.0 + IL_000c: ldnull + IL_000d: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_0012: brfalse.s IL_0016 + + .line 631,631 : 17,30 '' + IL_0014: ldc.i4.0 + IL_0015: ret + + .line 633,633 : 17,45 '' + IL_0016: ldarg.0 + IL_0017: ldarg.1 + IL_0018: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_001d: ret + } // end of method ContactInfo::op_Equality + + .method public hidebysig specialname static + bool op_Inequality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo first, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo second) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 638,638 : 13,39 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: ldc.i4.0 + IL_0008: ceq + IL_000a: ret + } // end of method ContactInfo::op_Inequality + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 33 (0x21) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo other) + .line 643,643 : 13,52 '' + IL_0000: ldarg.1 + IL_0001: isinst Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + IL_0006: stloc.0 + .line 645,645 : 13,53 '' + IL_0007: ldloc.0 + IL_0008: ldnull + IL_0009: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_000e: brfalse.s IL_0012 + + .line 646,646 : 17,30 '' + IL_0010: ldc.i4.0 + IL_0011: ret + + .line 648,648 : 17,61 '' + IL_0012: ldarg.0 + IL_0013: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0018: ldloc.0 + IL_0019: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_001e: ceq + IL_0020: ret + } // end of method ContactInfo::Equals + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 15 (0xf) + .maxstack 1 + .locals init ([0] native int CS$0$0000) + .line 653,653 : 13,44 '' + IL_0000: ldarg.0 + IL_0001: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0006: stloc.0 + IL_0007: ldloca.s CS$0$0000 + IL_0009: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_000e: ret + } // end of method ContactInfo::GetHashCode + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + CreateContact() cil managed + { + // Code size 75 (0x4b) + .maxstack 3 + .locals init ([0] native int hContact) + .line 658,658 : 13,93 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "DB/Contact/Add" + IL_000a: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_000f: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0014: stloc.0 + .line 660,660 : 13,41 '' + IL_0015: ldloc.0 + IL_0016: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_001b: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0020: brfalse.s IL_0044 + + .line 661,661 : 17,169 '' + IL_0022: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0027: ldstr "DB/Contact/Add" + IL_002c: ldloca.s hContact + IL_002e: constrained. [mscorlib]System.IntPtr + IL_0034: callvirt instance string [mscorlib]System.Object::ToString() + IL_0039: call string [mscorlib]System.String::Format(string, + object, + object) + IL_003e: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0043: throw + + .line 663,663 : 13,53 '' + IL_0044: ldloc.0 + IL_0045: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_004a: ret + } // end of method ContactInfo::CreateContact + + .method public hidebysig instance bool + Delete() cil managed + { + // Code size 44 (0x2c) + .maxstack 8 + .line 668,668 : 13,24 '' + IL_0000: ldarg.0 + IL_0001: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_IsSelf() + IL_0006: brfalse.s IL_000e + + .line 669,669 : 17,55 '' + IL_0008: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_000d: throw + + .line 671,671 : 13,112 '' + IL_000e: ldc.i4.0 + IL_000f: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0014: ldstr "DB/Contact/Delete" + IL_0019: ldarg.0 + IL_001a: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_001f: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0024: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0029: ceq + IL_002b: ret + } // end of method ContactInfo::Delete + + .method public hidebysig instance bool + GetProperty(valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty 'property', + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding stringEncoding) cil managed + { + // Code size 25 (0x19) + .maxstack 8 + .line 676,676 : 13,83 '' + IL_0000: ldarg.0 + IL_0001: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0006: ldarg.1 + IL_0007: ldarg.0 + IL_0008: ldflda object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::'value' + IL_000d: ldarg.0 + IL_000e: ldflda valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::valueType + IL_0013: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetProperty(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + object&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType&) + IL_0018: ret + } // end of method ContactInfo::GetProperty + + .method public hidebysig instance int32 + CallContactService(string serviceName) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 681,681 : 13,79 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::CallContactService(string, + native uint, + native int) + IL_0011: ret + } // end of method ContactInfo::CallContactService + + .method public hidebysig instance int32 + CallContactService(string serviceName, + native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 77 (0x4d) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.CCSDATA ccsData, + [1] int32 CS$1$0000) + .line 687,687 : 13,37 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 688,688 : 17,64 '' + IL_0003: ldstr "serviceName" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 690,690 : 13,62 '' + IL_000e: ldloca.s ccsData + IL_0010: ldarg.0 + IL_0011: ldarg.1 + IL_0012: newobj instance void Virtuoso.Miranda.Plugins.Native.CCSDATA::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + string) + IL_0017: stobj Virtuoso.Miranda.Plugins.Native.CCSDATA + .line 691,691 : 13,37 '' + IL_001c: ldloca.s ccsData + IL_001e: ldarg.2 + IL_001f: stfld native uint Virtuoso.Miranda.Plugins.Native.CCSDATA::WParam + .line 692,692 : 13,37 '' + IL_0024: ldloca.s ccsData + IL_0026: ldarg.3 + IL_0027: stfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::LParam + .line 698,698 : 21,130 '' + .try + { + IL_002c: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0031: ldstr "Proto/CallContactService" + IL_0036: ldc.i4.0 + IL_0037: conv.u + IL_0038: ldloca.s ccsData + IL_003a: conv.u + IL_003b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0040: stloc.1 + IL_0041: leave.s IL_004b + + .line 703,703 : 17,32 '' + } // end .try + finally + { + IL_0043: ldloca.s ccsData + IL_0045: call instance void Virtuoso.Miranda.Plugins.Native.CCSDATA::Free() + IL_004a: endfinally + .line 705,705 : 9,10 '' + } // end handler + IL_004b: ldloc.1 + IL_004c: ret + } // end of method ContactInfo::CallContactService + + .method public hidebysig instance void + SendMessage(string message) cil managed + { + // Code size 63 (0x3f) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle nativeHandle) + .line 709,709 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 710,710 : 17,60 '' + IL_0003: ldstr "message" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 712,712 : 13,78 '' + IL_000e: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_0013: stloc.0 + .line 716,716 : 17,88 '' + .try + { + IL_0014: ldarg.1 + IL_0015: ldc.i4.0 + IL_0016: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_001b: stloc.0 + .line 717,717 : 17,99 '' + IL_001c: ldarg.0 + IL_001d: ldstr "/SendMsg" + IL_0022: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0027: ldloca.s nativeHandle + IL_0029: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_002e: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::CallContactService(string, + native uint, + native int) + IL_0033: pop + IL_0034: leave.s IL_003e + + .line 721,721 : 17,37 '' + } // end .try + finally + { + IL_0036: ldloca.s nativeHandle + IL_0038: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_003d: endfinally + .line 723,723 : 9,10 '' + } // end handler + IL_003e: ret + } // end of method ContactInfo::SendMessage + + .method public hidebysig instance void + OpenMessageWindow() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 727,727 : 13,37 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::OpenMessageWindow(string) + .line 728,728 : 9,10 '' + IL_0007: ret + } // end of method ContactInfo::OpenMessageWindow + + .method public hidebysig instance void + OpenMessageWindow(string message) cil managed + { + // Code size 126 (0x7e) + .maxstack 5 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle messageHandle, + [1] int32 result) + .line 732,732 : 13,79 '' + IL_0000: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_0005: stloc.0 + .line 736,736 : 17,52 '' + .try + { + IL_0006: ldarg.1 + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: brtrue.s IL_0016 + + .line 737,737 : 21,93 '' + IL_000e: ldarg.1 + IL_000f: ldc.i4.0 + IL_0010: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0015: stloc.0 + .line 739,739 : 17,58 '' + IL_0016: ldc.i4.0 + IL_0017: stloc.1 + .line 741,741 : 17,123 '' + IL_0018: ldloc.1 + IL_0019: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_001e: ldstr "SRMsg/SendCommand" + IL_0023: ldarg.0 + IL_0024: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0029: ldloca.s messageHandle + IL_002b: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0030: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0035: beq.s IL_0073 + + .line 742,742 : 21,161 '' + IL_0037: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_003c: ldstr "SRMsg/LaunchMessageWindow" + IL_0041: ldarg.0 + IL_0042: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0047: ldloca.s messageHandle + IL_0049: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_004e: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0053: dup + IL_0054: stloc.1 + IL_0055: brfalse.s IL_0073 + + .line 743,743 : 25,176 '' + IL_0057: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_005c: ldstr "SRMsg/SendCommand" + IL_0061: ldloca.s result + IL_0063: call instance string [mscorlib]System.Int32::ToString() + IL_0068: call string [mscorlib]System.String::Format(string, + object, + object) + IL_006d: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0072: throw + + IL_0073: leave.s IL_007d + + .line 747,747 : 17,38 '' + } // end .try + finally + { + IL_0075: ldloca.s messageHandle + IL_0077: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_007c: endfinally + .line 749,749 : 9,10 '' + } // end handler + IL_007d: ret + } // end of method ContactInfo::OpenMessageWindow + + .method private hidebysig static !!TId + 'b__0'(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] !!TId CS$0$0000) + .line 507,507 : 17,37 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Inequality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0010 + + .line 508,508 : 21,54 '' + IL_0009: ldarg.0 + IL_000a: callvirt instance !!0 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::UniqueIdAs() + IL_000f: ret + + .line 510,510 : 21,41 '' + IL_0010: ldloca.s CS$0$0000 + IL_0012: initobj !!TId + IL_0018: ldloc.0 + IL_0019: ret + } // end of method ContactInfo::'b__0' + + .method private hidebysig static string + 'b__1'(string uuid) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 40 (0x28) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) + .line 524,524 : 17,34 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_0005 + + .line 525,525 : 21,33 '' + IL_0003: ldnull + IL_0004: ret + + .line 527,527 : 17,96 '' + IL_0005: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_000a: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaDatabase() + IL_000f: ldarg.0 + IL_0010: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact(string) + IL_0015: stloc.0 + .line 529,529 : 17,37 '' + IL_0016: ldloc.0 + IL_0017: ldnull + IL_0018: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Inequality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_001d: brfalse.s IL_0026 + + .line 530,530 : 21,48 '' + IL_001f: ldloc.0 + IL_0020: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_DisplayName() + IL_0025: ret + + .line 532,532 : 21,33 '' + IL_0026: ldnull + IL_0027: ret + } // end of method ContactInfo::'b__1' + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 84,84 : 9,66 '' + IL_0000: newobj instance void [mscorlib]System.Object::.ctor() + IL_0005: stsfld object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::SyncObject + .line 85,85 : 9,75 '' + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor() + IL_000f: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::meNeutral + IL_0014: ret + } // end of method ContactInfo::.cctor + + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType + PropertyType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_PropertyType() + } // end of property ContactInfo::PropertyType + .property instance object PropertyValue() + { + .get instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_PropertyValue() + } // end of property ContactInfo::PropertyValue + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + OwningModule() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule() + } // end of property ContactInfo::OwningModule + .property instance bool IsSelf() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_IsSelf() + } // end of property ContactInfo::IsSelf + .property class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + MeNeutral() + { + .get class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + } // end of property ContactInfo::MeNeutral + .property instance valuetype [mscorlib]System.Nullable`1 + Status() + { + .get instance valuetype [mscorlib]System.Nullable`1 Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_Status() + } // end of property ContactInfo::Status + .property instance string DisplayName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_DisplayName() + } // end of property ContactInfo::DisplayName + .property instance object UniqueID() + { + .get instance object Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_UniqueID() + } // end of property ContactInfo::UniqueID +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname uint8 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty FirstName = uint8(0x01) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty LastName = uint8(0x02) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Nick = uint8(0x03) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty CustomNick = uint8(0x04) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Email = uint8(0x05) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty City = uint8(0x06) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty State = uint8(0x07) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Country = uint8(0x08) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Phone = uint8(0x09) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty HomePage = uint8(0x0A) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty About = uint8(0x0B) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Gender = uint8(0x0C) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty Age = uint8(0x0D) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty FirstAndLastName = uint8(0x0E) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty UniqueID = uint8(0x0F) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyFlags + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname uint8 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyFlags Unicode = uint8(0x80) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyFlags + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ItemType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Unspecified = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Contact = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ItemType Group = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ItemType + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase + extends Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher +{ + .class auto ansi sealed nested private beforefieldinit 'd__6' + extends [mscorlib]System.Object + implements class [mscorlib]System.Collections.Generic.IEnumerable`1, + [mscorlib]System.Collections.IEnumerable, + class [mscorlib]System.Collections.Generic.IEnumerator`1, + [mscorlib]System.Collections.IEnumerator, + [mscorlib]System.IDisposable + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private native int '<>2__current' + .field private int32 '<>1__state' + .field private int32 '<>l__initialThreadId' + .field public class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext '5__7' + .field public class Virtuoso.Miranda.Plugins.Callback '5__8' + .field public native uint '5__9' + .field public class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase '<>4__this' + .method private hidebysig newslot virtual final + instance class [mscorlib]System.Collections.Generic.IEnumerator`1 + 'System.Collections.Generic.IEnumerable.GetEnumerator'() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override method instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + // Code size 60 (0x3c) + .maxstack 2 + .locals init (class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6' V_0) + IL_0000: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0005: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_000a: ldarg.0 + IL_000b: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>l__initialThreadId' + IL_0010: bne.un.s IL_0027 + + IL_0012: ldarg.0 + IL_0013: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + IL_0018: ldc.i4.s -2 + IL_001a: bne.un.s IL_0027 + + IL_001c: ldarg.0 + IL_001d: ldc.i4.0 + IL_001e: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + IL_0023: ldarg.0 + IL_0024: stloc.0 + IL_0025: br.s IL_003a + + IL_0027: ldc.i4.0 + IL_0028: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::.ctor(int32) + IL_002d: stloc.0 + IL_002e: ldloc.0 + IL_002f: ldarg.0 + IL_0030: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>4__this' + IL_0035: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>4__this' + IL_003a: ldloc.0 + IL_003b: ret + } // end of method 'd__6'::'System.Collections.Generic.IEnumerable.GetEnumerator' + + .method private hidebysig newslot virtual final + instance class [mscorlib]System.Collections.IEnumerator + System.Collections.IEnumerable.GetEnumerator() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerable::GetEnumerator + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.Collections.Generic.IEnumerator`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'System.Collections.Generic.IEnumerable.GetEnumerator'() + IL_0006: ret + } // end of method 'd__6'::System.Collections.IEnumerable.GetEnumerator + + .method private hidebysig newslot virtual final + instance bool MoveNext() cil managed + { + .override [mscorlib]System.Collections.IEnumerator::MoveNext + // Code size 188 (0xbc) + .maxstack 4 + .locals init ([0] int32 CS$0$0000, + [1] native uint CS$0$0001) + IL_0000: ldarg.0 + IL_0001: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: switch ( + IL_001a, + IL_0083) + IL_0015: br IL_00ba + + IL_001a: ldarg.0 + IL_001b: ldc.i4.m1 + IL_001c: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + .line 330,330 : 13,61 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaDatabase.cs' + IL_0021: ldarg.0 + IL_0022: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0027: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__7' + .line 331,331 : 13,83 '' + IL_002c: ldarg.0 + IL_002d: ldstr "DB/Contact/FindNext" + IL_0032: call class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::GetService(string) + IL_0037: stfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__8' + .line 333,333 : 13,90 '' + IL_003c: ldarg.0 + IL_003d: ldarg.0 + IL_003e: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__7' + IL_0043: ldstr "DB/Contact/FindFirst" + IL_0048: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_004d: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint32) + IL_0052: stfld native uint Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__9' + .line 337,337 : 17,44 '' + IL_0057: ldarg.0 + IL_0058: ldfld native uint Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__9' + IL_005d: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0062: call bool [mscorlib]System.UIntPtr::op_Inequality(native uint, + native uint) + IL_0067: brfalse.s IL_008a + + .line 338,338 : 21,61 '' + IL_0069: ldarg.0 + IL_006a: ldarg.0 + IL_006b: ldfld native uint Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__9' + IL_0070: call native int Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native uint) + IL_0075: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>2__current' + IL_007a: ldarg.0 + IL_007b: ldc.i4.1 + IL_007c: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + IL_0081: ldc.i4.1 + IL_0082: ret + + IL_0083: ldarg.0 + IL_0084: ldc.i4.m1 + IL_0085: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + .line 340,340 : 13,93 '' + IL_008a: ldarg.0 + IL_008b: ldarg.0 + IL_008c: ldfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__8' + IL_0091: ldarg.0 + IL_0092: ldfld native uint Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__9' + IL_0097: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_009c: callvirt instance int32 Virtuoso.Miranda.Plugins.Callback::Invoke(native uint, + native int) + IL_00a1: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint32) + IL_00a6: dup + IL_00a7: stloc.1 + IL_00a8: stfld native uint Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'5__9' + IL_00ad: ldloc.1 + IL_00ae: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_00b3: call bool [mscorlib]System.UIntPtr::op_Inequality(native uint, + native uint) + IL_00b8: brtrue.s IL_0057 + + IL_00ba: ldc.i4.0 + IL_00bb: ret + } // end of method 'd__6'::MoveNext + + .method private hidebysig newslot specialname virtual final + instance native int 'System.Collections.Generic.IEnumerator.get_Current'() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override method instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>2__current' + IL_0006: ret + } // end of method 'd__6'::'System.Collections.Generic.IEnumerator.get_Current' + + .method private hidebysig newslot virtual final + instance void System.Collections.IEnumerator.Reset() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerator::Reset + // Code size 6 (0x6) + .maxstack 8 + IL_0000: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_0005: throw + } // end of method 'd__6'::System.Collections.IEnumerator.Reset + + .method private hidebysig newslot virtual final + instance void System.IDisposable.Dispose() cil managed + { + .override [mscorlib]System.IDisposable::Dispose + // Code size 1 (0x1) + .maxstack 8 +// Fehler beim erneuten Öffnen der Datei mit FileToken 0x0800026B. + .line 0,134218346 : 0,0 'c:\\U??' + .line 0,134218348 : 0,0 '' + .line 0,0 : 0,0 '' + IL_0000: ret + } // end of method 'd__6'::System.IDisposable.Dispose + + .method private hidebysig newslot specialname virtual final + instance object System.Collections.IEnumerator.get_Current() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerator::get_Current + // Code size 12 (0xc) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>2__current' + IL_0006: box [mscorlib]System.IntPtr + IL_000b: ret + } // end of method 'd__6'::System.Collections.IEnumerator.get_Current + + .method public hidebysig specialname rtspecialname + instance void .ctor(int32 '<>1__state') cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 30 (0x1e) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>1__state' + IL_000d: ldarg.0 + IL_000e: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0013: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_0018: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>l__initialThreadId' + IL_001d: ret + } // end of method 'd__6'::.ctor + + .property instance native int 'System.Collections.Generic.IEnumerator.Current'() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'System.Collections.Generic.IEnumerator.get_Current'() + } // end of property 'd__6'::'System.Collections.Generic.IEnumerator.Current' + .property instance object System.Collections.IEnumerator.Current() + { + .get instance object Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::System.Collections.IEnumerator.get_Current() + } // end of property 'd__6'::System.Collections.IEnumerator.Current + } // end of class 'd__6' + + .class auto ansi sealed nested private beforefieldinit 'd__c' + extends [mscorlib]System.Object + implements class [mscorlib]System.Collections.Generic.IEnumerable`1, + [mscorlib]System.Collections.IEnumerable, + class [mscorlib]System.Collections.Generic.IEnumerator`1, + [mscorlib]System.Collections.IEnumerator, + [mscorlib]System.IDisposable + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private native int '<>2__current' + .field private int32 '<>1__state' + .field private int32 '<>l__initialThreadId' + .field public native int ownerHandle + .field public native int '<>3__ownerHandle' + .field public class Virtuoso.Miranda.Plugins.Callback '5__d' + .field public native int '5__e' + .field public class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase '<>4__this' + .method private hidebysig newslot virtual final + instance class [mscorlib]System.Collections.Generic.IEnumerator`1 + 'System.Collections.Generic.IEnumerable.GetEnumerator'() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override method instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + // Code size 72 (0x48) + .maxstack 2 + .locals init (class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c' V_0) + IL_0000: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0005: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_000a: ldarg.0 + IL_000b: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>l__initialThreadId' + IL_0010: bne.un.s IL_0027 + + IL_0012: ldarg.0 + IL_0013: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + IL_0018: ldc.i4.s -2 + IL_001a: bne.un.s IL_0027 + + IL_001c: ldarg.0 + IL_001d: ldc.i4.0 + IL_001e: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + IL_0023: ldarg.0 + IL_0024: stloc.0 + IL_0025: br.s IL_003a + + IL_0027: ldc.i4.0 + IL_0028: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::.ctor(int32) + IL_002d: stloc.0 + IL_002e: ldloc.0 + IL_002f: ldarg.0 + IL_0030: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>4__this' + IL_0035: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>4__this' + IL_003a: ldloc.0 + IL_003b: ldarg.0 + IL_003c: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>3__ownerHandle' + IL_0041: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::ownerHandle + IL_0046: ldloc.0 + IL_0047: ret + } // end of method 'd__c'::'System.Collections.Generic.IEnumerable.GetEnumerator' + + .method private hidebysig newslot virtual final + instance class [mscorlib]System.Collections.IEnumerator + System.Collections.IEnumerable.GetEnumerator() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerable::GetEnumerator + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.Collections.Generic.IEnumerator`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'System.Collections.Generic.IEnumerable.GetEnumerator'() + IL_0006: ret + } // end of method 'd__c'::System.Collections.IEnumerable.GetEnumerator + + .method private hidebysig newslot virtual final + instance bool MoveNext() cil managed + { + .override [mscorlib]System.Collections.IEnumerator::MoveNext + // Code size 174 (0xae) + .maxstack 5 + .locals init ([0] int32 CS$0$0000) + IL_0000: ldarg.0 + IL_0001: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: switch ( + IL_001a, + IL_006d) + IL_0015: br IL_00ac + + IL_001a: ldarg.0 + IL_001b: ldc.i4.m1 + IL_001c: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + .line 493,493 : 13,81 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaDatabase.cs' + IL_0021: ldarg.0 + IL_0022: ldstr "DB/Event/FindNext" + IL_0027: call class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::GetService(string) + IL_002c: stfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__d' + .line 494,494 : 13,121 '' + IL_0031: ldarg.0 + IL_0032: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0037: ldstr "DB/Event/FindFirst" + IL_003c: ldarg.0 + IL_003d: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::ownerHandle + IL_0042: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0047: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_004c: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0051: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__e' + IL_0056: br.s IL_009a + + .line 498,498 : 17,37 '' + IL_0058: ldarg.0 + IL_0059: ldarg.0 + IL_005a: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__e' + IL_005f: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>2__current' + IL_0064: ldarg.0 + IL_0065: ldc.i4.1 + IL_0066: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + IL_006b: ldc.i4.1 + IL_006c: ret + + IL_006d: ldarg.0 + IL_006e: ldc.i4.m1 + IL_006f: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + .line 499,499 : 17,84 '' + IL_0074: ldarg.0 + IL_0075: ldarg.0 + IL_0076: ldfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__d' + IL_007b: ldarg.0 + IL_007c: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__e' + IL_0081: call native uint Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native int) + IL_0086: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_008b: callvirt instance int32 Virtuoso.Miranda.Plugins.Callback::Invoke(native uint, + native int) + IL_0090: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0095: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__e' + .line 496,496 : 13,42 '' + IL_009a: ldarg.0 + IL_009b: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'5__e' + IL_00a0: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_00a5: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_00aa: brtrue.s IL_0058 + + IL_00ac: ldc.i4.0 + IL_00ad: ret + } // end of method 'd__c'::MoveNext + + .method private hidebysig newslot specialname virtual final + instance native int 'System.Collections.Generic.IEnumerator.get_Current'() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override method instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>2__current' + IL_0006: ret + } // end of method 'd__c'::'System.Collections.Generic.IEnumerator.get_Current' + + .method private hidebysig newslot virtual final + instance void System.Collections.IEnumerator.Reset() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerator::Reset + // Code size 6 (0x6) + .maxstack 8 + IL_0000: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_0005: throw + } // end of method 'd__c'::System.Collections.IEnumerator.Reset + + .method private hidebysig newslot virtual final + instance void System.IDisposable.Dispose() cil managed + { + .override [mscorlib]System.IDisposable::Dispose + // Code size 1 (0x1) + .maxstack 8 +// Fehler beim erneuten Öffnen der Datei mit FileToken 0x0800026B. + .line 0,134218346 : 0,0 'c:\\U??' + .line 0,134218348 : 0,0 '' + .line 0,0 : 0,0 '' + IL_0000: ret + } // end of method 'd__c'::System.IDisposable.Dispose + + .method private hidebysig newslot specialname virtual final + instance object System.Collections.IEnumerator.get_Current() cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + .override [mscorlib]System.Collections.IEnumerator::get_Current + // Code size 12 (0xc) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>2__current' + IL_0006: box [mscorlib]System.IntPtr + IL_000b: ret + } // end of method 'd__c'::System.Collections.IEnumerator.get_Current + + .method public hidebysig specialname rtspecialname + instance void .ctor(int32 '<>1__state') cil managed + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerHiddenAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 30 (0x1e) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>1__state' + IL_000d: ldarg.0 + IL_000e: call class [mscorlib]System.Threading.Thread [mscorlib]System.Threading.Thread::get_CurrentThread() + IL_0013: callvirt instance int32 [mscorlib]System.Threading.Thread::get_ManagedThreadId() + IL_0018: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>l__initialThreadId' + IL_001d: ret + } // end of method 'd__c'::.ctor + + .property instance native int 'System.Collections.Generic.IEnumerator.Current'() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'System.Collections.Generic.IEnumerator.get_Current'() + } // end of property 'd__c'::'System.Collections.Generic.IEnumerator.Current' + .property instance object System.Collections.IEnumerator.Current() + { + .get instance object Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::System.Collections.IEnumerator.get_Current() + } // end of property 'd__c'::System.Collections.IEnumerator.Current + } // end of class 'd__c' + + .field private static literal string ME_DB_EVENT_ADDED = "DB/Event/Added" + .field private static literal string ME_DB_EVENT_DELETED = "DB/Event/Deleted" + .field private static literal string ME_DB_EVENT_FILTER_ADD = "DB/Event/FilterAdd" + .field private static literal string ME_DB_CONTACT_ADDED = "DB/Contact/Added" + .field private static literal string ME_DB_CONTACT_DELETED = "DB/Contact/Deleted" + .field private static literal string ME_DB_CONTACT_SETTINGCHANGED = "DB/Contact/SettingChanged" + .field private static literal string MS_DB_GETPROFILENAME = "DB/GetProfileName" + .field private static literal string MS_DB_GETPROFILEPATH = "DB/GetProfilePath" + .field private static literal string MS_DB_EVENT_ADD = "DB/Event/Add" + .field private static literal string MS_DB_CONTACT_GETCOUNT = "DB/Contact/GetCount" + .field private static literal string MS_DB_CONTACT_FINDFIRST = "DB/Contact/FindFirst" + .field private static literal string MS_DB_CONTACT_FINDNEXT = "DB/Contact/FindNext" + .field private static literal string MS_DB_EVENT_FINDFIRST = "DB/Event/FindFirst" + .field private static literal string MS_DB_EVENT_FINDNEXT = "DB/Event/FindNext" + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 EventAddedEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 EventDeletedEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 BeforeEventAddedEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactAddedEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactDeletedEventHandler + .field private class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactSettingChangedEventHandler + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 60,60 : 9,35 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaDatabase.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::.ctor() + .line 60,60 : 38,39 '' + IL_0006: ret + } // end of method MirandaDatabase::.ctor + + .method private hidebysig instance int32 + RaiseDbEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'handler', + bool fromPointer, + native uint wParam, + native int lParam) cil managed + { + // Code size 56 (0x38) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo eventInfo, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs eventArgs, + [3] bool retValue) + .line 80,80 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_0005 + + .line 81,81 : 17,26 '' + IL_0003: ldc.i4.0 + IL_0004: ret + + .line 83,83 : 13,70 '' + IL_0005: ldarg.3 + IL_0006: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native uint) + IL_000b: stloc.0 + .line 84,84 : 13,134 '' + IL_000c: ldarg.2 + IL_000d: brtrue.s IL_0018 + + IL_000f: ldarg.s lParam + IL_0011: call class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::FromHandle(native int) + IL_0016: br.s IL_001f + + IL_0018: ldarg.s lParam + IL_001a: call class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::FromPointer(native int) + IL_001f: stloc.1 + .line 85,85 : 13,103 '' + IL_0020: ldloc.0 + IL_0021: ldloc.1 + IL_0022: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo) + IL_0027: stloc.2 + .line 87,87 : 13,97 '' + IL_0028: ldarg.0 + IL_0029: ldarg.1 + IL_002a: ldloc.2 + IL_002b: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + !!0) + IL_0030: stloc.3 + .line 88,88 : 13,46 '' + IL_0031: ldloc.3 + IL_0032: call int32 [mscorlib]System.Convert::ToInt32(bool) + IL_0037: ret + } // end of method MirandaDatabase::RaiseDbEvent + + .method public hidebysig specialname instance void + add_EventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 96,96 : 17,130 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventAddedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + .line 97,101 : 17,24 '' + IL_000c: ldstr "DB/Event/Added" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__0'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 102,102 : 13,14 '' + IL_0022: ret + } // end of method MirandaDatabase::add_EventAdded + + .method public hidebysig specialname instance void + remove_EventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 106,106 : 17,130 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventAddedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + .line 107,107 : 17,95 '' + IL_000c: ldstr "DB/Event/Added" + IL_0011: ldarg.0 + IL_0012: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventAddedEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 108,108 : 13,14 '' + IL_001c: ret + } // end of method MirandaDatabase::remove_EventAdded + + .method public hidebysig specialname instance void + add_EventDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 116,116 : 17,132 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventDeletedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + .line 117,121 : 17,24 '' + IL_000c: ldstr "DB/Event/Deleted" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__1'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 122,122 : 13,14 '' + IL_0022: ret + } // end of method MirandaDatabase::add_EventDeleted + + .method public hidebysig specialname instance void + remove_EventDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 126,126 : 17,132 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventDeletedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + .line 127,127 : 17,99 '' + IL_000c: ldstr "DB/Event/Deleted" + IL_0011: ldarg.0 + IL_0012: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventDeletedEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 128,128 : 13,14 '' + IL_001c: ret + } // end of method MirandaDatabase::remove_EventDeleted + + .method public hidebysig specialname instance void + add_BeforeEventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 139,139 : 17,136 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::BeforeEventAddedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + .line 140,144 : 17,24 '' + IL_000c: ldstr "DB/Event/FilterAdd" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__2'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 145,145 : 13,14 '' + IL_0022: ret + } // end of method MirandaDatabase::add_BeforeEventAdded + + .method public hidebysig specialname instance void + remove_BeforeEventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 149,149 : 17,136 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::BeforeEventAddedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + .line 150,150 : 17,106 '' + IL_000c: ldstr "DB/Event/FilterAdd" + IL_0011: ldarg.0 + IL_0012: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::BeforeEventAddedEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 151,151 : 13,14 '' + IL_001c: ret + } // end of method MirandaDatabase::remove_BeforeEventAdded + + .method private hidebysig instance int32 + RaiseContactEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'handler', + native uint wParam) cil managed + { + // Code size 35 (0x23) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs eventArgs, + [2] bool retValue) + .line 156,156 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_0005 + + .line 157,157 : 17,26 '' + IL_0003: ldc.i4.0 + IL_0004: ret + + .line 159,159 : 13,62 '' + IL_0005: ldarg.2 + IL_0006: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContactInfo(native uint) + IL_000b: stloc.0 + .line 160,160 : 13,90 '' + IL_000c: ldloc.0 + IL_000d: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0012: stloc.1 + .line 162,162 : 13,96 '' + IL_0013: ldarg.0 + IL_0014: ldarg.1 + IL_0015: ldloc.1 + IL_0016: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + !!0) + IL_001b: stloc.2 + .line 163,163 : 13,46 '' + IL_001c: ldloc.2 + IL_001d: call int32 [mscorlib]System.Convert::ToInt32(bool) + IL_0022: ret + } // end of method MirandaDatabase::RaiseContactEvent + + .method private hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + GetContactInfo(native uint wParam) cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 168,168 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0006: call bool [mscorlib]System.UIntPtr::op_Equality(native uint, + native uint) + IL_000b: brfalse.s IL_0013 + + .line 169,169 : 17,46 '' + IL_000d: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_0012: ret + + .line 171,171 : 17,55 '' + IL_0013: ldarg.0 + IL_0014: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native uint) + IL_0019: ret + } // end of method MirandaDatabase::GetContactInfo + + .method private hidebysig instance int32 + RaiseContactSettingEvent(native uint hContact, + native int pDbWriteSetting) cil managed + { + // Code size 145 (0x91) + .maxstack 5 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING dbWriteSetting, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo, + [2] string name, + [3] string moduleName, + [4] object 'value', + [5] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs eventArgs, + [6] bool retValue) + .line 176,176 : 13,105 '' + IL_0000: ldarga.s pDbWriteSetting + IL_0002: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0007: ldobj Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + IL_000c: stloc.0 + .line 177,177 : 13,64 '' + IL_000d: ldarg.1 + IL_000e: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContactInfo(native uint) + IL_0013: stloc.1 + .line 179,179 : 13,88 '' + IL_0014: ldloca.s dbWriteSetting + IL_0016: ldfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Name + IL_001b: ldc.i4.0 + IL_001c: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0021: stloc.2 + .line 180,180 : 13,96 '' + IL_0022: ldloca.s dbWriteSetting + IL_0024: ldfld native int Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Module + IL_0029: ldc.i4.0 + IL_002a: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_002f: stloc.3 + .line 181,181 : 13,33 '' + IL_0030: ldnull + IL_0031: stloc.s 'value' + .line 183,183 : 13,92 '' + IL_0033: ldloca.s dbWriteSetting + IL_0035: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_003a: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + IL_003f: ldc.i4 0xfe + IL_0044: beq.s IL_0050 + + .line 184,184 : 17,77 '' + IL_0046: ldarg.2 + IL_0047: call object Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::ExtractValue(native int) + IL_004c: stloc.s 'value' + IL_004e: br.s IL_0061 + + .line 186,186 : 17,118 '' + IL_0050: ldc.i4.s 10 + IL_0052: ldstr "Hyphen" + IL_0057: ldstr "Blob settings are not yet supported, the value wil" + + "l be null." + IL_005c: call void [mscorlib]System.Diagnostics.Debugger::Log(int32, + string, + string) + .line 188,188 : 13,177 '' + IL_0061: ldloc.1 + IL_0062: ldloc.2 + IL_0063: ldloc.3 + IL_0064: ldloc.s 'value' + IL_0066: ldloca.s dbWriteSetting + IL_0068: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::Value + IL_006d: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + IL_0072: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + string, + string, + object, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType) + IL_0077: stloc.s eventArgs + .line 190,190 : 13,129 '' + IL_0079: ldarg.0 + IL_007a: ldarg.0 + IL_007b: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactSettingChangedEventHandler + IL_0080: ldloc.s eventArgs + IL_0082: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + !!0) + IL_0087: stloc.s retValue + .line 191,191 : 13,46 '' + IL_0089: ldloc.s retValue + IL_008b: call int32 [mscorlib]System.Convert::ToInt32(bool) + IL_0090: ret + } // end of method MirandaDatabase::RaiseContactSettingEvent + + .method public hidebysig specialname instance void + add_ContactAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 199,199 : 17,131 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactAddedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + .line 200,204 : 17,24 '' + IL_000c: ldstr "DB/Contact/Added" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__3'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 205,205 : 13,14 '' + IL_0022: ret + } // end of method MirandaDatabase::add_ContactAdded + + .method public hidebysig specialname instance void + remove_ContactAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 209,209 : 17,131 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactAddedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + .line 210,210 : 17,99 '' + IL_000c: ldstr "DB/Contact/Added" + IL_0011: ldarg.0 + IL_0012: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactAddedEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 211,211 : 13,14 '' + IL_001c: ret + } // end of method MirandaDatabase::remove_ContactAdded + + .method public hidebysig specialname instance void + add_ContactDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 219,219 : 17,133 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactDeletedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + .line 220,224 : 17,24 '' + IL_000c: ldstr "DB/Contact/Deleted" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__4'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 225,225 : 13,14 '' + IL_0022: ret + } // end of method MirandaDatabase::add_ContactDeleted + + .method public hidebysig specialname instance void + remove_ContactDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 229,229 : 17,133 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactDeletedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + .line 230,230 : 17,103 '' + IL_000c: ldstr "DB/Contact/Deleted" + IL_0011: ldarg.0 + IL_0012: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactDeletedEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 231,231 : 13,14 '' + IL_001c: ret + } // end of method MirandaDatabase::remove_ContactDeleted + + .method public hidebysig specialname instance void + add_ContactSettingChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 35 (0x23) + .maxstack 8 + .line 239,239 : 17,147 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactSettingChangedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + .line 240,244 : 17,24 '' + IL_000c: ldstr "DB/Contact/SettingChanged" + IL_0011: ldarg.0 + IL_0012: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::'b__5'(native uint, + native int) + IL_0018: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_001d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 245,245 : 13,14 '' + IL_0022: ret + } // end of method MirandaDatabase::add_ContactSettingChanged + + .method public hidebysig specialname instance void + remove_ContactSettingChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 29 (0x1d) + .maxstack 8 + .line 249,249 : 17,147 '' + IL_0000: ldarg.0 + IL_0001: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactSettingChangedEventHandler + IL_0006: ldarg.1 + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + .line 250,250 : 17,117 '' + IL_000c: ldstr "DB/Contact/SettingChanged" + IL_0011: ldarg.0 + IL_0012: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactSettingChangedEventHandler + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 251,251 : 13,14 '' + IL_001c: ret + } // end of method MirandaDatabase::remove_ContactSettingChanged + + .method public hidebysig specialname instance string + get_ProfileName() cil managed + { + // Code size 90 (0x5a) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] int32 result, + [2] class [mscorlib]System.Exception e, + [3] string CS$1$0000) + .line 264,264 : 17,74 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer() + IL_0005: stloc.0 + .line 268,268 : 21,35 '' + .try + { + .try + { + IL_0006: ldloc.0 + IL_0007: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + .line 270,270 : 21,128 '' + IL_000c: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0011: ldstr "DB/GetProfileName" + IL_0016: ldloc.0 + IL_0017: callvirt instance native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsUIntPtr() + IL_001c: ldloc.0 + IL_001d: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0022: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0027: stloc.1 + .line 273,273 : 21,37 '' + IL_0028: ldloc.1 + IL_0029: brfalse.s IL_002f + + .line 273,273 : 38,50 '' + IL_002b: ldnull + IL_002c: stloc.3 + IL_002d: leave.s IL_0058 + + .line 274,274 : 21,83 '' + IL_002f: ldloc.0 + IL_0030: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0035: ldc.i4.0 + IL_0036: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_003b: stloc.3 + IL_003c: leave.s IL_0058 + + .line 276,276 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_003e: stloc.2 + .line 278,278 : 21,111 '' + IL_003f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0044: ldloc.2 + IL_0045: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_004a: throw + + .line 282,282 : 21,37 '' + } // end handler + } // end .try + finally + { + IL_004b: ldloc.0 + IL_004c: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + .line 283,283 : 21,61 '' + IL_0051: ldloc.0 + IL_0052: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_0057: endfinally + .line 285,285 : 13,14 '' + } // end handler + IL_0058: ldloc.3 + IL_0059: ret + } // end of method MirandaDatabase::get_ProfileName + + .method public hidebysig specialname instance string + get_ProfilePath() cil managed + { + // Code size 90 (0x5a) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] int32 result, + [2] class [mscorlib]System.Exception e, + [3] string CS$1$0000) + .line 292,292 : 17,74 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer() + IL_0005: stloc.0 + .line 296,296 : 21,35 '' + .try + { + .try + { + IL_0006: ldloc.0 + IL_0007: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + .line 298,298 : 21,128 '' + IL_000c: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0011: ldstr "DB/GetProfilePath" + IL_0016: ldloc.0 + IL_0017: callvirt instance native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsUIntPtr() + IL_001c: ldloc.0 + IL_001d: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0022: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0027: stloc.1 + .line 301,301 : 21,37 '' + IL_0028: ldloc.1 + IL_0029: brfalse.s IL_002f + + .line 301,301 : 38,50 '' + IL_002b: ldnull + IL_002c: stloc.3 + IL_002d: leave.s IL_0058 + + .line 302,302 : 21,83 '' + IL_002f: ldloc.0 + IL_0030: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0035: ldc.i4.0 + IL_0036: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_003b: stloc.3 + IL_003c: leave.s IL_0058 + + .line 304,304 : 17,36 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_003e: stloc.2 + .line 306,306 : 21,111 '' + IL_003f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0044: ldloc.2 + IL_0045: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_004a: throw + + .line 310,310 : 21,37 '' + } // end handler + } // end .try + finally + { + IL_004b: ldloc.0 + IL_004c: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + .line 311,311 : 21,61 '' + IL_0051: ldloc.0 + IL_0052: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_0057: endfinally + .line 313,313 : 13,14 '' + } // end handler + IL_0058: ldloc.3 + IL_0059: ret + } // end of method MirandaDatabase::get_ProfilePath + + .method public hidebysig instance class [mscorlib]System.Collections.Generic.IEnumerable`1 + GetContactHandles() cil managed + { + // Code size 17 (0x11) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6' V_0) +// Fehler beim erneuten Öffnen der Datei mit FileToken 0x00000000. + .line 0,0 : 0,0 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugin' +// Fehler beim erneuten Öffnen der Datei mit FileToken 0x00000000. + .line 0,0 : 0,2 '' + .line 1916892270,363946864 : 29543,-1879041288 '' + IL_0000: ldc.i4.s -2 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::.ctor(int32) + IL_0007: stloc.0 + IL_0008: ldloc.0 + IL_0009: ldarg.0 + IL_000a: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__6'::'<>4__this' + IL_000f: ldloc.0 + IL_0010: ret + } // end of method MirandaDatabase::GetContactHandles + + .method public hidebysig instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 + GetContacts() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 345,345 : 13,39 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaDatabase.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: call instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContacts(bool) + IL_0007: ret + } // end of method MirandaDatabase::GetContacts + + .method public hidebysig instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 + GetContacts(bool includeSelf) cil managed + { + // Code size 108 (0x6c) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context, + [1] class [mscorlib]System.Collections.Generic.List`1 contacts, + [2] native int handle, + [3] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000) + .line 350,350 : 13,61 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: stloc.0 + .line 351,351 : 13,83 '' + IL_0006: ldstr "DB/Contact/FindNext" + IL_000b: call class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::GetService(string) + IL_0010: pop + .line 353,353 : 13,109 '' + IL_0011: ldloc.0 + IL_0012: ldstr "DB/Contact/GetCount" + IL_0017: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_001c: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0021: stloc.1 + .line 355,355 : 13,29 '' + IL_0022: ldarg.1 + IL_0023: brfalse.s IL_0030 + + .line 356,356 : 17,53 '' + IL_0025: ldloc.1 + IL_0026: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral() + IL_002b: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 358,358 : 39,58 '' + IL_0030: ldarg.0 + IL_0031: call instance class [mscorlib]System.Collections.Generic.IEnumerable`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContactHandles() + IL_0036: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + IL_003b: stloc.3 + .try + { + IL_003c: br.s IL_0051 + + .line 358,358 : 22,35 '' + IL_003e: ldloc.3 + IL_003f: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0044: stloc.2 + .line 359,359 : 17,62 '' + IL_0045: ldloc.1 + IL_0046: ldloc.2 + IL_0047: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_004c: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 358,358 : 36,38 '' + IL_0051: ldloc.3 + IL_0052: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0057: brtrue.s IL_003e + + IL_0059: leave.s IL_0065 + + } // end .try + finally + { + IL_005b: ldloc.3 + IL_005c: brfalse.s IL_0064 + + IL_005e: ldloc.3 + IL_005f: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0064: endfinally + .line 361,361 : 13,42 '' + } // end handler + IL_0065: ldloc.1 + IL_0066: callvirt instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 class [mscorlib]System.Collections.Generic.List`1::AsReadOnly() + IL_006b: ret + } // end of method MirandaDatabase::GetContacts + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + FindContact(string uuid) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 366,366 : 13,89 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.s 15 + IL_0004: ldc.i4.0 + IL_0005: call instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_000a: ret + } // end of method MirandaDatabase::FindContact + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + FindContact(string searchValue, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty searchCriterion, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding valueEncoding) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 371,371 : 13,103 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldarg.3 + IL_0004: ldc.i4.4 + IL_0005: call instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding, + valuetype [mscorlib]System.StringComparison) + IL_000a: ret + } // end of method MirandaDatabase::FindContact + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + FindContact(string searchValue, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty searchCriterion, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding valueEncoding, + valuetype [mscorlib]System.StringComparison comparisonType) cil managed + { + // Code size 102 (0x66) + .maxstack 4 + .locals init ([0] native int handle, + [1] object 'value', + [2] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType 'type', + [3] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo CS$1$0000, + [4] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0001) + .line 376,376 : 13,37 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 377,377 : 17,65 '' + IL_0003: ldstr "searchValues" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 379,379 : 39,58 '' + IL_000e: ldarg.0 + IL_000f: call instance class [mscorlib]System.Collections.Generic.IEnumerable`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContactHandles() + IL_0014: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.Generic.IEnumerable`1::GetEnumerator() + IL_0019: stloc.s CS$5$0001 + .try + { + IL_001b: br.s IL_004b + + .line 379,379 : 22,35 '' + IL_001d: ldloc.s CS$5$0001 + IL_001f: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0024: stloc.0 + .line 384,385 : 17,77 '' + IL_0025: ldloc.0 + IL_0026: ldarg.2 + IL_0027: ldloca.s 'value' + IL_0029: ldloca.s 'type' + IL_002b: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetProperty(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + object&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType&) + IL_0030: brfalse.s IL_004b + + IL_0032: ldarg.1 + IL_0033: ldloc.1 + IL_0034: callvirt instance string [mscorlib]System.Object::ToString() + IL_0039: ldarg.s comparisonType + IL_003b: callvirt instance bool [mscorlib]System.String::Equals(string, + valuetype [mscorlib]System.StringComparison) + IL_0040: brfalse.s IL_004b + + .line 386,386 : 21,59 '' + IL_0042: ldloc.0 + IL_0043: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_0048: stloc.3 + IL_0049: leave.s IL_0064 + + .line 379,379 : 36,38 '' + IL_004b: ldloc.s CS$5$0001 + IL_004d: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0052: brtrue.s IL_001d + + IL_0054: leave.s IL_0062 + + } // end .try + finally + { + IL_0056: ldloc.s CS$5$0001 + IL_0058: brfalse.s IL_0061 + + IL_005a: ldloc.s CS$5$0001 + IL_005c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0061: endfinally + .line 390,390 : 13,25 '' + } // end handler + IL_0062: ldnull + IL_0063: ret + + .line 391,391 : 9,10 '' + IL_0064: ldloc.3 + IL_0065: ret + } // end of method MirandaDatabase::FindContact + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo[] + FindContacts(string[] uuids) cil managed + { + .param [1] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 82 (0x52) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 results, + [1] string uuid, + [2] class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + [3] string[] CS$6$0000, + [4] int32 CS$7$0001) + .line 395,395 : 13,31 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 396,396 : 17,58 '' + IL_0003: ldstr "uuids" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 398,398 : 13,77 '' + IL_000e: ldarg.1 + IL_000f: ldlen + IL_0010: conv.i4 + IL_0011: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0016: stloc.0 + .line 400,400 : 37,42 '' + IL_0017: ldarg.1 + IL_0018: stloc.3 + IL_0019: ldc.i4.0 + IL_001a: stloc.s CS$7$0001 + IL_001c: br.s IL_0044 + + .line 400,400 : 22,33 '' + IL_001e: ldloc.3 + IL_001f: ldloc.s CS$7$0001 + IL_0021: ldelem.ref + IL_0022: stloc.1 + .line 402,402 : 17,108 '' + IL_0023: ldarg.0 + IL_0024: ldloc.1 + IL_0025: ldc.i4.s 15 + IL_0027: ldc.i4.0 + IL_0028: call instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_002d: stloc.2 + .line 404,404 : 17,37 '' + IL_002e: ldloc.2 + IL_002f: ldnull + IL_0030: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Inequality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0035: brfalse.s IL_003e + + .line 405,405 : 21,42 '' + IL_0037: ldloc.0 + IL_0038: ldloc.2 + IL_0039: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_003e: ldloc.s CS$7$0001 + IL_0040: ldc.i4.1 + IL_0041: add + IL_0042: stloc.s CS$7$0001 + .line 400,400 : 34,36 '' + IL_0044: ldloc.s CS$7$0001 + IL_0046: ldloc.3 + IL_0047: ldlen + IL_0048: conv.i4 + IL_0049: blt.s IL_001e + + .line 408,408 : 13,38 '' + IL_004b: ldloc.0 + IL_004c: callvirt instance !0[] class [mscorlib]System.Collections.Generic.List`1::ToArray() + IL_0051: ret + } // end of method MirandaDatabase::FindContacts + + .method public hidebysig instance native int + AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo associatedContact, + object data, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType 'type', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties 'flags', + valuetype [mscorlib]System.Nullable`1 timestamp) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 417,417 : 13,91 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldarg.3 + IL_0004: ldarg.s 'type' + IL_0006: ldarg.s 'flags' + IL_0008: ldarg.s timestamp + IL_000a: ldc.i4.1 + IL_000b: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + object, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties, + valuetype [mscorlib]System.Nullable`1, + bool) + IL_0010: ret + } // end of method MirandaDatabase::AddEvent + + .method public hidebysig instance native int + AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo associatedContact, + object data, + class Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType 'type', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties 'flags', + valuetype [mscorlib]System.Nullable`1 timestamp, + bool throwOnFailure) cil managed + { + // Code size 37 (0x25) + .maxstack 8 + .line 422,422 : 13,31 '' + IL_0000: ldarg.3 + IL_0001: brtrue.s IL_000e + + .line 423,423 : 17,58 '' + IL_0003: ldstr "owner" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 425,425 : 13,106 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: ldarg.2 + IL_0011: ldarg.3 + IL_0012: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner::get_Name() + IL_0017: ldarg.s 'type' + IL_0019: ldarg.s 'flags' + IL_001b: ldarg.s timestamp + IL_001d: ldarg.s throwOnFailure + IL_001f: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + object, + string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties, + valuetype [mscorlib]System.Nullable`1, + bool) + IL_0024: ret + } // end of method MirandaDatabase::AddEvent + + .method public hidebysig instance native int + AddEvent(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo associatedContact, + object data, + string owner, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType 'type', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties 'flags', + valuetype [mscorlib]System.Nullable`1 timestamp, + bool throwOnFailure) cil managed + { + // Code size 406 (0x196) + .maxstack 4 + .locals init ([0] native int pBlob, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeStruct, + [2] int32 totalBytes, + [3] uint8[] dataBytes, + [4] valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO info, + [5] native int eventHandle, + [6] native int CS$1$0000, + [7] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle CS$0$0001, + [8] native int[] CS$0$0002) + .line 430,430 : 13,43 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0014 + + .line 431,431 : 17,70 '' + IL_0009: ldstr "associatedContact" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 433,433 : 13,45 '' + IL_0014: ldarg.3 + IL_0015: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_001a: brfalse.s IL_0027 + + .line 434,434 : 17,58 '' + IL_001c: ldstr "owner" + IL_0021: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0026: throw + + .line 436,436 : 13,30 '' + IL_0027: ldarg.2 + IL_0028: brtrue.s IL_0035 + + .line 437,437 : 17,57 '' + IL_002a: ldstr "data" + IL_002f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0034: throw + + .line 439,439 : 13,40 '' + IL_0035: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_003a: stloc.0 + .line 440,440 : 13,104 '' + IL_003b: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0040: stloc.1 + .line 446,446 : 17,36 '' + .try + { + IL_0041: ldarg.2 + IL_0042: isinst [mscorlib]System.String + IL_0047: brfalse.s IL_0059 + + .line 448,448 : 21,91 '' + IL_0049: ldarg.2 + IL_004a: castclass [mscorlib]System.String + IL_004f: ldloca.s pBlob + IL_0051: call int32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::LayoutAnsiUniString(string, + native int&) + IL_0056: stloc.2 + IL_0057: br.s IL_008b + + .line 450,450 : 22,41 '' + IL_0059: ldarg.2 + IL_005a: isinst uint8[] + IL_005f: brfalse.s IL_0080 + + .line 452,452 : 21,53 '' + IL_0061: ldarg.2 + IL_0062: castclass uint8[] + IL_0067: stloc.3 + .line 453,453 : 21,51 '' + IL_0068: ldloc.3 + IL_0069: ldlen + IL_006a: conv.i4 + IL_006b: stloc.2 + .line 455,455 : 21,62 '' + IL_006c: ldloc.2 + IL_006d: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_0072: stloc.0 + .line 456,456 : 21,73 '' + IL_0073: ldloc.3 + IL_0074: ldc.i4.0 + IL_0075: ldloc.0 + IL_0076: ldloc.3 + IL_0077: ldlen + IL_0078: conv.i4 + IL_0079: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + IL_007e: br.s IL_008b + + .line 459,459 : 21,67 '' + IL_0080: ldstr "data" + IL_0085: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_008a: throw + + .line 461,461 : 17,68 '' + IL_008b: ldloca.s info + IL_008d: ldc.i4.0 + IL_008e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0093: newobj instance void Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::.ctor(int32, + native int) + IL_0098: stobj Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + .line 462,462 : 17,85 '' + IL_009d: ldloca.s info + IL_009f: ldarg.3 + IL_00a0: ldc.i4.0 + IL_00a1: call valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_00a6: stloc.s CS$0$0001 + IL_00a8: ldloca.s CS$0$0001 + IL_00aa: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_00af: stfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Module + .line 463,463 : 17,50 '' + IL_00b4: ldloca.s info + IL_00b6: ldloc.2 + IL_00b7: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::BlobSize + .line 464,464 : 17,38 '' + IL_00bc: ldloca.s info + IL_00be: ldloc.0 + IL_00bf: stfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::BlobPtr + .line 465,465 : 17,47 '' + IL_00c4: ldloca.s info + IL_00c6: ldarg.s 'type' + IL_00c8: conv.u2 + IL_00c9: stfld uint16 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::EventType + .line 466,466 : 17,42 '' + IL_00ce: ldloca.s info + IL_00d0: ldarg.s 'flags' + IL_00d2: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Flags + .line 467,467 : 17,110 '' + IL_00d7: ldloca.s info + IL_00d9: ldarga.s timestamp + IL_00db: call instance bool valuetype [mscorlib]System.Nullable`1::get_HasValue() + IL_00e0: brtrue.s IL_00e9 + + IL_00e2: call valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::get_Now() + IL_00e7: br.s IL_00f0 + + IL_00e9: ldarga.s timestamp + IL_00eb: call instance !0 valuetype [mscorlib]System.Nullable`1::get_Value() + IL_00f0: call uint32 Virtuoso.Miranda.Plugins.Helpers.Utilities::GetTimestamp(valuetype [mscorlib]System.DateTime) + IL_00f5: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Timestamp + .line 469,469 : 17,101 '' + IL_00fa: ldloca.s info + IL_00fc: ldc.i4.2 + IL_00fd: newarr [mscorlib]System.IntPtr + IL_0102: stloc.s CS$0$0002 + IL_0104: ldloc.s CS$0$0002 + IL_0106: ldc.i4.0 + IL_0107: ldelema [mscorlib]System.IntPtr + IL_010c: ldloc.0 + IL_010d: stobj [mscorlib]System.IntPtr + IL_0112: ldloc.s CS$0$0002 + IL_0114: ldc.i4.1 + IL_0115: ldelema [mscorlib]System.IntPtr + IL_011a: ldloca.s info + IL_011c: ldfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Module + IL_0121: stobj [mscorlib]System.IntPtr + IL_0126: ldloc.s CS$0$0002 + IL_0128: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + native int[]) + IL_012d: stloc.1 + .line 470,470 : 17,152 '' + IL_012e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0133: ldstr "DB/Event/Add" + IL_0138: ldarg.1 + IL_0139: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_013e: ldloca.s nativeStruct + IL_0140: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0145: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_014a: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_014f: stloc.s eventHandle + .line 472,472 : 17,66 '' + IL_0151: ldloc.s eventHandle + IL_0153: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0158: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_015d: brfalse.s IL_0185 + + IL_015f: ldarg.s throwOnFailure + IL_0161: brfalse.s IL_0185 + + .line 473,473 : 21,174 '' + IL_0163: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0168: ldstr "DB/Event/Add" + IL_016d: ldloca.s eventHandle + IL_016f: constrained. [mscorlib]System.IntPtr + IL_0175: callvirt instance string [mscorlib]System.Object::ToString() + IL_017a: call string [mscorlib]System.String::Format(string, + object, + object) + IL_017f: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0184: throw + + .line 475,475 : 21,40 '' + IL_0185: ldloc.s eventHandle + IL_0187: stloc.s CS$1$0000 + IL_0189: leave.s IL_0193 + + .line 479,479 : 17,37 '' + } // end .try + finally + { + IL_018b: ldloca.s nativeStruct + IL_018d: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_0192: endfinally + .line 481,481 : 9,10 '' + } // end handler + IL_0193: ldloc.s CS$1$0000 + IL_0195: ret + } // end of method MirandaDatabase::AddEvent + + .method public hidebysig instance class [mscorlib]System.Collections.Generic.IEnumerable`1 + GetEventHandles(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo owner) cil managed + { + // Code size 33 (0x21) + .maxstack 8 + .line 485,485 : 13,31 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0014 + + .line 486,486 : 17,58 '' + IL_0009: ldstr "owner" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 488,488 : 13,57 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_001b: call instance class [mscorlib]System.Collections.Generic.IEnumerable`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetEventHandles(native int) + IL_0020: ret + } // end of method MirandaDatabase::GetEventHandles + + .method public hidebysig instance class [mscorlib]System.Collections.Generic.IEnumerable`1 + GetEventHandles(native int ownerHandle) cil managed + { + // Code size 24 (0x18) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c' V_0) + .line 0,134218404 : 0,0 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugin' + .line 0,0 : 0,0 '' + .line 0,363946864 : 0,-1879041288 '' + IL_0000: ldc.i4.s -2 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::.ctor(int32) + IL_0007: stloc.0 + IL_0008: ldloc.0 + IL_0009: ldarg.0 + IL_000a: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>4__this' + IL_000f: ldloc.0 + IL_0010: ldarg.1 + IL_0011: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase/'d__c'::'<>3__ownerHandle' + IL_0016: ldloc.0 + IL_0017: ret + } // end of method MirandaDatabase::GetEventHandles + + .method private hidebysig instance int32 + 'b__0'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 16 (0x10) + .maxstack 8 + .line 100,100 : 25,92 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaDatabase.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventAddedEventHandler + IL_0007: ldc.i4.0 + IL_0008: ldarg.1 + IL_0009: ldarg.2 + IL_000a: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseDbEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + bool, + native uint, + native int) + IL_000f: ret + } // end of method MirandaDatabase::'b__0' + + .method private hidebysig instance int32 + 'b__1'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 16 (0x10) + .maxstack 8 + .line 120,120 : 25,94 '' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::EventDeletedEventHandler + IL_0007: ldc.i4.0 + IL_0008: ldarg.1 + IL_0009: ldarg.2 + IL_000a: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseDbEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + bool, + native uint, + native int) + IL_000f: ret + } // end of method MirandaDatabase::'b__1' + + .method private hidebysig instance int32 + 'b__2'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 16 (0x10) + .maxstack 8 + .line 143,143 : 25,97 '' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::BeforeEventAddedEventHandler + IL_0007: ldc.i4.1 + IL_0008: ldarg.1 + IL_0009: ldarg.2 + IL_000a: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseDbEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + bool, + native uint, + native int) + IL_000f: ret + } // end of method MirandaDatabase::'b__2' + + .method private hidebysig instance int32 + 'b__3'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 14 (0xe) + .maxstack 8 + .line 203,203 : 25,84 '' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactAddedEventHandler + IL_0007: ldarg.1 + IL_0008: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseContactEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + native uint) + IL_000d: ret + } // end of method MirandaDatabase::'b__3' + + .method private hidebysig instance int32 + 'b__4'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 14 (0xe) + .maxstack 8 + .line 223,223 : 25,86 '' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::ContactDeletedEventHandler + IL_0007: ldarg.1 + IL_0008: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseContactEvent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + native uint) + IL_000d: ret + } // end of method MirandaDatabase::'b__4' + + .method private hidebysig instance int32 + 'b__5'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 9 (0x9) + .maxstack 8 + .line 243,243 : 25,73 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseContactSettingEvent(native uint, + native int) + IL_0008: ret + } // end of method MirandaDatabase::'b__5' + + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 EventAdded + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_EventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_EventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::EventAdded + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 EventDeleted + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_EventDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_EventDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::EventDeleted + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 BeforeEventAdded + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_BeforeEventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_BeforeEventAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::BeforeEventAdded + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactAdded + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_ContactAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_ContactAdded(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::ContactAdded + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactDeleted + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_ContactDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_ContactDeleted(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::ContactDeleted + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 ContactSettingChanged + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_ContactSettingChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_ContactSettingChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event MirandaDatabase::ContactSettingChanged + .property instance string ProfileName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::get_ProfileName() + } // end of property MirandaDatabase::ProfileName + .property instance string ProfilePath() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::get_ProfilePath() + } // end of property MirandaDatabase::ProfilePath +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject +{ + .field private static literal string MS_DB_EVENT_GETBLOBSIZE = "DB/Event/GetBlobSize" + .field private static literal string MS_DB_EVENT_GET = "DB/Event/Get" + .field private static literal string MS_DB_TIME_TIMESTAMPTOSTRING = "DB/Time/TimestampToString" + .field private static literal string MS_DB_EVENT_GETCONTACT = "DB/Event/GetContact" + .field private static literal string MS_DB_EVENT_GETTEXT = "DB/Event/GetText" + .field private native int mirandaHandle + .field private class Virtuoso.Miranda.Plugins.Infrastructure.Protocol owningModule + .field private valuetype [mscorlib]System.DateTime timestamp + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties 'flags' + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType 'type' + .field private string data + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 93,93 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\DatabaseEventInfo.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 93,93 : 41,42 '' + IL_0006: ret + } // end of method DatabaseEventInfo::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(native int eventHandle) cil managed + { + // Code size 74 (0x4a) + .maxstack 6 + .line 99,99 : 9,56 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 101,101 : 13,44 '' + IL_0006: ldarg.1 + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0011: brfalse.s IL_001e + + .line 102,102 : 17,64 '' + IL_0013: ldstr "eventHandle" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 104,104 : 13,46 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::mirandaHandle + .line 105,105 : 13,101 '' + IL_0025: ldarg.1 + IL_0026: ldarg.0 + IL_0027: ldflda valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'type' + IL_002c: ldarg.0 + IL_002d: ldflda valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'flags' + IL_0032: ldarg.0 + IL_0033: ldflda string Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::data + IL_0038: ldarg.0 + IL_0039: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::owningModule + IL_003e: ldarg.0 + IL_003f: ldflda valuetype [mscorlib]System.DateTime Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::timestamp + IL_0044: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::FromHandle(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties&, + string&, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocol&, + valuetype [mscorlib]System.DateTime&) + .line 106,106 : 9,10 '' + IL_0049: ret + } // end of method DatabaseEventInfo::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + FromHandle(native int eventHandle) cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 115,115 : 13,55 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::.ctor(native int) + IL_0006: ret + } // end of method DatabaseEventInfo::FromHandle + + .method public hidebysig static void FromHandle(native int eventHandle, + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType& 'type', + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties& 'flags', + [out] string& data, + [out] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol& owningModule, + [out] valuetype [mscorlib]System.DateTime& timestamp) cil managed + { + // Code size 65 (0x41) + .maxstack 8 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO dbEventInfo, + [2] class [mscorlib]System.Exception e) + .line 133,133 : 13,41 '' + IL_0000: ldnull + IL_0001: stloc.0 + .line 140,140 : 21,82 '' + .try + { + .try + { + IL_0002: ldarg.0 + IL_0003: ldloca.s dbEventInfo + IL_0005: ldloca.s buffer + IL_0007: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::PrepareDbEventInfo(native int, + valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer&) + .line 142,142 : 21,136 '' + IL_000c: ldloca.s dbEventInfo + IL_000e: ldarg.0 + IL_000f: ldloc.0 + IL_0010: ldarg.1 + IL_0011: ldarg.2 + IL_0012: ldarg.3 + IL_0013: ldarg.s owningModule + IL_0015: ldarg.s timestamp + IL_0017: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventInfo(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&, + native int, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties&, + string&, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocol&, + valuetype [mscorlib]System.DateTime&) + IL_001c: leave.s IL_002e + + .line 145,145 : 13,37 '' + } // end .try + catch Virtuoso.Miranda.Plugins.Native.MirandaException + { + IL_001e: pop + .line 147,147 : 17,23 '' + IL_001f: rethrow + .line 149,149 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_0021: stloc.2 + .line 151,151 : 17,107 '' + IL_0022: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotFinishMarshaling() + IL_0027: ldloc.2 + IL_0028: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string, + class [mscorlib]System.Exception) + IL_002d: throw + + } // end handler + IL_002e: leave.s IL_0040 + + .line 155,155 : 17,36 '' + } // end .try + finally + { + IL_0030: ldloc.0 + IL_0031: brfalse.s IL_003f + + .line 157,157 : 21,37 '' + IL_0033: ldloc.0 + IL_0034: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + .line 158,158 : 21,61 '' + IL_0039: ldloc.0 + IL_003a: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_003f: endfinally + .line 161,161 : 9,10 '' + } // end handler + IL_0040: ret + } // end of method DatabaseEventInfo::FromHandle + + .method private hidebysig static void PrepareDbEventInfo(native int eventHandle, + [out] valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo, + [out] class Virtuoso.Miranda.Plugins.Native.InteropBuffer& buffer) cil managed + { + // Code size 92 (0x5c) + .maxstack 4 + .locals init ([0] int32 blobSize) + .line 171,171 : 13,125 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "DB/Event/GetBlobSize" + IL_000a: ldarga.s eventHandle + IL_000c: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0011: ldc.i4.0 + IL_0012: conv.u + IL_0013: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0018: stloc.0 + .line 173,173 : 13,32 '' + IL_0019: ldloc.0 + IL_001a: ldc.i4.m1 + IL_001b: bne.un.s IL_0039 + + .line 174,174 : 17,175 '' + IL_001d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0022: ldstr "DB/Event/GetBlobSize" + IL_0027: ldloca.s blobSize + IL_0029: call instance string [mscorlib]System.Int32::ToString() + IL_002e: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0033: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0038: throw + + .line 177,177 : 13,64 '' + IL_0039: ldarg.2 + IL_003a: ldloc.0 + IL_003b: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer(int32) + IL_0040: stind.ref + .line 178,178 : 13,27 '' + IL_0041: ldarg.2 + IL_0042: ldind.ref + IL_0043: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + .line 180,180 : 13,68 '' + IL_0048: ldarg.1 + IL_0049: ldloc.0 + IL_004a: ldarg.2 + IL_004b: ldind.ref + IL_004c: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0051: newobj instance void Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::.ctor(int32, + native int) + IL_0056: stobj Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + .line 181,181 : 9,10 '' + IL_005b: ret + } // end of method DatabaseEventInfo::PrepareDbEventInfo + + .method private hidebysig instance void + MarshalEventInfo(native int pDbEventInfo) cil managed + { + // Code size 100 (0x64) + .maxstack 8 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO info, + [1] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer) + .line 189,189 : 13,103 '' + IL_0000: ldarg.1 + IL_0001: ldtoken Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_0010: unbox.any Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + IL_0015: stloc.0 + .line 192,192 : 13,88 '' + IL_0016: ldloca.s info + IL_0018: ldfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::BlobSize + IL_001d: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer(int32) + IL_0022: stloc.1 + .line 196,196 : 17,31 '' + .try + { + IL_0023: ldloc.1 + IL_0024: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + .line 197,197 : 17,125 '' + IL_0029: ldloca.s info + IL_002b: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0030: ldloc.1 + IL_0031: ldarg.0 + IL_0032: ldflda valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'type' + IL_0037: ldarg.0 + IL_0038: ldflda valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'flags' + IL_003d: ldarg.0 + IL_003e: ldflda string Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::data + IL_0043: ldarg.0 + IL_0044: ldflda class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::owningModule + IL_0049: ldarg.0 + IL_004a: ldflda valuetype [mscorlib]System.DateTime Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::timestamp + IL_004f: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventInfo(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&, + native int, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType&, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties&, + string&, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocol&, + valuetype [mscorlib]System.DateTime&) + IL_0054: leave.s IL_0063 + + .line 201,201 : 17,33 '' + } // end .try + finally + { + IL_0056: ldloc.1 + IL_0057: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + .line 202,202 : 17,57 '' + IL_005c: ldloc.1 + IL_005d: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_0062: endfinally + .line 204,204 : 9,10 '' + } // end handler + IL_0063: ret + } // end of method DatabaseEventInfo::MarshalEventInfo + + .method private hidebysig static void GetEventInfo(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo, + native int eventHandle, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer blobBuffer, + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType& 'type', + [out] valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties& 'flags', + [out] string& data, + [out] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol& owningModule, + [out] valuetype [mscorlib]System.DateTime& timestamp) cil managed + { + // Code size 72 (0x48) + .maxstack 3 + .line 219,219 : 13,61 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: pop + .line 224,224 : 17,48 '' + IL_0006: ldarg.1 + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0011: brfalse.s IL_001a + + .line 225,225 : 21,70 '' + IL_0013: ldarg.0 + IL_0014: ldarg.1 + IL_0015: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::PopulateBlobBuffer(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&, + native int) + .line 227,227 : 17,65 '' + IL_001a: ldarg.3 + IL_001b: ldarg.0 + IL_001c: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::EventType + IL_0021: conv.i2 + IL_0022: stind.i2 + .line 228,228 : 17,68 '' + IL_0023: ldarg.s 'flags' + IL_0025: ldarg.0 + IL_0026: ldfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Flags + IL_002b: stind.i4 + .line 229,229 : 17,54 '' + IL_002c: ldarg.s data + IL_002e: ldarg.0 + IL_002f: call string Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventData(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&) + IL_0034: stind.ref + .line 232,232 : 13,60 '' + IL_0035: ldarg.s owningModule + IL_0037: ldarg.0 + IL_0038: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventModule(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&) + IL_003d: stind.ref + .line 233,233 : 13,75 '' + IL_003e: ldarg.0 + IL_003f: ldarg.2 + IL_0040: ldarg.s timestamp + IL_0042: call void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventTimestamp(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO&, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer, + valuetype [mscorlib]System.DateTime&) + .line 234,234 : 9,10 '' + IL_0047: ret + } // end of method DatabaseEventInfo::GetEventInfo + + .method private hidebysig static void PopulateBlobBuffer(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo, + native int eventHandle) cil managed + { + // Code size 62 (0x3e) + .maxstack 4 + .locals init ([0] int32 result, + [1] native int& pinned pDbEventInfo) + .line 246,246 : 20,53 '' + IL_0000: ldarg.0 + IL_0001: stloc.1 + .line 247,247 : 17,123 '' + IL_0002: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0007: ldstr "DB/Event/Get" + IL_000c: ldarga.s eventHandle + IL_000e: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_0013: ldloc.1 + IL_0014: conv.i + IL_0015: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_001a: stloc.0 + IL_001b: ldc.i4.0 + IL_001c: conv.u + IL_001d: stloc.1 + .line 249,249 : 13,29 '' + IL_001e: ldloc.0 + IL_001f: brfalse.s IL_003d + + .line 250,250 : 17,165 '' + IL_0021: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0026: ldstr "DB/Event/Get" + IL_002b: ldloca.s result + IL_002d: call instance string [mscorlib]System.Int32::ToString() + IL_0032: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0037: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_003c: throw + + .line 251,251 : 9,10 '' + IL_003d: ret + } // end of method DatabaseEventInfo::PopulateBlobBuffer + + .method private hidebysig static void GetEventTimestamp(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo, + class Virtuoso.Miranda.Plugins.Native.InteropBuffer blobBuffer, + [out] valuetype [mscorlib]System.DateTime& timestamp) cil managed + { + // Code size 110 (0x6e) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING timeToString) + .line 263,263 : 17,73 '' + .try + { + IL_0000: ldloca.s timeToString + IL_0002: ldstr "s D" + IL_0007: newobj instance void Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::.ctor(string) + IL_000c: stobj Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING + .line 264,264 : 17,57 '' + IL_0011: ldloca.s timeToString + IL_0013: ldarg.1 + IL_0014: callvirt instance int32 Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size() + IL_0019: stfld int32 Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::MaxBytes + .line 265,265 : 17,57 '' + IL_001e: ldloca.s timeToString + IL_0020: ldarg.1 + IL_0021: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_0026: stfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Output + .line 269,269 : 21,137 '' + IL_002b: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0030: ldstr "DB/Time/TimestampToString" + IL_0035: ldarg.0 + IL_0036: ldfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Timestamp + IL_003b: conv.u + IL_003c: ldloca.s timeToString + IL_003e: conv.u + IL_003f: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0044: pop + .line 272,272 : 17,106 '' + IL_0045: ldarg.2 + IL_0046: ldloca.s timeToString + IL_0048: ldfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Output + IL_004d: ldc.i4.0 + IL_004e: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0053: call valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::Parse(string) + IL_0058: stobj [mscorlib]System.DateTime + IL_005d: leave.s IL_006d + + .line 274,274 : 13,36 '' + } // end .try + catch [mscorlib]System.FormatException + { + IL_005f: pop + .line 276,276 : 17,47 '' + IL_0060: ldarg.2 + IL_0061: ldsfld valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::MinValue + IL_0066: stobj [mscorlib]System.DateTime + IL_006b: leave.s IL_006d + + .line 278,278 : 9,10 '' + } // end handler + IL_006d: ret + } // end of method DatabaseEventInfo::GetEventTimestamp + + .method private hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + GetEventModule(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo) cil managed + { + // Code size 69 (0x45) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol owningModule, + [1] bool moduleFound) + .line 288,288 : 13,38 '' + IL_0000: ldc.i4.0 + IL_0001: stloc.1 + .line 290,290 : 13,51 '' + IL_0002: ldarg.0 + IL_0003: ldfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Module + IL_0008: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000d: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0012: brfalse.s IL_0034 + + .line 291,291 : 17,155 '' + IL_0014: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0019: callvirt instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Protocols() + IL_001e: ldarg.0 + IL_001f: ldfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Module + IL_0024: ldc.i4.0 + IL_0025: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_002a: ldloca.s owningModule + IL_002c: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::TryGetValue(!0, + !1&) + IL_0031: stloc.1 + IL_0032: br.s IL_003a + + .line 293,293 : 17,57 '' + IL_0034: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_0039: stloc.0 + .line 295,295 : 13,30 '' + IL_003a: ldloc.1 + IL_003b: brtrue.s IL_0043 + + .line 296,296 : 17,57 '' + IL_003d: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_0042: stloc.0 + .line 298,298 : 13,33 '' + IL_0043: ldloc.0 + IL_0044: ret + } // end of method DatabaseEventInfo::GetEventModule + + .method private hidebysig static string + GetEventData(valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTINFO& dbEventInfo) cil managed + { + // Code size 146 (0x92) + .maxstack 4 + .locals init ([0] string data, + [1] valuetype Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT dbGetText, + [2] native int pText, + [3] native int& pinned pDbEventInfo) + .line 310,310 : 13,61 '' + IL_0000: ldloca.s dbGetText + IL_0002: initobj Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT + .line 311,311 : 13,36 '' + IL_0008: ldloca.s dbGetText + IL_000a: ldc.i4.0 + IL_000b: stfld int32 Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT::Codepage + .line 312,312 : 13,73 '' + IL_0010: ldloca.s dbGetText + IL_0012: ldc.i4 0xfc + IL_0017: stfld int32 Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT::DataType + .line 316,316 : 20,53 '' + IL_001c: ldarg.0 + IL_001d: stloc.3 + .line 318,318 : 17,69 '' + IL_001e: ldloca.s dbGetText + IL_0020: ldloc.3 + IL_0021: conv.i + IL_0022: newobj instance void [mscorlib]System.IntPtr::.ctor(void*) + IL_0027: stfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT::DbEventInfoPtr + .line 319,319 : 17,113 '' + IL_002c: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0031: ldstr "DB/Event/GetText" + IL_0036: ldc.i4.0 + IL_0037: conv.u + IL_0038: ldloca.s dbGetText + IL_003a: conv.u + IL_003b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0040: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0045: stloc.2 + IL_0046: ldc.i4.0 + IL_0047: conv.u + IL_0048: stloc.3 + .line 322,322 : 13,38 '' + IL_0049: ldloc.2 + IL_004a: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_004f: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0054: brfalse.s IL_0076 + + .line 324,324 : 17,74 '' + IL_0056: ldloc.2 + IL_0057: ldc.i4.1 + IL_0058: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_005d: stloc.0 + .line 325,325 : 17,73 '' + IL_005e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0063: callvirt instance valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaMemoryManager() + IL_0068: ldfld class Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE::Free + IL_006d: ldloc.2 + IL_006e: callvirt instance native int Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype::Invoke(native int) + IL_0073: pop + IL_0074: br.s IL_0090 + + .line 328,328 : 17,158 '' + IL_0076: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_007b: ldstr "DB/Event/GetText" + IL_0080: ldstr "null" + IL_0085: call string [mscorlib]System.String::Format(string, + object, + object) + IL_008a: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_008f: throw + + .line 330,330 : 13,25 '' + IL_0090: ldloc.0 + IL_0091: ret + } // end of method DatabaseEventInfo::GetEventData + + .method public hidebysig newslot specialname virtual final + instance native int get_MirandaHandle() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 340,340 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::mirandaHandle + IL_0006: ret + } // end of method DatabaseEventInfo::get_MirandaHandle + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_OwningModule() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 346,346 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::owningModule + IL_0006: ret + } // end of method DatabaseEventInfo::get_OwningModule + + .method public hidebysig specialname instance valuetype [mscorlib]System.DateTime + get_Timestamp() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 352,352 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype [mscorlib]System.DateTime Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::timestamp + IL_0006: ret + } // end of method DatabaseEventInfo::get_Timestamp + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties + get_Flags() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 358,358 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'flags' + IL_0006: ret + } // end of method DatabaseEventInfo::get_Flags + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType + get_Type() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 364,364 : 19,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::'type' + IL_0006: ret + } // end of method DatabaseEventInfo::get_Type + + .method public hidebysig specialname instance string + get_Data() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 370,370 : 19,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::data + IL_0006: ret + } // end of method DatabaseEventInfo::get_Data + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + FromPointer(native int pDbEventInfo) cil managed + { + // Code size 15 (0xf) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo info) + .line 384,384 : 13,62 '' + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::.ctor() + IL_0005: stloc.0 + .line 385,385 : 13,49 '' + IL_0006: ldloc.0 + IL_0007: ldarg.0 + IL_0008: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::MarshalEventInfo(native int) + .line 387,387 : 13,25 '' + IL_000d: ldloc.0 + IL_000e: ret + } // end of method DatabaseEventInfo::FromPointer + + .method public hidebysig instance native int + GetContactHandle() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 396,396 : 13,52 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::mirandaHandle + IL_0006: call native int Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetContactHandle(native int) + IL_000b: ret + } // end of method DatabaseEventInfo::GetContactHandle + + .method public hidebysig static native int + GetContactHandle(native int eventHandle) cil managed + { + // Code size 73 (0x49) + .maxstack 4 + .locals init ([0] int32 contactHandle) + .line 406,406 : 13,44 '' + IL_0000: ldarg.0 + IL_0001: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0006: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000b: brfalse.s IL_0018 + + .line 407,407 : 17,64 '' + IL_000d: ldstr "eventHandle" + IL_0012: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0017: throw + + .line 409,409 : 13,118 '' + IL_0018: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_001d: ldstr "DB/Event/GetContact" + IL_0022: ldarg.0 + IL_0023: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0028: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_002d: stloc.0 + .line 411,411 : 13,37 '' + IL_002e: ldloc.0 + IL_002f: ldc.i4.m1 + IL_0030: bne.un.s IL_0042 + + .line 412,412 : 17,102 '' + IL_0032: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidHandle() + IL_0037: ldstr "eventHandle" + IL_003c: newobj instance void [mscorlib]System.ArgumentException::.ctor(string, + string) + IL_0041: throw + + .line 414,414 : 13,42 '' + IL_0042: ldloc.0 + IL_0043: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0048: ret + } // end of method DatabaseEventInfo::GetContactHandle + + .property instance native int MirandaHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_MirandaHandle() + } // end of property DatabaseEventInfo::MirandaHandle + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + OwningModule() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_OwningModule() + } // end of property DatabaseEventInfo::OwningModule + .property instance valuetype [mscorlib]System.DateTime + Timestamp() + { + .get instance valuetype [mscorlib]System.DateTime Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Timestamp() + } // end of property DatabaseEventInfo::Timestamp + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties + Flags() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Flags() + } // end of property DatabaseEventInfo::Flags + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType + Type() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Type() + } // end of property DatabaseEventInfo::Type + .property instance string Data() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Data() + } // end of property DatabaseEventInfo::Data +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname uint8 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Deleted = uint8(0x00) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Byte = uint8(0x01) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType UInt16 = uint8(0x02) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType UInt32 = uint8(0x04) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType AsciiString = uint8(0xFF) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Blob = uint8(0xFE) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType UTF8String = uint8(0xFD) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType UnicodeString = uint8(0xFC) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Ignore = int32(0x00000032) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Protocol = int32(0x000003E8) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Encryption = int32(0x000007D0) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Filter = int32(0x00000BB8) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Translation = int32(0x00000FA0) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Other = int32(0x00002710) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind Capabilities = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind StatusModes = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind AwayStatusModes = int32(0x00000003) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field public specialname rtspecialname uint32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities None = uint32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities IMSend = uint32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities IMReceive = uint32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities IM = uint32(0x00000003) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities UrlSend = uint32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities UrlReceive = uint32(0x00000008) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Url = uint32(0x0000000C) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities FileSend = uint32(0x00000010) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities FileReceive = uint32(0x00000020) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities File = uint32(0x00000030) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ModeMessageSend = uint32(0x00000040) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ModeMessageReceive = uint32(0x00000080) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ModeMessage = uint32(0x000000C0) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ServerContactList = uint32(0x00000100) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities AuthorizationRequired = uint32(0x00000200) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Added = uint32(0x00000400) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities VisibleList = uint32(0x00000800) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities InvisibleList = uint32(0x00001000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities IndividualStatus = uint32(0x00002000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Extensible = uint32(0x00004000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities P2P = uint32(0x00008000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities NewUser = uint32(0x00010000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Chat = uint32(0x00020000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities IndividualModeMessage = uint32(0x00040000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities BasicSearch = uint32(0x00080000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ExtendedSearch = uint32(0x00100000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities CanRenameFile = uint32(0x00200000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities FileResume = uint32(0x00400000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities AddSearches = uint32(0x00800000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ContactSend = uint32(0x01000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ContactReceive = uint32(0x02000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Contact = uint32(0x03000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ChangeInfo = uint32(0x04000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities SearchByEmail = uint32(0x08000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities UserIDIsEmail = uint32(0x10000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities SearchByName = uint32(0x20000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities ExtendedSearchUI = uint32(0x40000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities NumericUserID = uint32(0x80000000) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Online = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Invisible = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes ShortAway = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes LongAway = int32(0x00000008) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes LightDND = int32(0x00000010) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes HeavyDND = int32(0x00000020) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes FreeForChat = int32(0x00000040) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes OutToLunch = int32(0x00000080) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes OnThePhone = int32(0x00000100) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Idle = int32(0x00000200) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int16 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Message = int16(0x0000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Url = int16(0x0001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Contacts = int16(0x0002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType Added = int16(0x03E8) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType AuthorizationRequest = int16(0x03E9) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType File = int16(0x03EA) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties None = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties First = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Sent = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Read = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Rtl = int32(0x00000008) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties Utf8 = int32(0x00000010) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties KeepCurrent = int32(0xFFFFFFFF) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties None = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Grayed = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Checked = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Hidden = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties OnlineOnly = int32(0x00000008) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties OfflineOnly = int32(0x00000010) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties NotOnListOnly = int32(0x00000020) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties NonNotOnListOnly = int32(0x00000040) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.HotKeys + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Alt = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Ctrl = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Shift = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys WinKey = int32(0x00000008) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.HotKeys + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType Unknown = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType Byte = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType UInt16 = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType UInt32 = int32(0x00000003) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType String = int32(0x00000004) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.CallbackResult + extends [mscorlib]System.Object +{ + .field public static literal int32 Success = int32(0x00000000) + .field public static literal int32 Failure = int32(0xFFFFFFFF) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.CallbackResult + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.EventResult + extends [mscorlib]System.Object +{ + .field public static literal bool HonourEventChain = bool(false) + .field public static literal bool BreakEventChain = bool(true) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.EventResult + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties None = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties Urgent = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties Minor = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + extends [mscorlib]System.Attribute + implements Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 44 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ..D.....T..Allow + 4D 75 6C 74 69 70 6C 65 01 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 01 ) // rited. + .field private static initonly class [mscorlib]System.Type StringResolverType + .field private string text + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties 'flags' + .field private int32 position + .field private int32 popUpPosition + .field private bool useEmbeddedIcon + .field private bool hasIcon + .field private string iconID + .field private string service + .field private string popUpMenu + .field private string owningModule + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys hotKey + .field private class [mscorlib]System.Type stringResolver + .field private string tag + .field private bool isContactMenuItem + .field private native int mirandaHandle + .field private bool isAdditional + .method public hidebysig specialname instance string + get_Text() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 38,38 : 19,31 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MenuItemDeclarationAttribute.cs' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::text + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_Text + + .method public hidebysig specialname instance void + set_Text(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 39,39 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::text + .line 39,39 : 33,34 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_Text + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties + get_Flags() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 45,45 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::'flags' + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_Flags + + .method public hidebysig specialname instance void + set_Flags(valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 46,46 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::'flags' + .line 46,46 : 34,35 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_Flags + + .method public hidebysig specialname instance int32 + get_PopUpPosition() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 52,52 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::popUpPosition + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_PopUpPosition + + .method public hidebysig specialname instance void + set_PopUpPosition(int32 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 53,53 : 19,41 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::popUpPosition + .line 53,53 : 42,43 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_PopUpPosition + + .method public hidebysig specialname instance int32 + get_Position() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 57,57 : 19,35 '' + IL_0000: ldarg.0 + IL_0001: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::position + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_Position + + .method public hidebysig specialname instance void + set_Position(int32 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 58,58 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::position + .line 58,58 : 37,38 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_Position + + .method public hidebysig specialname instance bool + get_UseEmbeddedIcon() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 64,64 : 19,42 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::useEmbeddedIcon + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_UseEmbeddedIcon + + .method public hidebysig specialname instance void + set_UseEmbeddedIcon(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 65,65 : 19,43 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::useEmbeddedIcon + .line 65,65 : 44,45 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_UseEmbeddedIcon + + .method public hidebysig specialname instance bool + get_HasIcon() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 71,71 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::hasIcon + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_HasIcon + + .method public hidebysig specialname instance void + set_HasIcon(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 72,72 : 19,35 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::hasIcon + .line 72,72 : 36,37 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_HasIcon + + .method public hidebysig specialname instance string + get_IconID() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 78,78 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::iconID + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_IconID + + .method public hidebysig specialname instance void + set_IconID(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 79,79 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::iconID + .line 79,79 : 35,36 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_IconID + + .method public hidebysig specialname instance string + get_Service() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 85,85 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::service + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_Service + + .method assembly hidebysig specialname + instance void set_Service(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 86,86 : 28,44 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::service + .line 86,86 : 45,46 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_Service + + .method public hidebysig specialname instance string + get_PopUpMenu() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 92,92 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::popUpMenu + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_PopUpMenu + + .method public hidebysig specialname instance string + get_OwningModule() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 98,98 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::owningModule + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_OwningModule + + .method public hidebysig specialname instance void + set_OwningModule(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 99,99 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::owningModule + .line 99,99 : 41,42 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_OwningModule + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys + get_HotKey() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 105,105 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::hotKey + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_HotKey + + .method public hidebysig specialname instance void + set_HotKey(valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 106,106 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::hotKey + .line 106,106 : 35,36 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_HotKey + + .method public hidebysig specialname instance class [mscorlib]System.Type + get_StringResolver() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 112,112 : 19,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::stringResolver + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_StringResolver + + .method public hidebysig specialname instance string + get_Tag() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 118,118 : 19,30 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::tag + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_Tag + + .method public hidebysig specialname instance void + set_Tag(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 119,119 : 19,31 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::tag + .line 119,119 : 32,33 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_Tag + + .method public hidebysig specialname instance bool + get_IsContactMenuItem() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 125,125 : 19,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::isContactMenuItem + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_IsContactMenuItem + + .method public hidebysig specialname instance void + set_IsContactMenuItem(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 126,126 : 19,45 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::isContactMenuItem + .line 126,126 : 46,47 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_IsContactMenuItem + + .method public hidebysig newslot specialname virtual final + instance native int get_MirandaHandle() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 134,134 : 17,43 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::mirandaHandle + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_MirandaHandle + + .method assembly hidebysig specialname + instance void set_MirandaHandle(native int 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 138,138 : 17,44 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::mirandaHandle + .line 139,139 : 13,14 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_MirandaHandle + + .method public hidebysig specialname instance bool + get_IsAdditional() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 145,145 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::isAdditional + IL_0006: ret + } // end of method MenuItemDeclarationAttribute::get_IsAdditional + + .method public hidebysig specialname instance void + set_IsAdditional(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 146,146 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::isAdditional + .line 146,146 : 41,42 '' + IL_0007: ret + } // end of method MenuItemDeclarationAttribute::set_IsAdditional + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 153,153 : 9,88 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldnull + IL_0004: ldnull + IL_0005: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string, + class [mscorlib]System.Type) + .line 153,153 : 91,92 '' + IL_000a: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + class [mscorlib]System.Type stringResolver) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 155,155 : 9,113 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldarg.2 + IL_0004: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + class [mscorlib]System.Type) + .line 155,155 : 116,117 '' + IL_0009: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + string service) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 157,157 : 9,107 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldarg.2 + IL_0004: ldnull + IL_0005: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string, + class [mscorlib]System.Type) + .line 157,157 : 110,111 '' + IL_000a: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + string popUpMenu, + string service) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 159,159 : 9,130 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldarg.3 + IL_0004: ldnull + IL_0005: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string, + class [mscorlib]System.Type) + .line 159,159 : 133,134 '' + IL_000a: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + string service, + class [mscorlib]System.Type stringResolver) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 161,161 : 9,138 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldarg.2 + IL_0004: ldarg.3 + IL_0005: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor(string, + string, + string, + class [mscorlib]System.Type) + .line 161,161 : 141,142 '' + IL_000a: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + string popUpMenu, + string service, + class [mscorlib]System.Type stringResolver) cil managed + { + // Code size 93 (0x5d) + .maxstack 4 + .line 163,163 : 9,112 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + .line 165,165 : 13,30 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 166,166 : 17,57 '' + IL_0009: ldstr "text" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 168,168 : 13,30 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::text + .line 169,169 : 13,71 '' + IL_001b: ldarg.0 + IL_001c: ldarg.3 + IL_001d: brfalse.s IL_0022 + + IL_001f: ldarg.3 + IL_0020: br.s IL_0027 + + IL_0022: ldsfld string [mscorlib]System.String::Empty + IL_0027: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::service + .line 170,170 : 13,40 '' + IL_002c: ldarg.0 + IL_002d: ldarg.2 + IL_002e: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::popUpMenu + .line 171,171 : 13,50 '' + IL_0033: ldarg.0 + IL_0034: ldarg.s stringResolver + IL_0036: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::stringResolver + .line 176,176 : 13,106 '' + IL_003b: ldarg.s stringResolver + IL_003d: brfalse.s IL_005c + + IL_003f: ldarg.s stringResolver + IL_0041: callvirt instance class [mscorlib]System.Type [mscorlib]System.Type::GetType() + IL_0046: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.LanguagePackStringResolver + IL_004b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0050: beq.s IL_005c + + .line 177,177 : 17,65 '' + IL_0052: ldarg.0 + IL_0053: ldarg.1 + IL_0054: ldarg.2 + IL_0055: ldarg.s stringResolver + IL_0057: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::ResolveStrings(string, + string, + class [mscorlib]System.Type) + .line 178,178 : 9,10 '' + IL_005c: ret + } // end of method MenuItemDeclarationAttribute::.ctor + + .method private hidebysig instance void + ResolveStrings(string text, + string popUpMenu, + class [mscorlib]System.Type stringResolver) cil managed + { + // Code size 164 (0xa4) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver resolver, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache cache, + [2] class [mscorlib]System.Exception e, + [3] class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache CS$2$0000) + .line 184,184 : 17,112 '' + .try + { + IL_0000: ldarg.3 + IL_0001: brfalse IL_0086 + + IL_0006: ldarg.3 + IL_0007: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::StringResolverType + IL_000c: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0011: callvirt instance class [mscorlib]System.Type [mscorlib]System.Type::GetInterface(string) + IL_0016: brfalse.s IL_0086 + + .line 186,186 : 21,53 '' + IL_0018: ldnull + IL_0019: stloc.0 + .line 187,187 : 21,79 '' + IL_001a: call class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::get_Singleton() + IL_001f: stloc.1 + .line 189,189 : 21,33 '' + IL_0020: ldloc.1 + IL_0021: dup + IL_0022: stloc.3 + IL_0023: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 191,191 : 25,78 '' + .try + { + IL_0028: ldloc.1 + IL_0029: ldarg.3 + IL_002a: ldloca.s resolver + IL_002c: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::TryGetValue(!0, + !1&) + IL_0031: brtrue.s IL_0057 + + .line 193,193 : 29,104 '' + IL_0033: ldarg.3 + IL_0034: ldc.i4.1 + IL_0035: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type, + bool) + IL_003a: castclass Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver + IL_003f: stloc.0 + .line 195,195 : 29,50 '' + IL_0040: ldloc.0 + IL_0041: brtrue.s IL_004f + + .line 196,196 : 33,86 '' + IL_0043: ldarg.3 + IL_0044: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0049: newobj instance void [mscorlib]System.TypeLoadException::.ctor(string) + IL_004e: throw + + .line 198,198 : 33,69 '' + IL_004f: ldloc.1 + IL_0050: ldarg.3 + IL_0051: ldloc.0 + IL_0052: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, + !1) + IL_0057: leave.s IL_0060 + + } // end .try + finally + { + IL_0059: ldloc.3 + IL_005a: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_005f: endfinally + .line 202,202 : 21,67 '' + } // end handler + IL_0060: ldarg.0 + IL_0061: ldloc.0 + IL_0062: ldarg.1 + IL_0063: ldarg.0 + IL_0064: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::tag + IL_0069: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver::ResolveString(string, + string) + IL_006e: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::text + .line 203,203 : 21,77 '' + IL_0073: ldarg.0 + IL_0074: ldloc.0 + IL_0075: ldarg.2 + IL_0076: ldarg.0 + IL_0077: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::tag + IL_007c: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver::ResolveString(string, + string) + IL_0081: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::popUpMenu + IL_0086: leave.s IL_00a3 + + .line 206,206 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0088: stloc.2 + .line 208,208 : 17,169 '' + IL_0089: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_CannotLoadStringResolver() + IL_008e: ldarg.3 + IL_008f: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0094: call string [mscorlib]System.String::Format(string, + object) + IL_0099: ldnull + IL_009a: ldnull + IL_009b: ldnull + IL_009c: ldloc.2 + IL_009d: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_00a2: throw + + .line 210,210 : 9,10 '' + } // end handler + IL_00a3: ret + } // end of method MenuItemDeclarationAttribute::ResolveStrings + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 33,33 : 9,83 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::StringResolverType + IL_000f: ret + } // end of method MenuItemDeclarationAttribute::.cctor + + .property instance string Text() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Text() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Text(string) + } // end of property MenuItemDeclarationAttribute::Text + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties + Flags() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Flags() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Flags(valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties) + } // end of property MenuItemDeclarationAttribute::Flags + .property instance int32 PopUpPosition() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_PopUpPosition(int32) + .get instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_PopUpPosition() + } // end of property MenuItemDeclarationAttribute::PopUpPosition + .property instance int32 Position() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Position(int32) + .get instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Position() + } // end of property MenuItemDeclarationAttribute::Position + .property instance bool UseEmbeddedIcon() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_UseEmbeddedIcon() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon(bool) + } // end of property MenuItemDeclarationAttribute::UseEmbeddedIcon + .property instance bool HasIcon() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon(bool) + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_HasIcon() + } // end of property MenuItemDeclarationAttribute::HasIcon + .property instance string IconID() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IconID() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID(string) + } // end of property MenuItemDeclarationAttribute::IconID + .property instance string Service() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Service() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Service(string) + } // end of property MenuItemDeclarationAttribute::Service + .property instance string PopUpMenu() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_PopUpMenu() + } // end of property MenuItemDeclarationAttribute::PopUpMenu + .property instance string OwningModule() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_OwningModule(string) + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_OwningModule() + } // end of property MenuItemDeclarationAttribute::OwningModule + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys + HotKey() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HotKey(valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys) + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_HotKey() + } // end of property MenuItemDeclarationAttribute::HotKey + .property instance class [mscorlib]System.Type + StringResolver() + { + .get instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_StringResolver() + } // end of property MenuItemDeclarationAttribute::StringResolver + .property instance string Tag() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Tag(string) + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Tag() + } // end of property MenuItemDeclarationAttribute::Tag + .property instance bool IsContactMenuItem() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IsContactMenuItem() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem(bool) + } // end of property MenuItemDeclarationAttribute::IsContactMenuItem + .property instance native int MirandaHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_MirandaHandle() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_MirandaHandle(native int) + } // end of property MenuItemDeclarationAttribute::MirandaHandle + .property instance bool IsAdditional() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsAdditional(bool) + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IsAdditional() + } // end of property MenuItemDeclarationAttribute::IsAdditional +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs +{ + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo) cil managed + { + // Code size 34 (0x22) + .maxstack 8 + .line 35,35 : 9,64 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaContactEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs::.ctor() + .line 37,37 : 13,37 '' + IL_0006: ldarg.1 + IL_0007: ldnull + IL_0008: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_000d: brfalse.s IL_001a + + .line 38,38 : 17,64 '' + IL_000f: ldstr "contactInfo" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 40,40 : 13,44 '' + IL_001a: ldarg.0 + IL_001b: ldarg.1 + IL_001c: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::contactInfo + .line 41,41 : 9,10 '' + IL_0021: ret + } // end of method MirandaContactEventArgs::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_ContactInfo() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 49,49 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::contactInfo + IL_0006: ret + } // end of method MirandaContactEventArgs::get_ContactInfo + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + ContactInfo() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::get_ContactInfo() + } // end of property MirandaContactEventArgs::ContactInfo +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs +{ + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo eventInfo + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo eventInfo) cil managed + { + // Code size 29 (0x1d) + .maxstack 8 + .line 29,29 : 9,106 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaDatabaseEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + .line 31,31 : 13,35 '' + IL_0007: ldarg.2 + IL_0008: brtrue.s IL_0015 + + .line 32,32 : 17,62 '' + IL_000a: ldstr "eventInfo" + IL_000f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0014: throw + + .line 34,34 : 13,40 '' + IL_0015: ldarg.0 + IL_0016: ldarg.2 + IL_0017: stfld class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs::eventInfo + .line 35,35 : 9,10 '' + IL_001c: ret + } // end of method MirandaDatabaseEventArgs::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + get_EventInfo() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 44,44 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs::eventInfo + IL_0006: ret + } // end of method MirandaDatabaseEventArgs::get_EventInfo + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + EventInfo() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs::get_EventInfo() + } // end of property MirandaDatabaseEventArgs::EventInfo +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver +{ + .method public hidebysig newslot abstract virtual + instance string ResolveString(string stringToResolve, + string tag) cil managed + { + } // end of method IStringResolver::ResolveString + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.LanguagePackStringResolver + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 26,26 : 9,44 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\LanguagePackStringResolver.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 26,26 : 47,48 '' + IL_0006: ret + } // end of method LanguagePackStringResolver::.ctor + + .method public hidebysig newslot virtual final + instance string ResolveString(string stringToResolve, + string tag) cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 30,30 : 13,66 '' + IL_0000: ldarg.1 + IL_0001: call string Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack::TranslateString(string) + IL_0006: ret + } // end of method LanguagePackStringResolver::ResolveString + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.LanguagePackStringResolver + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs +{ + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode newStatus + .field private class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + get_NewStatus() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 31,31 : 19,36 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ProtocolStatusChangeEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::newStatus + IL_0006: ret + } // end of method ProtocolStatusChangeEventArgs::get_NewStatus + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_Protocol() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 37,37 : 19,35 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::protocol + IL_0006: ret + } // end of method ProtocolStatusChangeEventArgs::get_Protocol + + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode newStatus) cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 44,44 : 9,86 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs::.ctor() + .line 46,46 : 13,40 '' + IL_0006: ldarg.0 + IL_0007: ldarg.2 + IL_0008: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::newStatus + .line 47,47 : 13,38 '' + IL_000d: ldarg.0 + IL_000e: ldarg.1 + IL_000f: stfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::protocol + .line 48,48 : 9,10 '' + IL_0014: ret + } // end of method ProtocolStatusChangeEventArgs::.ctor + + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + NewStatus() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::get_NewStatus() + } // end of property ProtocolStatusChangeEventArgs::NewStatus + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + Protocol() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::get_Protocol() + } // end of property ProtocolStatusChangeEventArgs::Protocol +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatus + extends [mscorlib]System.Object +{ + .field private static literal string MS_AWAYMSG_SHOWAWAYMSG = "SRAway/GetMessage" + .field private static literal string MS_AWAYMSG_GETSTATUSMSG = "SRAway/GetStatusMessage" + .method public hidebysig static bool ShowAwayMessage(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 32 (0x20) + .maxstack 4 + .locals init ([0] int32 result) + .line 41,41 : 13,121 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ProtocolStatus.cs' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "SRAway/GetMessage" + IL_000a: ldarg.0 + IL_000b: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_0010: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0015: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_001a: stloc.0 + .line 44,44 : 13,32 '' + IL_001b: ldloc.0 + IL_001c: ldc.i4.0 + IL_001d: ceq + IL_001f: ret + } // end of method ProtocolStatus::ShowAwayMessage + + .method public hidebysig static string + GetStatusMessage(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode status) cil managed + { + // Code size 151 (0x97) + .maxstack 4 + .locals init ([0] native int statusPtr, + [1] class [mscorlib]System.Exception e, + [2] string CS$1$0000) + .line 49,49 : 13,61 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: ldarg.0 + IL_000b: box Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + IL_0010: call bool [mscorlib]System.Enum::IsDefined(class [mscorlib]System.Type, + object) + IL_0015: brtrue.s IL_0022 + + .line 50,50 : 17,65 '' + IL_0017: ldstr "status" + IL_001c: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0021: throw + + .line 52,52 : 13,44 '' + IL_0022: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0027: stloc.0 + .line 56,56 : 17,134 '' + .try + { + .try + { + IL_0028: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_002d: ldstr "SRAway/GetStatusMessage" + IL_0032: ldarg.0 + IL_0033: conv.i8 + IL_0034: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint64) + IL_0039: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_003e: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0043: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0048: stloc.0 + .line 57,57 : 17,46 '' + IL_0049: ldloc.0 + IL_004a: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_004f: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0054: brfalse.s IL_005a + + .line 57,57 : 47,59 '' + IL_0056: ldnull + IL_0057: stloc.2 + IL_0058: leave.s IL_0095 + + .line 59,59 : 17,107 '' + IL_005a: ldloc.0 + IL_005b: ldc.i4.0 + IL_005c: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0061: stloc.2 + IL_0062: leave.s IL_0095 + + .line 61,61 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0064: stloc.1 + .line 63,63 : 17,160 '' + IL_0065: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_006a: ldstr "SRAway/GetStatusMessage" + IL_006f: ldc.i4.0 + IL_0070: box [mscorlib]System.Int32 + IL_0075: call string [mscorlib]System.String::Format(string, + object, + object) + IL_007a: ldloc.1 + IL_007b: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_0080: throw + + .line 67,67 : 17,46 '' + } // end handler + } // end .try + finally + { + IL_0081: ldloc.0 + IL_0082: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0087: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_008c: brfalse.s IL_0094 + + .line 68,68 : 21,52 '' + IL_008e: ldloc.0 + IL_008f: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + IL_0094: endfinally + .line 70,70 : 9,10 '' + } // end handler + IL_0095: ldloc.2 + IL_0096: ret + } // end of method ProtocolStatus::GetStatusMessage + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatus + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute + extends Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 40 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ..@.....T..Allow + 4D 75 6C 74 69 70 6C 65 01 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 01 ) // rited. + .field private string serviceName + .method public hidebysig specialname instance string + get_ServiceName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 34,34 : 17,41 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ServiceFunctionAttribute.cs' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::serviceName + IL_0006: ret + } // end of method ServiceFunctionAttribute::get_ServiceName + + .method public hidebysig specialname instance void + set_ServiceName(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 38,38 : 17,42 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::serviceName + .line 39,39 : 13,14 '' + IL_0007: ret + } // end of method ServiceFunctionAttribute::set_ServiceName + + .method assembly hidebysig specialname strict virtual + instance string get_HookName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 44,44 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: call instance string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_ServiceName() + IL_0006: ret + } // end of method ServiceFunctionAttribute::get_HookName + + .method assembly hidebysig specialname strict virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + get_HookType() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 49,49 : 19,51 '' + IL_0000: ldc.i4.2 + IL_0001: ret + } // end of method ServiceFunctionAttribute::get_HookType + + .method public hidebysig specialname rtspecialname + instance void .ctor(string serviceName) cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .line 56,56 : 9,60 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::.ctor() + .line 58,58 : 13,37 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 59,59 : 17,64 '' + IL_0009: ldstr "serviceName" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 61,61 : 13,44 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: stfld string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::serviceName + .line 62,62 : 9,10 '' + IL_001b: ret + } // end of method ServiceFunctionAttribute::.ctor + + .property instance string ServiceName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_ServiceName() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::set_ServiceName(string) + } // end of property ServiceFunctionAttribute::ServiceName + .property instance string HookName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_HookName() + } // end of property ServiceFunctionAttribute::HookName + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + HookType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_HookType() + } // end of property ServiceFunctionAttribute::HookType +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Forms.ErrorDialog + extends [System.Windows.Forms]System.Windows.Forms.Form +{ + .field private class Virtuoso.Miranda.Plugins.IExceptionReporter Reporter + .field private class [mscorlib]System.Exception Exception + .field private class [System]System.ComponentModel.IContainer components + .field private class [System.Windows.Forms]System.Windows.Forms.Label MessageLABEL + .field private class [System.Windows.Forms]System.Windows.Forms.TextBox DetailsTBOX + .field private class [System.Windows.Forms]System.Windows.Forms.Label label2 + .field private class [System.Windows.Forms]System.Windows.Forms.Button OkBTN + .field private class [System.Windows.Forms]System.Windows.Forms.Label label3 + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Panel1 + .field private class [System.Windows.Forms]System.Windows.Forms.Button CancelBTN + .field private class [System.Windows.Forms]System.Windows.Forms.Label label1 + .field private class [System.Windows.Forms]System.Windows.Forms.Label label4 + .field private class [System.Windows.Forms]System.Windows.Forms.LinkLabel SendReportLBTN + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 43,43 : 9,30 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\ErrorDialog.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Form::.ctor() + .line 45,45 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::InitializeComponent() + .line 46,46 : 9,10 '' + IL_000c: ret + } // end of method ErrorDialog::.ctor + + .method public hidebysig static valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult + PresentModal(class [mscorlib]System.Exception e) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 50,50 : 13,55 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldnull + IL_0003: ldc.i4.0 + IL_0004: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_0009: ret + } // end of method ErrorDialog::PresentModal + + .method public hidebysig static valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult + PresentModal(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.IExceptionReporter reporter) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 55,55 : 13,59 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldc.i4.0 + IL_0004: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_0009: ret + } // end of method ErrorDialog::PresentModal + + .method public hidebysig static valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult + PresentModal(class [mscorlib]System.Exception e, + string message, + bool canCancel) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 60,60 : 13,62 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_0009: ret + } // end of method ErrorDialog::PresentModal + + .method public hidebysig static valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult + PresentModal(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.IExceptionReporter reporter, + string message, + bool canCancel) cil managed + { + // Code size 31 (0x1f) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Forms.ErrorDialog dlg, + [1] valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult CS$1$0000) + .line 65,65 : 20,55 '' + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::.ctor() + IL_0005: stloc.0 + .line 67,67 : 17,73 '' + .try + { + IL_0006: ldloc.0 + IL_0007: ldarg.0 + IL_0008: ldarg.1 + IL_0009: ldarg.2 + IL_000a: ldarg.3 + IL_000b: callvirt instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::BindAndShow(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_0010: stloc.1 + IL_0011: leave.s IL_001d + + } // end .try + finally + { + IL_0013: ldloc.0 + IL_0014: brfalse.s IL_001c + + IL_0016: ldloc.0 + IL_0017: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_001c: endfinally + .line 69,69 : 9,10 '' + } // end handler + IL_001d: ldloc.1 + IL_001e: ret + } // end of method ErrorDialog::PresentModal + + .method private hidebysig instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult + BindAndShow(class [mscorlib]System.Exception exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter reporter, + string message, + bool canCancel) cil managed + { + // Code size 90 (0x5a) + .maxstack 3 + .line 77,77 : 13,35 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 78,78 : 17,62 '' + IL_0003: ldstr "exception" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 80,80 : 13,40 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: stfld class [mscorlib]System.Exception Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Exception + .line 81,81 : 13,67 '' + IL_0015: ldarg.0 + IL_0016: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::MessageLABEL + IL_001b: ldarg.3 + IL_001c: dup + IL_001d: brtrue.s IL_0026 + + IL_001f: pop + IL_0020: ldarg.1 + IL_0021: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0026: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 83,83 : 13,52 '' + IL_002b: ldarg.0 + IL_002c: ldarg.1 + IL_002d: ldarg.2 + IL_002e: call instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PrepareReportLink(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter) + .line 84,84 : 13,38 '' + IL_0033: ldarg.0 + IL_0034: ldarg.1 + IL_0035: call instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DumpException(class [mscorlib]System.Exception) + .line 86,86 : 13,43 '' + IL_003a: ldarg.0 + IL_003b: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0040: ldarg.s canCancel + IL_0042: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Visible(bool) + .line 87,87 : 13,27 '' + IL_0047: ldarg.0 + IL_0048: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_004d: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.Control::Focus() + IL_0052: pop + .line 89,89 : 13,33 '' + IL_0053: ldarg.0 + IL_0054: call instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.Form::ShowDialog() + IL_0059: ret + } // end of method ErrorDialog::BindAndShow + + .method private hidebysig instance void + PrepareReportLink(class [mscorlib]System.Exception exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter reporter) cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 94,94 : 13,34 '' + IL_0000: ldarg.2 + IL_0001: brtrue.s IL_0010 + + .line 96,96 : 17,48 '' + IL_0003: ldarg.0 + IL_0004: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_0009: ldc.i4.0 + IL_000a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_000f: ret + + .line 100,100 : 17,42 '' + IL_0010: ldarg.0 + IL_0011: ldarg.2 + IL_0012: stfld class Virtuoso.Miranda.Plugins.IExceptionReporter Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Reporter + .line 102,102 : 9,10 '' + IL_0017: ret + } // end of method ErrorDialog::PrepareReportLink + + .method private hidebysig instance void + DumpException(class [mscorlib]System.Exception e) cil managed + { + // Code size 68 (0x44) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Text.StringBuilder dump) + .line 106,106 : 13,54 '' + IL_0000: newobj instance void [mscorlib]System.Text.StringBuilder::.ctor() + IL_0005: stloc.0 + .line 108,108 : 13,47 '' + IL_0006: ldarg.1 + IL_0007: isinst Virtuoso.Miranda.Plugins.IExceptionDumpController + IL_000c: brfalse.s IL_001b + + .line 110,110 : 17,70 '' + IL_000e: ldarg.1 + IL_000f: castclass Virtuoso.Miranda.Plugins.IExceptionDumpController + IL_0014: ldarg.1 + IL_0015: ldloc.0 + IL_0016: callvirt instance void Virtuoso.Miranda.Plugins.IExceptionDumpController::DumpException(class [mscorlib]System.Exception, + class [mscorlib]System.Text.StringBuilder) + .line 113,113 : 13,104 '' + IL_001b: ldloc.0 + IL_001c: ldstr "=== Exception dump ==={0}{1}{0}{0}" + IL_0021: call string [mscorlib]System.Environment::get_NewLine() + IL_0026: ldarg.1 + IL_0027: callvirt instance string [mscorlib]System.Object::ToString() + IL_002c: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::AppendFormat(string, + object, + object) + IL_0031: pop + .line 114,114 : 13,48 '' + IL_0032: ldarg.0 + IL_0033: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_0038: ldloc.0 + IL_0039: callvirt instance string [mscorlib]System.Object::ToString() + IL_003e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 115,115 : 9,10 '' + IL_0043: ret + } // end of method ErrorDialog::DumpException + + .method private hidebysig instance void + PluginErrorDialog_Shown(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 123,123 : 13,38 '' + IL_0000: call class [System]System.Media.SystemSound [System]System.Media.SystemSounds::get_Hand() + IL_0005: callvirt instance void [System]System.Media.SystemSound::Play() + .line 124,124 : 9,10 '' + IL_000a: ret + } // end of method ErrorDialog::PluginErrorDialog_Shown + + .method private hidebysig instance void + SendReportLBTN_LinkClicked(object sender, + class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventArgs e) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 128,128 : 13,49 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.IExceptionReporter Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Reporter + IL_0006: ldarg.0 + IL_0007: ldfld class [mscorlib]System.Exception Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Exception + IL_000c: callvirt instance void Virtuoso.Miranda.Plugins.IExceptionReporter::ReportException(class [mscorlib]System.Exception) + .line 129,129 : 9,10 '' + IL_0011: ret + } // end of method ErrorDialog::SendReportLBTN_LinkClicked + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 16,16 : 13,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\ErrorDialog.Designer.cs' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_0016 + + IL_0003: ldarg.0 + IL_0004: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.ErrorDialog::components + IL_0009: brfalse.s IL_0016 + + .line 18,18 : 17,38 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.ErrorDialog::components + IL_0011: callvirt instance void [mscorlib]System.IDisposable::Dispose() + .line 20,20 : 13,37 '' + IL_0016: ldarg.0 + IL_0017: ldarg.1 + IL_0018: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Dispose(bool) + .line 21,21 : 9,10 '' + IL_001d: ret + } // end of method ErrorDialog::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 1043 (0x413) + .maxstack 6 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources) + .line 31,31 : 13,144 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Forms.ErrorDialog + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_000f: stloc.0 + .line 32,32 : 13,66 '' + IL_0010: ldarg.0 + IL_0011: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0016: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::MessageLABEL + .line 33,33 : 13,67 '' + IL_001b: ldarg.0 + IL_001c: newobj instance void [System.Windows.Forms]System.Windows.Forms.TextBox::.ctor() + IL_0021: stfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + .line 34,34 : 13,60 '' + IL_0026: ldarg.0 + IL_0027: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_002c: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label2 + .line 35,35 : 13,60 '' + IL_0031: ldarg.0 + IL_0032: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0037: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + .line 36,36 : 13,60 '' + IL_003c: ldarg.0 + IL_003d: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0042: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label3 + .line 37,37 : 13,106 '' + IL_0047: ldarg.0 + IL_0048: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor() + IL_004d: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + .line 38,38 : 13,64 '' + IL_0052: ldarg.0 + IL_0053: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0058: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + .line 39,39 : 13,60 '' + IL_005d: ldarg.0 + IL_005e: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0063: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label1 + .line 40,40 : 13,60 '' + IL_0068: ldarg.0 + IL_0069: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_006e: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label4 + .line 41,41 : 13,72 '' + IL_0073: ldarg.0 + IL_0074: newobj instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::.ctor() + IL_0079: stfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + .line 42,42 : 13,41 '' + IL_007e: ldarg.0 + IL_007f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_0084: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 43,43 : 13,34 '' + IL_0089: ldarg.0 + IL_008a: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 47,47 : 13,73 '' + IL_008f: ldloc.0 + IL_0090: ldarg.0 + IL_0091: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::MessageLABEL + IL_0096: ldstr "MessageLABEL" + IL_009b: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 48,48 : 13,53 '' + IL_00a0: ldarg.0 + IL_00a1: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::MessageLABEL + IL_00a6: ldstr "MessageLABEL" + IL_00ab: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 52,52 : 13,77 '' + IL_00b0: ldarg.0 + IL_00b1: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_00b6: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Window() + IL_00bb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 53,53 : 13,71 '' + IL_00c0: ldloc.0 + IL_00c1: ldarg.0 + IL_00c2: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_00c7: ldstr "DetailsTBOX" + IL_00cc: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 54,54 : 13,51 '' + IL_00d1: ldarg.0 + IL_00d2: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_00d7: ldstr "DetailsTBOX" + IL_00dc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 55,55 : 13,46 '' + IL_00e1: ldarg.0 + IL_00e2: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_00e7: ldc.i4.1 + IL_00e8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.TextBoxBase::set_ReadOnly(bool) + .line 59,59 : 13,61 '' + IL_00ed: ldloc.0 + IL_00ee: ldarg.0 + IL_00ef: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label2 + IL_00f4: ldstr "label2" + IL_00f9: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 60,60 : 13,41 '' + IL_00fe: ldarg.0 + IL_00ff: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label2 + IL_0104: ldstr "label2" + IL_0109: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 64,64 : 13,59 '' + IL_010e: ldloc.0 + IL_010f: ldarg.0 + IL_0110: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_0115: ldstr "OkBTN" + IL_011a: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 65,65 : 13,76 '' + IL_011f: ldarg.0 + IL_0120: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_0125: ldc.i4.1 + IL_0126: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Button::set_DialogResult(valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult) + .line 66,66 : 13,39 '' + IL_012b: ldarg.0 + IL_012c: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_0131: ldstr "OkBTN" + IL_0136: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 67,67 : 13,55 '' + IL_013b: ldarg.0 + IL_013c: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_0141: ldc.i4.1 + IL_0142: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + .line 71,71 : 13,61 '' + IL_0147: ldloc.0 + IL_0148: ldarg.0 + IL_0149: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label3 + IL_014e: ldstr "label3" + IL_0153: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 72,72 : 13,70 '' + IL_0158: ldarg.0 + IL_0159: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label3 + IL_015e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0163: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 73,73 : 13,41 '' + IL_0168: ldarg.0 + IL_0169: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label3 + IL_016e: ldstr "label3" + IL_0173: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 77,77 : 13,70 '' + IL_0178: ldarg.0 + IL_0179: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_017e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0183: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 78,78 : 13,75 '' + IL_0188: ldarg.0 + IL_0189: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_018e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_ActiveCaption() + IL_0193: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + .line 79,79 : 13,51 '' + IL_0198: ldarg.0 + IL_0199: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_019e: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_01a3: ldarg.0 + IL_01a4: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label3 + IL_01a9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 80,80 : 13,61 '' + IL_01ae: ldloc.0 + IL_01af: ldarg.0 + IL_01b0: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_01b5: ldstr "Panel1" + IL_01ba: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 81,81 : 13,157 '' + IL_01bf: ldarg.0 + IL_01c0: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_01c5: ldstr "Tahoma" + IL_01ca: ldc.r4 8. + IL_01cf: ldc.i4.1 + IL_01d0: ldc.i4.3 + IL_01d1: ldc.i4 0xee + IL_01d6: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_01db: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + .line 82,82 : 13,95 '' + IL_01e0: ldarg.0 + IL_01e1: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_01e6: ldloc.0 + IL_01e7: ldstr "Panel1.Image" + IL_01ec: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_01f1: castclass [System.Drawing]System.Drawing.Image + IL_01f6: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + .line 83,83 : 13,72 '' + IL_01fb: ldarg.0 + IL_01fc: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_0201: ldc.i4 0x12c + IL_0206: ldc.i4.s 40 + IL_0208: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_020d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 84,84 : 13,41 '' + IL_0212: ldarg.0 + IL_0213: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_0218: ldstr "Panel1" + IL_021d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 88,88 : 13,84 '' + IL_0222: ldarg.0 + IL_0223: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0228: ldc.i4.2 + IL_0229: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Button::set_DialogResult(valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult) + .line 89,89 : 13,67 '' + IL_022e: ldloc.0 + IL_022f: ldarg.0 + IL_0230: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0235: ldstr "CancelBTN" + IL_023a: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 90,90 : 13,47 '' + IL_023f: ldarg.0 + IL_0240: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0245: ldstr "CancelBTN" + IL_024a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 91,91 : 13,59 '' + IL_024f: ldarg.0 + IL_0250: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0255: ldc.i4.1 + IL_0256: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + .line 95,95 : 13,61 '' + IL_025b: ldloc.0 + IL_025c: ldarg.0 + IL_025d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label1 + IL_0262: ldstr "label1" + IL_0267: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 96,96 : 13,41 '' + IL_026c: ldarg.0 + IL_026d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label1 + IL_0272: ldstr "label1" + IL_0277: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 100,100 : 13,61 '' + IL_027c: ldloc.0 + IL_027d: ldarg.0 + IL_027e: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label4 + IL_0283: ldstr "label4" + IL_0288: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 101,101 : 13,41 '' + IL_028d: ldarg.0 + IL_028e: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label4 + IL_0293: ldstr "label4" + IL_0298: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 105,105 : 13,77 '' + IL_029d: ldloc.0 + IL_029e: ldarg.0 + IL_029f: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_02a4: ldstr "SendReportLBTN" + IL_02a9: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 106,106 : 13,57 '' + IL_02ae: ldarg.0 + IL_02af: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_02b4: ldstr "SendReportLBTN" + IL_02b9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 107,107 : 13,48 '' + IL_02be: ldarg.0 + IL_02bf: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_02c4: ldc.i4.1 + IL_02c5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_TabStop(bool) + .line 108,108 : 13,67 '' + IL_02ca: ldarg.0 + IL_02cb: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_02d0: ldc.i4.1 + IL_02d1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::set_UseCompatibleTextRendering(bool) + .line 109,109 : 13,139 '' + IL_02d6: ldarg.0 + IL_02d7: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_02dc: ldarg.0 + IL_02dd: ldftn instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN_LinkClicked(object, + class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventArgs) + IL_02e3: newobj instance void [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventHandler::.ctor(object, + native int) + IL_02e8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::add_LinkClicked(class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventHandler) + .line 113,113 : 13,44 '' + IL_02ed: ldarg.0 + IL_02ee: ldarg.0 + IL_02ef: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_02f4: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_AcceptButton(class [System.Windows.Forms]System.Windows.Forms.IButtonControl) + .line 114,114 : 13,53 '' + IL_02f9: ldloc.0 + IL_02fa: ldarg.0 + IL_02fb: ldstr "$this" + IL_0300: callvirt instance void [System]System.ComponentModel.ComponentResourceManager::ApplyResources(object, + string) + .line 115,115 : 13,74 '' + IL_0305: ldarg.0 + IL_0306: ldc.i4.1 + IL_0307: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + .line 116,116 : 13,65 '' + IL_030c: ldarg.0 + IL_030d: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Window() + IL_0312: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 117,117 : 13,48 '' + IL_0317: ldarg.0 + IL_0318: ldarg.0 + IL_0319: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_031e: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_CancelButton(class [System.Windows.Forms]System.Windows.Forms.IButtonControl) + .line 118,118 : 13,52 '' + IL_0323: ldarg.0 + IL_0324: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0329: ldarg.0 + IL_032a: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN + IL_032f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 119,119 : 13,44 '' + IL_0334: ldarg.0 + IL_0335: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_033a: ldarg.0 + IL_033b: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label4 + IL_0340: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 120,120 : 13,47 '' + IL_0345: ldarg.0 + IL_0346: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_034b: ldarg.0 + IL_034c: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::CancelBTN + IL_0351: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 121,121 : 13,50 '' + IL_0356: ldarg.0 + IL_0357: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_035c: ldarg.0 + IL_035d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::MessageLABEL + IL_0362: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 122,122 : 13,49 '' + IL_0367: ldarg.0 + IL_0368: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_036d: ldarg.0 + IL_036e: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DetailsTBOX + IL_0373: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 123,123 : 13,43 '' + IL_0378: ldarg.0 + IL_0379: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_037e: ldarg.0 + IL_037f: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.ErrorDialog::OkBTN + IL_0384: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 124,124 : 13,44 '' + IL_0389: ldarg.0 + IL_038a: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_038f: ldarg.0 + IL_0390: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label1 + IL_0395: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 125,125 : 13,44 '' + IL_039a: ldarg.0 + IL_039b: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03a0: ldarg.0 + IL_03a1: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_03a6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 126,126 : 13,44 '' + IL_03ab: ldarg.0 + IL_03ac: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03b1: ldarg.0 + IL_03b2: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.ErrorDialog::label2 + IL_03b7: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 127,127 : 13,85 '' + IL_03bc: ldarg.0 + IL_03bd: ldc.i4.3 + IL_03be: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_FormBorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FormBorderStyle) + .line 128,128 : 13,38 '' + IL_03c3: ldarg.0 + IL_03c4: ldc.i4.0 + IL_03c5: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MaximizeBox(bool) + .line 129,129 : 13,38 '' + IL_03ca: ldarg.0 + IL_03cb: ldc.i4.0 + IL_03cc: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MinimizeBox(bool) + .line 130,130 : 13,39 '' + IL_03d1: ldarg.0 + IL_03d2: ldstr "ErrorDialog" + IL_03d7: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 131,131 : 13,81 '' + IL_03dc: ldarg.0 + IL_03dd: ldarg.0 + IL_03de: ldftn instance void Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PluginErrorDialog_Shown(object, + class [mscorlib]System.EventArgs) + IL_03e4: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_03e9: call instance void [System.Windows.Forms]System.Windows.Forms.Form::add_Shown(class [mscorlib]System.EventHandler) + .line 132,132 : 13,45 '' + IL_03ee: ldarg.0 + IL_03ef: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_03f4: ldc.i4.0 + IL_03f5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 133,133 : 13,41 '' + IL_03fa: ldarg.0 + IL_03fb: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Panel1 + IL_0400: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + .line 134,134 : 13,38 '' + IL_0405: ldarg.0 + IL_0406: ldc.i4.0 + IL_0407: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 135,135 : 13,34 '' + IL_040c: ldarg.0 + IL_040d: call instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + .line 137,137 : 9,10 '' + IL_0412: ret + } // end of method ErrorDialog::InitializeComponent + +} // end of class Virtuoso.Miranda.Plugins.Forms.ErrorDialog + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.IExceptionDumpController +{ + .method public hidebysig newslot abstract virtual + instance void DumpException(class [mscorlib]System.Exception e, + class [mscorlib]System.Text.StringBuilder dump) cil managed + { + } // end of method IExceptionDumpController::DumpException + +} // end of class Virtuoso.Miranda.Plugins.IExceptionDumpController + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.FusionException + extends [mscorlib]System.Exception + implements Virtuoso.Miranda.Plugins.IExceptionDumpController +{ + .field private initonly class [mscorlib]System.Reflection.Assembly 'assembly' + .field private initonly class [mscorlib]System.Type pluginType + .field private initonly class Virtuoso.Miranda.Plugins.MirandaPlugin instantiatedPlugin + .field private initonly string fusionLog + .method public hidebysig specialname rtspecialname + instance void .ctor(string message, + class [mscorlib]System.Reflection.Assembly 'assembly', + class [mscorlib]System.Type 'type', + class Virtuoso.Miranda.Plugins.MirandaPlugin plugin, + class [mscorlib]System.Exception inner) cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 42,43 : 9,89 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\FusionException.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Empty() + IL_0007: ldarg.2 + IL_0008: ldarg.3 + IL_0009: ldarg.s plugin + IL_000b: ldarg.s inner + IL_000d: call instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + .line 44,44 : 11,12 '' + IL_0012: ret + } // end of method FusionException::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string message, + string fusionLog, + class [mscorlib]System.Reflection.Assembly 'assembly', + class [mscorlib]System.Type 'type', + class Virtuoso.Miranda.Plugins.MirandaPlugin plugin, + class [mscorlib]System.Exception inner) cil managed + { + // Code size 40 (0x28) + .maxstack 8 + .line 46,46 : 9,157 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.s inner + IL_0004: call instance void [mscorlib]System.Exception::.ctor(string, + class [mscorlib]System.Exception) + .line 48,48 : 13,38 '' + IL_0009: ldarg.0 + IL_000a: ldarg.3 + IL_000b: stfld class [mscorlib]System.Reflection.Assembly Virtuoso.Miranda.Plugins.FusionException::'assembly' + .line 49,49 : 13,36 '' + IL_0010: ldarg.0 + IL_0011: ldarg.s 'type' + IL_0013: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.FusionException::pluginType + .line 50,50 : 13,46 '' + IL_0018: ldarg.0 + IL_0019: ldarg.s plugin + IL_001b: stfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.FusionException::instantiatedPlugin + .line 51,51 : 13,40 '' + IL_0020: ldarg.0 + IL_0021: ldarg.2 + IL_0022: stfld string Virtuoso.Miranda.Plugins.FusionException::fusionLog + .line 52,52 : 9,10 '' + IL_0027: ret + } // end of method FusionException::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 54,54 : 9,106 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext) + .line 54,54 : 108,109 '' + IL_0008: ret + } // end of method FusionException::.ctor + + .method public hidebysig specialname instance class [mscorlib]System.Reflection.Assembly + get_Assembly() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 62,62 : 19,35 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Reflection.Assembly Virtuoso.Miranda.Plugins.FusionException::'assembly' + IL_0006: ret + } // end of method FusionException::get_Assembly + + .method public hidebysig specialname instance class [mscorlib]System.Type + get_PluginType() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 67,67 : 19,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.FusionException::pluginType + IL_0006: ret + } // end of method FusionException::get_PluginType + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.MirandaPlugin + get_InstantiatedPlugin() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 72,72 : 19,45 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.FusionException::instantiatedPlugin + IL_0006: ret + } // end of method FusionException::get_InstantiatedPlugin + + .method public hidebysig specialname instance string + get_FusionLog() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 77,77 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.FusionException::fusionLog + IL_0006: ret + } // end of method FusionException::get_FusionLog + + .method private hidebysig newslot virtual final + instance void Virtuoso.Miranda.Plugins.IExceptionDumpController.DumpException(class [mscorlib]System.Exception e, + class [mscorlib]System.Text.StringBuilder dump) cil managed + { + .override Virtuoso.Miranda.Plugins.IExceptionDumpController::DumpException + // Code size 140 (0x8c) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.FusionException ex) + .line 86,86 : 13,53 '' + IL_0000: ldarg.1 + IL_0001: castclass Virtuoso.Miranda.Plugins.FusionException + IL_0006: stloc.0 + .line 88,88 : 13,99 '' + IL_0007: ldarg.2 + IL_0008: ldstr "=== Description ==={0}{1}{0}{0}" + IL_000d: call string [mscorlib]System.Environment::get_NewLine() + IL_0012: ldloc.0 + IL_0013: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0018: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::AppendFormat(string, + object, + object) + IL_001d: pop + .line 89,89 : 13,163 '' + IL_001e: ldarg.2 + IL_001f: ldstr "=== Assembly ==={0}{1}{0}{0}" + IL_0024: call string [mscorlib]System.Environment::get_NewLine() + IL_0029: ldloc.0 + IL_002a: callvirt instance class [mscorlib]System.Reflection.Assembly Virtuoso.Miranda.Plugins.FusionException::get_Assembly() + IL_002f: brfalse.s IL_003e + + IL_0031: ldloc.0 + IL_0032: callvirt instance class [mscorlib]System.Reflection.Assembly Virtuoso.Miranda.Plugins.FusionException::get_Assembly() + IL_0037: callvirt instance string [mscorlib]System.Object::ToString() + IL_003c: br.s IL_0043 + + IL_003e: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Unknown() + IL_0043: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::AppendFormat(string, + object, + object) + IL_0048: pop + .line 90,90 : 13,161 '' + IL_0049: ldarg.2 + IL_004a: ldstr "=== Type ==={0}{1}{0}{0}" + IL_004f: call string [mscorlib]System.Environment::get_NewLine() + IL_0054: ldloc.0 + IL_0055: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.FusionException::get_PluginType() + IL_005a: brfalse.s IL_0069 + + IL_005c: ldloc.0 + IL_005d: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.FusionException::get_PluginType() + IL_0062: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0067: br.s IL_006e + + IL_0069: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Unknown() + IL_006e: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::AppendFormat(string, + object, + object) + IL_0073: pop + .line 91,91 : 13,100 '' + IL_0074: ldarg.2 + IL_0075: ldstr "=== Fusion log ==={0}{1}{0}{0}" + IL_007a: call string [mscorlib]System.Environment::get_NewLine() + IL_007f: ldloc.0 + IL_0080: callvirt instance string Virtuoso.Miranda.Plugins.FusionException::get_FusionLog() + IL_0085: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::AppendFormat(string, + object, + object) + IL_008a: pop + .line 92,92 : 9,10 '' + IL_008b: ret + } // end of method FusionException::Virtuoso.Miranda.Plugins.IExceptionDumpController.DumpException + + .property instance class [mscorlib]System.Reflection.Assembly + Assembly() + { + .get instance class [mscorlib]System.Reflection.Assembly Virtuoso.Miranda.Plugins.FusionException::get_Assembly() + } // end of property FusionException::Assembly + .property instance class [mscorlib]System.Type + PluginType() + { + .get instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.FusionException::get_PluginType() + } // end of property FusionException::PluginType + .property instance class Virtuoso.Miranda.Plugins.MirandaPlugin + InstantiatedPlugin() + { + .get instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.FusionException::get_InstantiatedPlugin() + } // end of property FusionException::InstantiatedPlugin + .property instance string FusionLog() + { + .get instance string Virtuoso.Miranda.Plugins.FusionException::get_FusionLog() + } // end of property FusionException::FusionLog +} // end of class Virtuoso.Miranda.Plugins.FusionException + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocol + extends Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + implements Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner +{ + .field static assembly literal string PS_GETSTATUS = "/GetStatus" + .field static assembly literal string PS_SETSTATUS = "/SetStatus" + .field static assembly literal string PS_GETCAPS = "/GetCaps" + .field static assembly literal string PS_GETNAME = "/GetName" + .field static assembly literal string PS_LOADICON = "/LoadIcon" + .field static assembly literal string PSS_MESSAGE = "/SendMsg" + .field private static literal string MS_PROTO_ISPROTOONCONTACT = "Proto/IsProtoOnContact" + .field private static initonly class Virtuoso.Miranda.Plugins.Infrastructure.Protocol unknownProtocol + .field private initonly string name + .field private initonly valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType 'type' + .field private static class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 StatusChangedEventHandler + .field private valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle namePtr + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 29 (0x1d) + .maxstack 8 + .line 56,56 : 9,28 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocol.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor() + .line 58,58 : 13,38 '' + IL_0006: ldarg.0 + IL_0007: ldsfld string [mscorlib]System.String::Empty + IL_000c: stfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::name + .line 59,59 : 13,44 '' + IL_0011: ldarg.0 + IL_0012: ldc.i4 0x2710 + IL_0017: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::'type' + .line 60,60 : 9,10 '' + IL_001c: ret + } // end of method Protocol::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(string name, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType 'type') cil managed + { + // Code size 74 (0x4a) + .maxstack 2 + .line 62,62 : 9,58 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor() + .line 64,64 : 13,44 '' + IL_0006: ldarg.1 + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: brfalse.s IL_0019 + + .line 65,65 : 17,57 '' + IL_000e: ldstr "name" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 67,67 : 13,61 '' + IL_0019: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + IL_001e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0023: ldarg.2 + IL_0024: box Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + IL_0029: call bool [mscorlib]System.Enum::IsDefined(class [mscorlib]System.Type, + object) + IL_002e: brtrue.s IL_003b + + .line 68,68 : 17,63 '' + IL_0030: ldstr "type" + IL_0035: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_003a: throw + + .line 70,70 : 13,30 '' + IL_003b: ldarg.0 + IL_003c: ldarg.1 + IL_003d: stfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::name + .line 71,71 : 13,30 '' + IL_0042: ldarg.0 + IL_0043: ldarg.2 + IL_0044: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::'type' + .line 72,72 : 9,10 '' + IL_0049: ret + } // end of method Protocol::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR& descriptor) cil managed + { + // Code size 61 (0x3d) + .maxstack 8 + .line 74,74 : 9,61 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor() + .line 76,76 : 13,48 '' + IL_0006: ldarg.1 + IL_0007: ldfld native int Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Name + IL_000c: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0011: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0016: brfalse.s IL_001e + + .line 77,77 : 17,47 '' + IL_0018: newobj instance void [mscorlib]System.ArgumentException::.ctor() + IL_001d: throw + + .line 79,79 : 13,82 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: ldfld native int Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Name + IL_0025: ldc.i4.0 + IL_0026: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_002b: stfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::name + .line 80,80 : 13,55 '' + IL_0030: ldarg.0 + IL_0031: ldarg.1 + IL_0032: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Type + IL_0037: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::'type' + .line 81,81 : 9,10 '' + IL_003c: ret + } // end of method Protocol::.ctor + + .method family hidebysig virtual instance void + Finalize() cil managed + { + // Code size 34 (0x22) + .maxstack 1 + .line 85,85 : 13,33 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Protocol::namePtr + IL_0006: call instance bool Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid() + IL_000b: brfalse.s IL_0018 + + .line 86,86 : 17,32 '' + IL_000d: ldarg.0 + IL_000e: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Protocol::namePtr + IL_0013: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_0018: leave.s IL_0021 + + .line 87,87 : 9,10 '' + } // end .try + finally + { + IL_001a: ldarg.0 + IL_001b: call instance void [mscorlib]System.Object::Finalize() + IL_0020: endfinally + .line 87,87 : 9,10 '' + } // end handler + IL_0021: ret + } // end of method Protocol::Finalize + + .method public hidebysig specialname static + void add_StatusChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 50 (0x32) + .maxstack 8 + .line 100,100 : 17,35 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 101,101 : 21,62 '' + IL_0003: ldstr "value" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 104,104 : 17,55 '' + IL_000e: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_0013: brtrue.s IL_0026 + + .line 105,105 : 21,68 '' + IL_0015: ldnull + IL_0016: ldftn bool Virtuoso.Miranda.Plugins.Infrastructure.Protocol::AckRouter_AckReceived(object, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs) + IL_001c: newobj instance void class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1::.ctor(object, + native int) + IL_0021: call void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::add_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .line 107,107 : 17,138 '' + IL_0026: ldsflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_002b: ldarg.0 + IL_002c: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + .line 108,108 : 13,14 '' + IL_0031: ret + } // end of method Protocol::add_StatusChanged + + .method public hidebysig specialname static + void remove_StatusChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 36 (0x24) + .maxstack 8 + .line 112,112 : 17,138 '' + IL_0000: ldsflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_0005: ldarg.0 + IL_0006: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + .line 115,115 : 17,55 '' + IL_000b: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_0010: brtrue.s IL_0023 + + .line 116,116 : 21,68 '' + IL_0012: ldnull + IL_0013: ldftn bool Virtuoso.Miranda.Plugins.Infrastructure.Protocol::AckRouter_AckReceived(object, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs) + IL_0019: newobj instance void class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1::.ctor(object, + native int) + IL_001e: call void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::remove_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .line 117,117 : 13,14 '' + IL_0023: ret + } // end of method Protocol::remove_StatusChanged + + .method private hidebysig static bool AckRouter_AckReceived(object sender, + class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs e) cil managed + { + // Code size 58 (0x3a) + .maxstack 8 + .line 122,122 : 13,42 '' + IL_0000: ldarg.1 + IL_0001: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Type() + IL_0006: ldc.i4.s 12 + IL_0008: bne.un.s IL_0038 + + .line 124,124 : 17,55 '' + IL_000a: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_000f: brfalse.s IL_0038 + + .line 125,125 : 21,128 '' + IL_0011: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::StatusChangedEventHandler + IL_0016: ldarg.1 + IL_0017: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Protocol() + IL_001c: ldarg.1 + IL_001d: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Protocol() + IL_0022: ldarg.1 + IL_0023: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_LParam() + IL_0028: call int32 [mscorlib]System.IntPtr::op_Explicit(native int) + IL_002d: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.Protocol, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + IL_0032: callvirt instance bool class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1::Invoke(object, + !0) + IL_0037: pop + .line 128,128 : 13,49 '' + IL_0038: ldc.i4.0 + IL_0039: ret + } // end of method Protocol::AckRouter_AckReceived + + .method private hidebysig instance void + CheckUnknown() cil managed + { + // Code size 25 (0x19) + .maxstack 8 + .line 137,137 : 13,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::name + IL_0006: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000b: brfalse.s IL_0018 + + .line 138,138 : 17,118 '' + IL_000d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CallInvalidForUnknownNetworkProtocol() + IL_0012: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0017: throw + + .line 139,139 : 9,10 '' + IL_0018: ret + } // end of method Protocol::CheckUnknown + + .method public hidebysig instance int32 + CallProtocolService(string serviceName, + native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 40 (0x28) + .maxstack 8 + .line 144,144 : 13,37 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 145,145 : 17,64 '' + IL_0003: ldstr "serviceName" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 147,147 : 13,28 '' + IL_000e: ldarg.0 + IL_000f: call instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::CheckUnknown() + .line 148,148 : 13,105 '' + IL_0014: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0019: ldarg.0 + IL_001a: ldarg.1 + IL_001b: call instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_0020: ldarg.2 + IL_0021: ldarg.3 + IL_0022: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0027: ret + } // end of method Protocol::CallProtocolService + + .method public hidebysig instance string + GetProtoServiceName(string service) cil managed + { + // Code size 32 (0x20) + .maxstack 8 + .line 153,153 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 154,154 : 17,60 '' + IL_0003: ldstr "service" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 156,156 : 13,59 '' + IL_000e: ldstr "{0}{1}" + IL_0013: ldarg.0 + IL_0014: call instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_0019: ldarg.1 + IL_001a: call string [mscorlib]System.String::Format(string, + object, + object) + IL_001f: ret + } // end of method Protocol::GetProtoServiceName + + .method public hidebysig instance bool + HasInChain(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 33 (0x21) + .maxstack 8 + .line 161,161 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0014 + + .line 162,162 : 17,60 '' + IL_0009: ldstr "contact" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 164,164 : 13,54 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_001b: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.Protocol::HasInChain(native int) + IL_0020: ret + } // end of method Protocol::HasInChain + + .method public hidebysig instance bool + HasInChain(native int contactHandle) cil managed + { + // Code size 29 (0x1d) + .maxstack 8 + .line 169,169 : 13,110 '' + IL_0000: ldarg.0 + IL_0001: call instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::get_Context() + IL_0006: ldstr "Proto/IsProtoOnContact" + IL_000b: ldarg.1 + IL_000c: ldarg.0 + IL_000d: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_NamePtr() + IL_0012: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_0017: call bool [mscorlib]System.Convert::ToBoolean(int32) + IL_001c: ret + } // end of method Protocol::HasInChain + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_UnknownProtocol() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 178,178 : 19,51 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::unknownProtocol + IL_0005: ret + } // end of method Protocol::get_UnknownProtocol + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + get_Status() cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 185,185 : 17,97 '' + IL_0000: ldarg.0 + IL_0001: ldstr "/GetStatus" + IL_0006: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_000b: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0010: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::CallProtocolService(string, + native uint, + native int) + IL_0015: ret + } // end of method Protocol::get_Status + + .method public hidebysig specialname instance void + set_Status(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode 'value') cil managed + { + // Code size 25 (0x19) + .maxstack 8 + .line 189,189 : 17,80 '' + IL_0000: ldarg.0 + IL_0001: ldstr "/SetStatus" + IL_0006: ldarg.1 + IL_0007: conv.i8 + IL_0008: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint64) + IL_000d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0012: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocol::CallProtocolService(string, + native uint, + native int) + IL_0017: pop + .line 190,190 : 13,14 '' + IL_0018: ret + } // end of method Protocol::set_Status + + .method public hidebysig newslot specialname virtual final + instance string get_Name() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 195,195 : 19,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::name + IL_0006: ret + } // end of method Protocol::get_Name + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + get_Type() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 200,200 : 19,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::'type' + IL_0006: ret + } // end of method Protocol::get_Type + + .method public hidebysig specialname instance bool + get_IsUnknown() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 207,207 : 17,70 '' + IL_0000: ldarg.0 + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_0006: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_000b: ret + } // end of method Protocol::get_IsUnknown + + .method family hidebysig newslot specialname virtual + instance native int get_NamePtr() cil managed + { + // Code size 43 (0x2b) + .maxstack 8 + .line 216,216 : 17,38 '' + IL_0000: ldarg.0 + IL_0001: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Protocol::namePtr + IL_0006: call instance bool Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid() + IL_000b: brtrue.s IL_001f + + .line 217,217 : 21,77 '' + IL_000d: ldarg.0 + IL_000e: ldarg.0 + IL_000f: call instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_0014: ldc.i4.0 + IL_0015: call valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_001a: stfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Protocol::namePtr + .line 219,219 : 17,39 '' + IL_001f: ldarg.0 + IL_0020: ldflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Protocol::namePtr + IL_0025: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_002a: ret + } // end of method Protocol::get_NamePtr + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 47,47 : 9,75 '' + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor() + IL_0005: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::unknownProtocol + IL_000a: ret + } // end of method Protocol::.cctor + + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 StatusChanged + { + .addon void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::add_StatusChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .removeon void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::remove_StatusChanged(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event Protocol::StatusChanged + .property class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + UnknownProtocol() + { + .get class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + } // end of property Protocol::UnknownProtocol + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + Status() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::set_Status(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Status() + } // end of property Protocol::Status + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + } // end of property Protocol::Name + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + Type() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Type() + } // end of property Protocol::Type + .property instance bool IsUnknown() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_IsUnknown() + } // end of property Protocol::IsUnknown + .property instance native int NamePtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_NamePtr() + } // end of property Protocol::NamePtr +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + +.class private abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaEvents + extends [mscorlib]System.Object +{ + .field public static literal string ME_SYSTEM_SHUTDOWN = "Miranda/System/Shutdown" + .field public static literal string ME_SYSTEM_OKTOEXIT = "Miranda/System/OkToExitEvent" + .field public static literal string ME_DB_EVENT_ADDED = "DB/Event/Added" + .field public static literal string ME_DB_EVENT_DELETED = "DB/Event/Deleted" + .field public static literal string ME_DB_CONTACT_ADDED = "DB/Contact/Added" + .field public static literal string ME_DB_CONTACT_DELETED = "DB/Contact/Deleted" + .field public static literal string ME_DB_CONTACT_SETTINGCHANGED = "DB/Contact/SettingChanged" + .field public static literal string ME_SYSTEM_MODULESLOADED = "Miranda/System/ModulesLoaded" +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEvents + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Offline = int32(0x00009C87) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Online = int32(0x00009C88) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Away = int32(0x00009C89) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode DND = int32(0x00009C8A) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode NA = int32(0x00009C8B) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Occupied = int32(0x00009C8C) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode FreeForChat = int32(0x00009C8D) + .custom instance void Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::.ctor(string) = ( 01 00 0D 46 72 65 65 20 66 6F 72 20 63 68 61 74 // ...Free for chat + 00 00 ) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Invisible = int32(0x00009C8E) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode OnThePhone = int32(0x00009C8F) + .custom instance void Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::.ctor(string) = ( 01 00 0C 4F 6E 20 74 68 65 20 70 68 6F 6E 65 00 // ...On the phone. + 00 ) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode OutToLunch = int32(0x00009C90) + .custom instance void Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::.ctor(string) = ( 01 00 0C 4F 75 74 20 74 6F 20 6C 75 6E 63 68 00 // ...Out to lunch. + 00 ) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Idle = int32(0x00009C91) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + extends [mscorlib]System.Object +{ + .field private static literal string MS_SYSTEM_GETVERSIONTEXT = "Miranda/System/GetVersionText" + .field private static literal string MS_SYSTEM_GET_MMI = "Miranda/System/GetMMI" + .field private static class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext singleton + .field private class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager serviceInterceptors + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase mirandaDatabase + .field private class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary protocols + .field private initonly class Virtuoso.Hyphen.MirandaPluginLink pluginLink + .field private initonly class Virtuoso.Miranda.Plugins.Infrastructure.ContactList contactList + .field private valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE mirandaMemoryManager + .field private class [mscorlib]System.EventHandler ModulesLoaded + .field private class [mscorlib]System.EventHandler IsolatedModePluginsUnloading + .method private hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager, + class Virtuoso.Hyphen.MirandaPluginLink mirandaLink, + bool skipContextInfo) cil managed + { + // Code size 102 (0x66) + .maxstack 2 + .line 66,66 : 9,117 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaContext.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 68,68 : 13,37 '' + IL_0006: ldarg.2 + IL_0007: brtrue.s IL_0014 + + .line 69,69 : 17,64 '' + IL_0009: ldstr "mirandaLink" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 71,71 : 13,48 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: stfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + .line 72,72 : 13,58 '' + IL_001b: ldarg.0 + IL_001c: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::.ctor() + IL_0021: stfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaDatabase + .line 73,73 : 13,43 '' + IL_0026: ldarg.0 + IL_0027: ldarg.2 + IL_0028: stfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginLink + .line 74,74 : 13,50 '' + IL_002d: ldarg.0 + IL_002e: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactList::.ctor() + IL_0033: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::contactList + .line 75,75 : 13,77 '' + IL_0038: ldarg.0 + IL_0039: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::.ctor() + IL_003e: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::serviceInterceptors + .line 77,77 : 13,30 '' + IL_0043: ldarg.0 + IL_0044: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::GetMMInterface() + .line 79,79 : 13,46 '' + IL_0049: ldarg.0 + IL_004a: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateEnvironmentInformation() + .line 81,81 : 13,34 '' + IL_004f: ldarg.3 + IL_0050: brtrue.s IL_0059 + + .line 82,82 : 17,46 '' + IL_0052: ldarg.0 + IL_0053: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateContextInformation() + IL_0058: ret + + .line 84,84 : 17,60 '' + IL_0059: ldarg.0 + IL_005a: ldc.i4.0 + IL_005b: newobj instance void Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::.ctor(int32) + IL_0060: stfld class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::protocols + .line 85,85 : 9,10 '' + IL_0065: ret + } // end of method MirandaContext::.ctor + + .method assembly hidebysig static void + InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink mirandaLink, + bool skipContextPopulation) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 94,94 : 13,73 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldarg.1 + IL_0003: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink, + class Virtuoso.Miranda.Plugins.PluginManagerBase, + bool) + .line 95,95 : 9,10 '' + IL_0008: ret + } // end of method MirandaContext::InitializeCurrent + + .method assembly hidebysig static void + InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink mirandaLink, + class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 99,99 : 13,66 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink, + class Virtuoso.Miranda.Plugins.PluginManagerBase, + bool) + .line 100,100 : 9,10 '' + IL_0008: ret + } // end of method MirandaContext::InitializeCurrent + + .method assembly hidebysig static void + InitializeCurrent(class Virtuoso.Hyphen.MirandaPluginLink mirandaLink, + class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager, + bool skipContextPopulation) cil managed synchronized + { + // Code size 21 (0x15) + .maxstack 8 + .line 105,105 : 13,35 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_0005: brtrue.s IL_0014 + + .line 106,106 : 17,99 '' + IL_0007: ldarg.1 + IL_0008: ldarg.0 + IL_0009: ldarg.2 + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::.ctor(class Virtuoso.Miranda.Plugins.PluginManagerBase, + class Virtuoso.Hyphen.MirandaPluginLink, + bool) + IL_000f: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + .line 107,107 : 9,10 '' + IL_0014: ret + } // end of method MirandaContext::InitializeCurrent + + .method assembly hidebysig static void + InitializeCurrent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) cil managed synchronized + { + // Code size 34 (0x22) + .maxstack 8 + .line 112,112 : 13,33 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 113,113 : 17,60 '' + IL_0003: ldstr "context" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 115,115 : 13,35 '' + IL_000e: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_0013: brtrue.s IL_001c + + .line 116,116 : 17,37 '' + IL_0015: ldarg.0 + IL_0016: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_001b: ret + + .line 118,118 : 17,55 '' + IL_001c: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0021: throw + } // end of method MirandaContext::InitializeCurrent + + .method assembly hidebysig static void + InvalidateCurrent() cil managed synchronized + { + // Code size 24 (0x18) + .maxstack 8 + .line 124,124 : 13,29 '' + IL_0000: call bool Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Initialized() + IL_0005: brfalse.s IL_0017 + + .line 126,126 : 17,49 '' + IL_0007: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_000c: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::DetachPluginManager() + .line 127,127 : 17,34 '' + IL_0011: ldnull + IL_0012: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + .line 129,129 : 9,10 '' + IL_0017: ret + } // end of method MirandaContext::InvalidateCurrent + + .method assembly hidebysig instance void + AssociatePluginManager(class Virtuoso.Miranda.Plugins.PluginManagerBase manager) cil managed synchronized + { + // Code size 22 (0x16) + .maxstack 8 + .line 134,134 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 135,135 : 17,60 '' + IL_0003: ldstr "manager" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 137,137 : 13,37 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: stfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + .line 138,138 : 9,10 '' + IL_0015: ret + } // end of method MirandaContext::AssociatePluginManager + + .method assembly hidebysig instance void + DetachPluginManager() cil managed synchronized + { + // Code size 8 (0x8) + .maxstack 8 + .line 143,143 : 13,34 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: stfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + .line 144,144 : 9,10 '' + IL_0007: ret + } // end of method MirandaContext::DetachPluginManager + + .method private hidebysig instance void + GetMMInterface() cil managed + { + // Code size 128 (0x80) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 mmiHandle) + .line 152,152 : 13,55 '' + IL_0000: ldarg.0 + IL_0001: ldflda valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaMemoryManager + IL_0006: initobj Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + .line 153,153 : 13,78 '' + IL_000c: ldarg.0 + IL_000d: ldflda valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaMemoryManager + IL_0012: ldtoken Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + IL_0017: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_001c: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0021: stfld int32 Virtuoso.Miranda.Plugins.Native.MM_INTERFACE::Size + .line 155,155 : 13,127 '' + IL_0026: ldloca.s mmiHandle + IL_0028: ldarg.0 + IL_0029: ldflda valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaMemoryManager + IL_002e: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + .line 159,159 : 17,109 '' + .try + { + IL_0033: ldarg.0 + IL_0034: ldstr "Miranda/System/GetMMI" + IL_0039: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_003e: ldloca.s mmiHandle + IL_0040: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0045: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_004a: brtrue.s IL_005b + + .line 160,160 : 21,69 '' + IL_004c: ldloca.s mmiHandle + IL_004e: ldarg.0 + IL_004f: ldflda valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaMemoryManager + IL_0054: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalBack(!0&) + IL_0059: br.s IL_0075 + + .line 162,162 : 21,157 '' + IL_005b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0060: ldstr "Miranda/System/GetMMI" + IL_0065: ldstr "1" + IL_006a: call string [mscorlib]System.String::Format(string, + object, + object) + IL_006f: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0074: throw + + IL_0075: leave.s IL_007f + + .line 166,166 : 17,34 '' + } // end .try + finally + { + IL_0077: ldloca.s mmiHandle + IL_0079: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_007e: endfinally + .line 168,168 : 9,10 '' + } // end handler + IL_007f: ret + } // end of method MirandaContext::GetMMInterface + + .method assembly hidebysig instance void + PopulateContextInformation() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 172,172 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateNetworkProtocols() + .line 173,173 : 9,10 '' + IL_0006: ret + } // end of method MirandaContext::PopulateContextInformation + + .method private hidebysig instance void + PopulateNetworkProtocols() cil managed + { + // Code size 141 (0x8d) + .maxstack 4 + .locals init ([0] int32 count, + [1] valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR** pointerArrayPtr, + [2] int32 result, + [3] class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary protocols, + [4] int32 i, + [5] valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR nativeDescriptor, + [6] class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol) + .line 182,182 : 17,114 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldstr "Proto/EnumProtocols" + IL_0006: ldloca.s count + IL_0008: conv.u + IL_0009: ldloca.s pointerArrayPtr + IL_000b: conv.u + IL_000c: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0011: stloc.2 + .line 183,183 : 17,33 '' + IL_0012: ldloc.2 + IL_0013: brfalse.s IL_0031 + + .line 183,183 : 34,205 '' + IL_0015: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_001a: ldstr "Proto/EnumProtocols" + IL_001f: ldloca.s result + IL_0021: call instance string [mscorlib]System.Int32::ToString() + IL_0026: call string [mscorlib]System.String::Format(string, + object, + object) + IL_002b: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0030: throw + + .line 185,185 : 17,78 '' + IL_0031: ldloc.0 + IL_0032: newobj instance void Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::.ctor(int32) + IL_0037: stloc.3 + .line 187,187 : 22,32 '' + IL_0038: ldc.i4.0 + IL_0039: stloc.s i + IL_003b: br.s IL_006f + + .line 190,190 : 21,107 '' + IL_003d: ldloc.1 + IL_003e: ldloc.s i + IL_0040: conv.i + IL_0041: sizeof valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR* + IL_0047: mul + IL_0048: add + IL_0049: ldind.i + IL_004a: ldobj Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + IL_004f: stloc.s nativeDescriptor + .line 191,191 : 21,76 '' + IL_0051: ldloca.s nativeDescriptor + IL_0053: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor(valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR&) + IL_0058: stloc.s protocol + .line 193,193 : 21,60 '' + IL_005a: ldloc.3 + IL_005b: ldloc.s protocol + IL_005d: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_0062: ldloc.s protocol + IL_0064: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, + !1) + .line 187,187 : 44,47 '' + IL_0069: ldloc.s i + IL_006b: ldc.i4.1 + IL_006c: add + IL_006d: stloc.s i + .line 187,187 : 33,42 '' + IL_006f: ldloc.s i + IL_0071: ldloc.0 + IL_0072: blt.s IL_003d + + .line 196,196 : 17,44 '' + IL_0074: ldarg.0 + IL_0075: ldloc.3 + IL_0076: stfld class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::protocols + IL_007b: leave.s IL_008c + + .line 198,198 : 13,30 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_007d: pop + .line 200,200 : 17,60 '' + IL_007e: ldarg.0 + IL_007f: ldc.i4.0 + IL_0080: newobj instance void Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::.ctor(int32) + IL_0085: stfld class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::protocols + IL_008a: leave.s IL_008c + + .line 202,202 : 9,10 '' + } // end handler + IL_008c: ret + } // end of method MirandaContext::PopulateNetworkProtocols + + .method private hidebysig instance void + PopulateEnvironmentInformation() cil managed + { + // Code size 115 (0x73) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Native.InteropBuffer buffer, + [1] int32 result) + .line 206,206 : 13,70 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Native.InteropBuffer Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer() + IL_0005: stloc.0 + .line 210,210 : 17,31 '' + .try + { + IL_0006: ldloc.0 + IL_0007: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock() + .line 212,212 : 17,105 '' + IL_000c: ldarg.0 + IL_000d: ldstr "Miranda/System/GetVersionText" + IL_0012: ldloc.0 + IL_0013: callvirt instance native uint Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsUIntPtr() + IL_0018: ldloc.0 + IL_0019: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_001e: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0023: stloc.1 + .line 215,215 : 17,116 '' + IL_0024: ldloc.1 + IL_0025: brtrue.s IL_0048 + + IL_0027: ldloc.0 + IL_0028: callvirt instance native int Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr() + IL_002d: ldc.i4.0 + IL_002e: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0033: ldstr "Unicode" + IL_0038: callvirt instance int32 [mscorlib]System.String::IndexOf(string) + IL_003d: ldc.i4.m1 + IL_003e: beq.s IL_0048 + + .line 216,216 : 21,87 '' + IL_0040: ldc.i4.1 + IL_0041: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaStringEncoding(valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0046: br.s IL_004e + + .line 218,218 : 21,84 '' + IL_0048: ldc.i4.0 + IL_0049: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaStringEncoding(valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_004e: leave.s IL_005d + + .line 222,222 : 17,33 '' + } // end .try + finally + { + IL_0050: ldloc.0 + IL_0051: callvirt instance void Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock() + .line 223,223 : 17,57 '' + IL_0056: ldloc.0 + IL_0057: call void Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer(class Virtuoso.Miranda.Plugins.Native.InteropBuffer) + IL_005c: endfinally + .line 226,226 : 13,135 '' + } // end handler + IL_005d: ldarg.0 + IL_005e: ldstr "Miranda/System/GetVersion" + IL_0063: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_0068: call class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.Translate::FromMirandaVersion(uint32) + IL_006d: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaVersion(class [mscorlib]System.Version) + .line 227,227 : 9,10 '' + IL_0072: ret + } // end of method MirandaContext::PopulateEnvironmentInformation + + .method assembly hidebysig specialname + instance class Virtuoso.Hyphen.MirandaPluginLink + get_PluginLink() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 237,237 : 17,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginLink + IL_0006: ret + } // end of method MirandaContext::get_PluginLink + + .method assembly hidebysig specialname + instance valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + get_MirandaMemoryManager() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 244,244 : 19,47 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaMemoryManager + IL_0006: ret + } // end of method MirandaContext::get_MirandaMemoryManager + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.PluginManagerBase + get_PluginManager() cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 251,251 : 17,48 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + IL_0006: brtrue.s IL_0013 + + .line 252,252 : 21,108 '' + IL_0008: ldstr "No plugin manager associated with this context." + IL_000d: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0012: throw + + .line 254,254 : 17,43 '' + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + IL_0019: ret + } // end of method MirandaContext::get_PluginManager + + .method public hidebysig specialname instance bool + get_HasPluginManager() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 262,262 : 17,51 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginManager + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: ret + } // end of method MirandaContext::get_HasPluginManager + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + get_Current() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 270,270 : 17,39 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_0005: brtrue.s IL_0012 + + .line 271,271 : 21,112 '' + IL_0007: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaContextNotAvailable() + IL_000c: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0011: throw + + .line 273,273 : 17,34 '' + IL_0012: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_0017: ret + } // end of method MirandaContext::get_Current + + .method public hidebysig specialname static + bool get_Initialized() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 281,281 : 17,42 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::singleton + IL_0005: ldnull + IL_0006: ceq + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: ret + } // end of method MirandaContext::get_Initialized + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager + get_ServiceCallInterceptors() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 289,289 : 17,49 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::serviceInterceptors + IL_0006: ret + } // end of method MirandaContext::get_ServiceCallInterceptors + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase + get_MirandaDatabase() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 297,297 : 17,45 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::mirandaDatabase + IL_0006: ret + } // end of method MirandaContext::get_MirandaDatabase + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary + get_Protocols() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 305,305 : 17,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::protocols + IL_0006: ret + } // end of method MirandaContext::get_Protocols + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList + get_ContactList() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 311,311 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::contactList + IL_0006: ret + } // end of method MirandaContext::get_ContactList + + .method public hidebysig specialname instance void + add_ModulesLoaded(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method MirandaContext::add_ModulesLoaded + + .method public hidebysig specialname instance void + remove_ModulesLoaded(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method MirandaContext::remove_ModulesLoaded + + .method assembly hidebysig instance void + RaiseModulesLoadedEvent() cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 322,322 : 13,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_0006: brfalse.s IL_0019 + + .line 323,323 : 17,54 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::ModulesLoaded + IL_000e: ldarg.0 + IL_000f: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_0014: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + .line 324,324 : 9,10 '' + IL_0019: ret + } // end of method MirandaContext::RaiseModulesLoadedEvent + + .method assembly hidebysig specialname + instance void add_IsolatedModePluginsUnloading(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method MirandaContext::add_IsolatedModePluginsUnloading + + .method assembly hidebysig specialname + instance void remove_IsolatedModePluginsUnloading(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method MirandaContext::remove_IsolatedModePluginsUnloading + + .method assembly hidebysig instance void + RaiseIsolatedModePluginsUnloadingEvent() cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 330,330 : 13,54 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_0006: brfalse.s IL_0019 + + .line 331,331 : 17,69 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::IsolatedModePluginsUnloading + IL_000e: ldnull + IL_000f: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_0014: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + .line 332,332 : 9,10 '' + IL_0019: ret + } // end of method MirandaContext::RaiseIsolatedModePluginsUnloadingEvent + + .method public hidebysig instance int32 + CallService(string serviceName) cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 340,340 : 13,79 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: ldc.i4.0 + IL_000d: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int, + bool) + IL_0012: ret + } // end of method MirandaContext::CallService + + .method public hidebysig instance int32 + CallService(string serviceName, + native int wParam, + native int lParam) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 345,345 : 13,88 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call native uint Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native int) + IL_0008: ldarg.3 + IL_0009: ldc.i4.0 + IL_000a: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int, + bool) + IL_000f: ret + } // end of method MirandaContext::CallService + + .method public hidebysig instance int32 + CallService(string serviceName, + native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 11 (0xb) + .maxstack 8 + .line 351,351 : 13,68 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldarg.3 + IL_0004: ldc.i4.0 + IL_0005: call instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int, + bool) + IL_000a: ret + } // end of method MirandaContext::CallService + + .method assembly hidebysig instance int32 + CallService(string serviceName, + native uint wParam, + native int lParam, + bool noInterception) cil managed + { + // Code size 85 (0x55) + .maxstack 4 + .locals init ([0] int32 returnCode) + .line 356,356 : 13,51 '' + IL_0000: ldarg.1 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 357,357 : 17,60 '' + IL_0008: ldstr "service" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 359,361 : 13,137 '' + IL_0013: ldarg.0 + IL_0014: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::serviceInterceptors + IL_0019: ldarg.1 + IL_001a: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::RequiresInterception(string) + IL_001f: brfalse.s IL_0025 + + IL_0021: ldarg.s noInterception + IL_0023: brfalse.s IL_003f + + IL_0025: ldarg.0 + IL_0026: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginLink + IL_002b: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0030: ldfld class Virtuoso.Hyphen.Native.CallServicePrototype Virtuoso.Hyphen.Native.NativePluginLink::CallService + IL_0035: ldarg.1 + IL_0036: ldarg.2 + IL_0037: ldarg.3 + IL_0038: callvirt instance int32 Virtuoso.Hyphen.Native.CallServicePrototype::Invoke(string, + native uint, + native int) + IL_003d: br.s IL_0052 + + IL_003f: ldarg.0 + IL_0040: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::serviceInterceptors + IL_0045: ldarg.1 + IL_0046: callvirt instance class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::get_Item(string) + IL_004b: ldarg.2 + IL_004c: ldarg.3 + IL_004d: callvirt instance int32 Virtuoso.Miranda.Plugins.Callback::Invoke(native uint, + native int) + IL_0052: stloc.0 + .line 363,363 : 13,31 '' + IL_0053: ldloc.0 + IL_0054: ret + } // end of method MirandaContext::CallService + + .method assembly hidebysig instance int32 + CallServiceUnsafe(string serviceName, + void* wParam, + void* lParam) cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 368,368 : 13,78 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::pluginLink + IL_0006: ldfld class Virtuoso.Hyphen.Native.CallServiceUnsafePrototype Virtuoso.Hyphen.MirandaPluginLink::CallServiceUnsafe + IL_000b: ldarg.1 + IL_000c: ldarg.2 + IL_000d: ldarg.3 + IL_000e: callvirt instance int32 Virtuoso.Hyphen.Native.CallServiceUnsafePrototype::Invoke(string, + void*, + void*) + IL_0013: ret + } // end of method MirandaContext::CallServiceUnsafe + + .event [mscorlib]System.EventHandler ModulesLoaded + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::add_ModulesLoaded(class [mscorlib]System.EventHandler) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::remove_ModulesLoaded(class [mscorlib]System.EventHandler) + } // end of event MirandaContext::ModulesLoaded + .event [mscorlib]System.EventHandler IsolatedModePluginsUnloading + { + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::remove_IsolatedModePluginsUnloading(class [mscorlib]System.EventHandler) + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::add_IsolatedModePluginsUnloading(class [mscorlib]System.EventHandler) + } // end of event MirandaContext::IsolatedModePluginsUnloading + .property instance class Virtuoso.Hyphen.MirandaPluginLink + PluginLink() + { + .get instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + } // end of property MirandaContext::PluginLink + .property instance valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + MirandaMemoryManager() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Native.MM_INTERFACE Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaMemoryManager() + } // end of property MirandaContext::MirandaMemoryManager + .property instance class Virtuoso.Miranda.Plugins.PluginManagerBase + PluginManager() + { + .get instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + } // end of property MirandaContext::PluginManager + .property instance bool HasPluginManager() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_HasPluginManager() + } // end of property MirandaContext::HasPluginManager + .property class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + Current() + { + .get class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + } // end of property MirandaContext::Current + .property bool Initialized() + { + .get bool Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Initialized() + } // end of property MirandaContext::Initialized + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager + ServiceCallInterceptors() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors() + } // end of property MirandaContext::ServiceCallInterceptors + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase + MirandaDatabase() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaDatabase() + } // end of property MirandaContext::MirandaDatabase + .property instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary + Protocols() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Protocols() + } // end of property MirandaContext::Protocols + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList + ContactList() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactList Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList() + } // end of property MirandaContext::ContactList +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + +.class private abstract auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder + extends [mscorlib]System.Object +{ + .field private static initonly class [mscorlib]System.Collections.Generic.Dictionary`2 EventHandlerDescriptorsTable + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 45,45 : 13,86 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\LazyEventBinder.cs' + IL_0000: ldc.i4.3 + IL_0001: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0006: stsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + .line 46,46 : 9,10 '' + IL_000b: ret + } // end of method LazyEventBinder::.cctor + + .method public hidebysig static void AttachDelegate(!!T& destination, + !!T 'value') cil managed + { + // Code size 106 (0x6a) + .maxstack 3 + .line 54,54 : 13,31 '' + IL_0000: ldarg.1 + IL_0001: box !!T + IL_0006: brtrue.s IL_0013 + + .line 55,55 : 17,58 '' + IL_0008: ldstr "value" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 57,57 : 13,59 '' + IL_0013: ldtoken !!T + IL_0018: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_001d: ldtoken [mscorlib]System.Delegate + IL_0022: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0027: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_002c: brtrue.s IL_0039 + + .line 58,58 : 17,50 '' + IL_002e: ldstr "T" + IL_0033: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0038: throw + + .line 60,60 : 13,93 '' + IL_0039: ldarg.0 + IL_003a: ldarg.0 + IL_003b: ldobj !!T + IL_0040: box !!T + IL_0045: isinst [mscorlib]System.Delegate + IL_004a: ldarg.1 + IL_004b: box !!T + IL_0050: isinst [mscorlib]System.Delegate + IL_0055: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_005a: isinst !!T + IL_005f: unbox.any !!T + IL_0064: stobj !!T + .line 61,61 : 9,10 '' + IL_0069: ret + } // end of method LazyEventBinder::AttachDelegate + + .method public hidebysig static void DetachDelegate(!!T& destination, + !!T 'value') cil managed + { + // Code size 87 (0x57) + .maxstack 3 + .line 65,65 : 13,59 '' + IL_0000: ldtoken !!T + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: ldtoken [mscorlib]System.Delegate + IL_000f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0014: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0019: brtrue.s IL_0026 + + .line 66,66 : 17,50 '' + IL_001b: ldstr "T" + IL_0020: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0025: throw + + .line 68,68 : 13,92 '' + IL_0026: ldarg.0 + IL_0027: ldarg.0 + IL_0028: ldobj !!T + IL_002d: box !!T + IL_0032: isinst [mscorlib]System.Delegate + IL_0037: ldarg.1 + IL_0038: box !!T + IL_003d: isinst [mscorlib]System.Delegate + IL_0042: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0047: isinst !!T + IL_004c: unbox.any !!T + IL_0051: stobj !!T + .line 69,69 : 9,10 '' + IL_0056: ret + } // end of method LazyEventBinder::DetachDelegate + + .method public hidebysig static void HookMirandaEvent(string eventName, + class Virtuoso.Miranda.Plugins.Callback callback) cil managed + { + // Code size 67 (0x43) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor, + [1] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000) + .line 73,73 : 13,48 '' + IL_0000: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0005: dup + IL_0006: stloc.1 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 75,75 : 17,73 '' + .try + { + IL_000c: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0011: ldarg.0 + IL_0012: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_0017: brfalse.s IL_001b + + .line 76,76 : 21,28 '' + IL_0019: leave.s IL_0042 + + .line 78,78 : 17,188 '' + IL_001b: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0020: ldarg.0 + IL_0021: call class Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen Virtuoso.Miranda.Plugins.MirandaPlugin/Hyphen::get_Singleton() + IL_0026: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_002b: ldarg.1 + IL_002c: ldc.i4.1 + IL_002d: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IDictionary`2, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0032: stloc.0 + .line 79,79 : 17,52 '' + IL_0033: ldloc.0 + IL_0034: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0039: leave.s IL_0042 + + } // end .try + finally + { + IL_003b: ldloc.1 + IL_003c: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0041: endfinally + .line 81,81 : 9,10 '' + } // end handler + IL_0042: ret + } // end of method LazyEventBinder::HookMirandaEvent + + .method public hidebysig static void UnhookMirandaEvent(string eventName, + class [mscorlib]System.Delegate callback) cil managed + { + // Code size 95 (0x5f) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000) + .line 85,85 : 13,34 '' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_0004 + + .line 86,86 : 17,24 '' + IL_0003: ret + + .line 88,88 : 13,48 '' + IL_0004: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0009: dup + IL_000a: stloc.0 + IL_000b: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 90,90 : 17,74 '' + .try + { + IL_0010: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0015: ldarg.0 + IL_0016: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_001b: brtrue.s IL_001f + + .line 91,91 : 21,28 '' + IL_001d: leave.s IL_005e + + .line 93,93 : 17,148 '' + IL_001f: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0024: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0029: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_002e: ldfld class Virtuoso.Hyphen.Native.UnhookEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::UnhookEvent + IL_0033: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_0038: ldarg.0 + IL_0039: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_003e: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0043: callvirt instance int32 Virtuoso.Hyphen.Native.UnhookEventPrototype::Invoke(native int) + IL_0048: pop + .line 96,96 : 17,64 '' + IL_0049: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::EventHandlerDescriptorsTable + IL_004e: ldarg.0 + IL_004f: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::Remove(!0) + IL_0054: pop + IL_0055: leave.s IL_005e + + } // end .try + finally + { + IL_0057: ldloc.0 + IL_0058: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_005d: endfinally + .line 98,98 : 9,10 '' + } // end handler + IL_005e: ret + } // end of method LazyEventBinder::UnhookMirandaEvent + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection + extends class [mscorlib]System.Collections.Generic.List`1 + implements class Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 +{ + .custom instance void [mscorlib]System.Reflection.DefaultMemberAttribute::.ctor(string) = ( 01 00 04 49 74 65 6D 00 00 ) // ...Item.. + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 29,29 : 9,59 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\MenuItemDeclarationCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.3 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + .line 29,29 : 62,63 '' + IL_0007: ret + } // end of method MenuItemDeclarationCollection::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + get_Item(string tag) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 39,39 : 17,34 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection::Find(string) + IL_0007: ret + } // end of method MenuItemDeclarationCollection::get_Item + + .method public hidebysig newslot virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + Find(string tag) cil managed + { + // Code size 65 (0x41) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute CS$1$0000, + [2] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001) + .line 45,45 : 59,63 '' + IL_0000: ldarg.0 + IL_0001: call instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0006: stloc.2 + .try + { + IL_0007: br.s IL_0024 + + .line 45,45 : 22,55 '' + IL_0009: ldloca.s CS$5$0001 + IL_000b: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0010: stloc.0 + .line 46,46 : 17,68 '' + IL_0011: ldloc.0 + IL_0012: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Tag() + IL_0017: ldarg.1 + IL_0018: ldc.i4.4 + IL_0019: callvirt instance bool [mscorlib]System.String::Equals(string, + valuetype [mscorlib]System.StringComparison) + IL_001e: brfalse.s IL_0024 + + .line 46,46 : 69,81 '' + IL_0020: ldloc.0 + IL_0021: stloc.1 + IL_0022: leave.s IL_003f + + .line 45,45 : 56,58 '' + IL_0024: ldloca.s CS$5$0001 + IL_0026: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_002b: brtrue.s IL_0009 + + IL_002d: leave.s IL_003d + + } // end .try + finally + { + IL_002f: ldloca.s CS$5$0001 + IL_0031: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0037: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_003c: endfinally + .line 48,48 : 13,25 '' + } // end handler + IL_003d: ldnull + IL_003e: ret + + .line 49,49 : 9,10 '' + IL_003f: ldloc.1 + IL_0040: ret + } // end of method MenuItemDeclarationCollection::Find + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + Item(string) + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection::get_Item(string) + } // end of property MenuItemDeclarationCollection::Item +} // end of class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection + extends class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 + implements class Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 +{ + .custom instance void [mscorlib]System.Reflection.DefaultMemberAttribute::.ctor(string) = ( 01 00 04 49 74 65 6D 00 00 ) // ...Item.. + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection list) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 30,30 : 9,104 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\MenuItemDeclarationReadOnlyCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::.ctor(class [mscorlib]System.Collections.Generic.IList`1) + .line 30,30 : 107,108 '' + IL_0007: ret + } // end of method MenuItemDeclarationReadOnlyCollection::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + get_Item(string tag) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 40,40 : 17,34 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection::Find(string) + IL_0007: ret + } // end of method MenuItemDeclarationReadOnlyCollection::get_Item + + .method public hidebysig newslot virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + Find(string tag) cil managed + { + // Code size 78 (0x4e) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute CS$1$0000, + [2] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0001) + .line 46,46 : 13,43 '' + IL_0000: ldarg.1 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 47,47 : 17,56 '' + IL_0008: ldstr "tag" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 49,49 : 59,63 '' + IL_0013: ldarg.0 + IL_0014: call instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_0019: stloc.2 + .try + { + IL_001a: br.s IL_0036 + + .line 49,49 : 22,55 '' + IL_001c: ldloc.2 + IL_001d: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0022: stloc.0 + .line 50,50 : 17,68 '' + IL_0023: ldarg.1 + IL_0024: ldloc.0 + IL_0025: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Tag() + IL_002a: ldc.i4.4 + IL_002b: callvirt instance bool [mscorlib]System.String::Equals(string, + valuetype [mscorlib]System.StringComparison) + IL_0030: brfalse.s IL_0036 + + .line 51,51 : 21,33 '' + IL_0032: ldloc.0 + IL_0033: stloc.1 + IL_0034: leave.s IL_004c + + .line 49,49 : 56,58 '' + IL_0036: ldloc.2 + IL_0037: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_003c: brtrue.s IL_001c + + IL_003e: leave.s IL_004a + + } // end .try + finally + { + IL_0040: ldloc.2 + IL_0041: brfalse.s IL_0049 + + IL_0043: ldloc.2 + IL_0044: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0049: endfinally + .line 53,53 : 13,25 '' + } // end handler + IL_004a: ldnull + IL_004b: ret + + .line 54,54 : 9,10 '' + IL_004c: ldloc.1 + IL_004d: ret + } // end of method MenuItemDeclarationReadOnlyCollection::Find + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + Item(string) + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection::get_Item(string) + } // end of property MenuItemDeclarationReadOnlyCollection::Item +} // end of class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private int32 size + .field private int32 isTreeFocused + .field private int32 isGroup + .field private native int itemPtr + .field private valuetype [System.Drawing]System.Drawing.Point point + .field private valuetype [System.Drawing]System.Drawing.Rectangle rectangle + .method public hidebysig specialname instance bool + get_IsTreeFocused() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 43,43 : 19,59 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContactListInfoTip.cs' + IL_0000: ldarg.0 + IL_0001: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::isTreeFocused + IL_0006: call bool [mscorlib]System.Convert::ToBoolean(int32) + IL_000b: ret + } // end of method ContactListInfoTip::get_IsTreeFocused + + .method public hidebysig specialname instance bool + get_IsGroup() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 48,48 : 19,53 '' + IL_0000: ldarg.0 + IL_0001: ldfld int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::isGroup + IL_0006: call bool [mscorlib]System.Convert::ToBoolean(int32) + IL_000b: ret + } // end of method ContactListInfoTip::get_IsGroup + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + get_Item() cil managed + { + // Code size 32 (0x20) + .maxstack 8 + .line 55,55 : 17,117 '' + IL_0000: ldarg.0 + IL_0001: call instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_IsGroup() + IL_0006: brtrue.s IL_0014 + + IL_0008: ldarg.0 + IL_0009: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::itemPtr + IL_000e: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_0013: ret + + IL_0014: ldarg.0 + IL_0015: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::itemPtr + IL_001a: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo::.ctor(native int) + IL_001f: ret + } // end of method ContactListInfoTip::get_Item + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Point + get_Point() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 61,61 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype [System.Drawing]System.Drawing.Point Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::point + IL_0006: ret + } // end of method ContactListInfoTip::get_Point + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Rectangle + get_Rectangle() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 66,66 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype [System.Drawing]System.Drawing.Rectangle Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::rectangle + IL_0006: ret + } // end of method ContactListInfoTip::get_Rectangle + + .property instance bool IsTreeFocused() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_IsTreeFocused() + } // end of property ContactListInfoTip::IsTreeFocused + .property instance bool IsGroup() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_IsGroup() + } // end of property ContactListInfoTip::IsGroup + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + Item() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_Item() + } // end of property ContactListInfoTip::Item + .property instance valuetype [System.Drawing]System.Drawing.Point + Point() + { + .get instance valuetype [System.Drawing]System.Drawing.Point Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_Point() + } // end of property ContactListInfoTip::Point + .property instance valuetype [System.Drawing]System.Drawing.Rectangle + Rectangle() + { + .get instance valuetype [System.Drawing]System.Drawing.Rectangle Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_Rectangle() + } // end of property ContactListInfoTip::Rectangle +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.CONTACTINFO + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field public uint8 Flag + .field public native int ContactHandle + .field public native int Module + .field public uint8 Type + .field public native int Value + .method public hidebysig specialname rtspecialname + instance void .ctor(native int contactHandle, + native int module) cil managed + { + // Code size 61 (0x3d) + .maxstack 8 + .line 46,46 : 13,48 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\CONTACTINFO.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::ContactHandle + .line 47,47 : 13,27 '' + IL_0007: ldarg.0 + IL_0008: ldc.i4.0 + IL_0009: stfld uint8 Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Flag + .line 48,48 : 13,34 '' + IL_000e: ldarg.0 + IL_000f: ldarg.2 + IL_0010: stfld native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Module + .line 49,49 : 13,27 '' + IL_0015: ldarg.0 + IL_0016: ldc.i4.0 + IL_0017: stfld uint8 Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Type + .line 50,50 : 13,38 '' + IL_001c: ldarg.0 + IL_001d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0022: stfld native int Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Value + .line 51,51 : 13,61 '' + IL_0027: ldarg.0 + IL_0028: ldtoken Virtuoso.Miranda.Plugins.Native.CONTACTINFO + IL_002d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0032: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0037: stfld int32 Virtuoso.Miranda.Plugins.Native.CONTACTINFO::Size + .line 52,52 : 9,10 '' + IL_003c: ret + } // end of method CONTACTINFO::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Native.CONTACTINFO + +.class public sequential ansi serializable sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field private initonly int32 Size + .field public native int Module + .field public uint32 Timestamp + .field public uint32 Flags + .field public uint16 EventType + .field public uint32 BlobSize + .field public notserialized native int BlobPtr + .method public hidebysig specialname rtspecialname + instance void .ctor(int32 blobSize, + native int blobPtr) cil managed + { + // Code size 63 (0x3f) + .maxstack 5 + .locals init ([0] uint16 CS$0$0000, + [1] uint32 CS$0$0001) + .line 47,47 : 13,39 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\DBEVENTINFO.cs' + IL_0000: ldarg.0 + IL_0001: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0006: stfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Module + .line 48,48 : 13,62 '' + IL_000b: ldarg.0 + IL_000c: ldarg.0 + IL_000d: ldarg.0 + IL_000e: ldc.i4.0 + IL_000f: dup + IL_0010: stloc.0 + IL_0011: stfld uint16 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::EventType + IL_0016: ldloc.0 + IL_0017: dup + IL_0018: stloc.1 + IL_0019: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Flags + IL_001e: ldloc.1 + IL_001f: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Timestamp + .line 49,49 : 13,44 '' + IL_0024: ldarg.0 + IL_0025: ldarg.1 + IL_0026: stfld uint32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::BlobSize + .line 50,50 : 13,36 '' + IL_002b: ldarg.0 + IL_002c: ldarg.2 + IL_002d: stfld native int Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::BlobPtr + .line 54,54 : 17,49 '' + IL_0032: ldarg.0 + IL_0033: sizeof Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + IL_0039: stfld int32 Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::Size + .line 56,56 : 9,10 '' + IL_003e: ret + } // end of method DBEVENTINFO::.ctor + + .method public hidebysig static int32 LayoutAnsiUniString(string data, + [out] native int& pBlob) cil managed + { + // Code size 174 (0xae) + .maxstack 4 + .locals init ([0] int32 ansiBytesCount, + [1] int32 unicodeBytesCount, + [2] int32 terminatorBytesCount, + [3] int32 totalBytes, + [4] native int pAnsiEnd, + [5] native int pAnsiTermEnd, + [6] char[] CS$0$0000, + [7] char[] CS$0$0001) + .line 71,71 : 13,70 '' + IL_0000: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Default() + IL_0005: ldarg.0 + IL_0006: callvirt instance int32 [mscorlib]System.Text.Encoding::GetByteCount(string) + IL_000b: stloc.0 + .line 72,72 : 13,73 '' + IL_000c: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Unicode() + IL_0011: ldarg.0 + IL_0012: callvirt instance int32 [mscorlib]System.Text.Encoding::GetByteCount(string) + IL_0017: stloc.1 + .line 73,73 : 13,42 '' + IL_0018: ldc.i4.3 + IL_0019: stloc.2 + .line 75,75 : 13,88 '' + IL_001a: ldloc.0 + IL_001b: ldloc.1 + IL_001c: add + IL_001d: ldloc.2 + IL_001e: add + IL_001f: stloc.3 + .line 77,77 : 13,54 '' + IL_0020: ldarg.1 + IL_0021: ldloc.3 + IL_0022: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_0027: stobj [mscorlib]System.IntPtr + .line 78,78 : 13,82 '' + IL_002c: ldloca.s pAnsiEnd + IL_002e: ldarg.1 + IL_002f: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0034: ldloc.0 + IL_0035: conv.i8 + IL_0036: add + IL_0037: call instance void [mscorlib]System.IntPtr::.ctor(int64) + .line 79,79 : 13,71 '' + IL_003c: ldloca.s pAnsiTermEnd + IL_003e: ldloca.s pAnsiEnd + IL_0040: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0045: ldc.i4.1 + IL_0046: conv.i8 + IL_0047: add + IL_0048: call instance void [mscorlib]System.IntPtr::.ctor(int64) + .line 81,81 : 13,85 '' + IL_004d: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Default() + IL_0052: ldarg.0 + IL_0053: callvirt instance uint8[] [mscorlib]System.Text.Encoding::GetBytes(string) + IL_0058: ldc.i4.0 + IL_0059: ldarg.1 + IL_005a: ldobj [mscorlib]System.IntPtr + IL_005f: ldloc.0 + IL_0060: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + .line 82,82 : 13,63 '' + IL_0065: ldc.i4.1 + IL_0066: newarr [mscorlib]System.Char + IL_006b: stloc.s CS$0$0000 + IL_006d: ldloc.s CS$0$0000 + IL_006f: ldc.i4.0 + IL_0070: ldloc.s pAnsiEnd + IL_0072: ldc.i4.1 + IL_0073: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(char[], + int32, + native int, + int32) + .line 84,84 : 13,95 '' + IL_0078: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Unicode() + IL_007d: ldarg.0 + IL_007e: callvirt instance uint8[] [mscorlib]System.Text.Encoding::GetBytes(string) + IL_0083: ldc.i4.0 + IL_0084: ldloc.s pAnsiTermEnd + IL_0086: ldloc.1 + IL_0087: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + .line 85,85 : 13,121 '' + IL_008c: ldc.i4.2 + IL_008d: newarr [mscorlib]System.Char + IL_0092: stloc.s CS$0$0001 + IL_0094: ldloc.s CS$0$0001 + IL_0096: ldc.i4.0 + IL_0097: ldloca.s pAnsiTermEnd + IL_0099: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_009e: ldloc.1 + IL_009f: conv.i8 + IL_00a0: add + IL_00a1: newobj instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_00a6: ldc.i4.2 + IL_00a7: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(char[], + int32, + native int, + int32) + .line 87,87 : 13,31 '' + IL_00ac: ldloc.3 + IL_00ad: ret + } // end of method DBEVENTINFO::LayoutAnsiUniString + +} // end of class Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING + extends [mscorlib]System.ValueType +{ + .field public native int Format + .field public native int Output + .field public int32 MaxBytes + .method public hidebysig specialname rtspecialname + instance void .ctor(string format) cil managed + { + // Code size 40 (0x28) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle CS$0$0000) + .line 108,108 : 13,84 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0008: stloc.0 + IL_0009: ldloca.s CS$0$0000 + IL_000b: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0010: stfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Format + .line 109,109 : 13,34 '' + IL_0015: ldarg.0 + IL_0016: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_001b: stfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Output + .line 110,110 : 13,26 '' + IL_0020: ldarg.0 + IL_0021: ldc.i4.0 + IL_0022: stfld int32 Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::MaxBytes + .line 111,111 : 9,10 '' + IL_0027: ret + } // end of method DBTIMETOSTRING::.ctor + + .method public hidebysig instance void + Free() cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 115,115 : 13,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Format + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0010: brfalse.s IL_001d + + .line 116,116 : 17,45 '' + IL_0012: ldarg.0 + IL_0013: ldfld native int Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Format + IL_0018: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + .line 117,117 : 9,10 '' + IL_001d: ret + } // end of method DBTIMETOSTRING::Free + +} // end of class Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field public initonly native int Name + .field public initonly valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Type + .method public hidebysig specialname rtspecialname + instance void .ctor(string name, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType 'type') cil managed + { + // Code size 47 (0x2f) + .maxstack 8 + .line 42,42 : 13,71 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\PROTOCOLDESCRIPTOR.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: call valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0008: call native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle) + IL_000d: stfld native int Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Name + .line 43,43 : 13,30 '' + IL_0012: ldarg.0 + IL_0013: ldarg.2 + IL_0014: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Type + .line 45,45 : 13,68 '' + IL_0019: ldarg.0 + IL_001a: ldtoken Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + IL_001f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0024: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0029: stfld int32 Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Size + .line 46,46 : 9,10 '' + IL_002e: ret + } // end of method PROTOCOLDESCRIPTOR::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Native.StringEncoding + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Ansi = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Unicode = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding MirandaDefault = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.Native.StringEncoding + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle + extends [mscorlib]System.ValueType + implements Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle, + [mscorlib]System.IDisposable +{ + .field private native int intPtr + .field public static initonly valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Empty + .field private string originalString + .field private valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding encoding + .method public hidebysig specialname rtspecialname + instance void .ctor(string str, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding encoding) cil managed + { + // Code size 83 (0x53) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding CS$0$0000) + .line 51,51 : 13,30 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\UnmanagedStringHandle.cs' + IL_0000: ldarg.2 + IL_0001: stloc.0 + IL_0002: ldloc.0 + IL_0003: switch ( + IL_0020, + IL_0012) + IL_0010: br.s IL_002e + + .line 54,54 : 21,67 '' + IL_0012: ldarg.0 + IL_0013: ldarg.1 + IL_0014: call native int [mscorlib]System.Runtime.InteropServices.Marshal::StringToHGlobalUni(string) + IL_0019: stfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + .line 55,55 : 21,27 '' + IL_001e: br.s IL_0044 + + .line 57,57 : 21,68 '' + IL_0020: ldarg.0 + IL_0021: ldarg.1 + IL_0022: call native int [mscorlib]System.Runtime.InteropServices.Marshal::StringToHGlobalAnsi(string) + IL_0027: stfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + .line 58,58 : 21,27 '' + IL_002c: br.s IL_0044 + + .line 60,60 : 21,73 '' + IL_002e: call valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaStringEncoding() + IL_0033: starg.s encoding + .line 62,62 : 21,67 '' + IL_0035: ldarg.2 + IL_0036: ldc.i4.2 + IL_0037: bne.un.s IL_0000 + + .line 63,63 : 25,122 '' + IL_0039: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding() + IL_003e: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0043: throw + + .line 68,68 : 13,39 '' + IL_0044: ldarg.0 + IL_0045: ldarg.1 + IL_0046: stfld string Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::originalString + .line 69,69 : 13,38 '' + IL_004b: ldarg.0 + IL_004c: ldarg.2 + IL_004d: stfld valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::encoding + .line 70,70 : 9,10 '' + IL_0052: ret + } // end of method UnmanagedStringHandle::.ctor + + .method public hidebysig specialname instance string + get_OriginalString() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 78,78 : 19,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::originalString + IL_0006: ret + } // end of method UnmanagedStringHandle::get_OriginalString + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding + get_Encoding() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 85,85 : 17,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::encoding + IL_0006: ret + } // end of method UnmanagedStringHandle::get_Encoding + + .method public hidebysig newslot specialname virtual final + instance native int get_IntPtr() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 91,91 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + IL_0006: ret + } // end of method UnmanagedStringHandle::get_IntPtr + + .method public hidebysig specialname static + native int op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle operand) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 96,96 : 13,35 '' + IL_0000: ldarga.s operand + IL_0002: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0007: ret + } // end of method UnmanagedStringHandle::op_Implicit + + .method public hidebysig specialname static + native uint op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle operand) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 13 (0xd) + .maxstack 8 + .line 102,102 : 13,55 '' + IL_0000: ldarga.s operand + IL_0002: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0007: call native uint Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native int) + IL_000c: ret + } // end of method UnmanagedStringHandle::op_Implicit + + .method public hidebysig specialname instance int32 + get_Size() cil managed + { + // Code size 69 (0x45) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding CS$0$0000) + .line 109,109 : 17,30 '' + IL_0000: ldarg.0 + IL_0001: call instance bool Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid() + IL_0006: brtrue.s IL_000a + + .line 110,110 : 21,30 '' + IL_0008: ldc.i4.0 + IL_0009: ret + + .line 112,112 : 17,34 '' + IL_000a: ldarg.0 + IL_000b: ldfld valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::encoding + IL_0010: stloc.0 + IL_0011: ldloc.0 + IL_0012: switch ( + IL_0021, + IL_0032) + IL_001f: br.s IL_0043 + + .line 115,115 : 25,90 '' + IL_0021: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Default() + IL_0026: ldarg.0 + IL_0027: ldfld string Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::originalString + IL_002c: callvirt instance int32 [mscorlib]System.Text.Encoding::GetByteCount(string) + IL_0031: ret + + .line 117,117 : 25,90 '' + IL_0032: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Unicode() + IL_0037: ldarg.0 + IL_0038: ldfld string Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::originalString + IL_003d: callvirt instance int32 [mscorlib]System.Text.Encoding::GetByteCount(string) + IL_0042: ret + + .line 119,119 : 25,35 '' + IL_0043: ldc.i4.m1 + IL_0044: ret + } // end of method UnmanagedStringHandle::get_Size + + .method public hidebysig specialname instance bool + get_IsValid() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 128,128 : 17,48 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0010: ret + } // end of method UnmanagedStringHandle::get_IsValid + + .method public hidebysig newslot virtual final + instance void Free() cil managed + { + // Code size 31 (0x1f) + .maxstack 8 + .line 138,138 : 13,25 '' + IL_0000: ldarg.0 + IL_0001: call instance bool Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid() + IL_0006: brfalse.s IL_001e + + .line 140,140 : 17,45 '' + IL_0008: ldarg.0 + IL_0009: ldfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + IL_000e: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + .line 141,141 : 17,38 '' + IL_0013: ldarg.0 + IL_0014: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0019: stfld native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::intPtr + .line 143,143 : 9,10 '' + IL_001e: ret + } // end of method UnmanagedStringHandle::Free + + .method private hidebysig newslot virtual final + instance void System.IDisposable.Dispose() cil managed + { + .override [mscorlib]System.IDisposable::Dispose + // Code size 7 (0x7) + .maxstack 8 + .line 147,147 : 13,20 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + .line 148,148 : 9,10 '' + IL_0006: ret + } // end of method UnmanagedStringHandle::System.IDisposable.Dispose + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 39,39 : 9,90 '' + IL_0000: ldsflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_0005: initobj Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle + IL_000b: ret + } // end of method UnmanagedStringHandle::.cctor + + .property instance string OriginalString() + { + .get instance string Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_OriginalString() + } // end of property UnmanagedStringHandle::OriginalString + .property instance valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding + Encoding() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_Encoding() + } // end of property UnmanagedStringHandle::Encoding + .property instance native int IntPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + } // end of property UnmanagedStringHandle::IntPtr + .property instance int32 Size() + { + .get instance int32 Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_Size() + } // end of property UnmanagedStringHandle::Size + .property instance bool IsValid() + { + .get instance bool Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid() + } // end of property UnmanagedStringHandle::IsValid +} // end of class Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary + extends class [mscorlib]System.Collections.Generic.Dictionary`2 +{ + .custom instance void [mscorlib]System.Reflection.DefaultMemberAttribute::.ctor(string) = ( 01 00 04 49 74 65 6D 00 00 ) // ...Item.. + .method assembly hidebysig specialname rtspecialname + instance void .ctor(int32 count) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 31,31 : 9,61 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\ProtocolDictionary.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + .line 31,31 : 64,65 '' + IL_0007: ret + } // end of method ProtocolDictionary::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_Item(string key) cil managed + { + // Code size 34 (0x22) + .maxstack 2 + .locals init ([0] bool notFound) + .line 41,41 : 17,68 '' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_000f + + IL_0003: ldarg.0 + IL_0004: ldarg.1 + IL_0005: call instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: br.s IL_0010 + + IL_000f: ldc.i4.1 + IL_0010: stloc.0 + .line 44,44 : 17,30 '' + IL_0011: ldloc.0 + IL_0012: brfalse.s IL_001a + + .line 45,45 : 21,53 '' + IL_0014: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol() + IL_0019: ret + + .line 47,47 : 17,34 '' + IL_001a: ldarg.0 + IL_001b: ldarg.1 + IL_001c: call instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0021: ret + } // end of method ProtocolDictionary::get_Item + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + Item(string) + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::get_Item(string) + } // end of property ProtocolDictionary::Item +} // end of class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 30,30 : 9,56 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\PluginDescriptorCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.3 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + .line 30,30 : 59,60 '' + IL_0007: ret + } // end of method PluginDescriptorCollection::.ctor + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.PluginDescriptor + FindDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 73 (0x49) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000, + [2] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001) + .line 38,38 : 13,32 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 39,39 : 17,59 '' + IL_0003: ldstr "plugin" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 41,41 : 53,57 '' + IL_000e: ldarg.0 + IL_000f: call instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0014: stloc.2 + .try + { + IL_0015: br.s IL_002c + + .line 41,41 : 22,49 '' + IL_0017: ldloca.s CS$5$0001 + IL_0019: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_001e: stloc.0 + .line 42,42 : 17,49 '' + IL_001f: ldloc.0 + IL_0020: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0025: ldarg.1 + IL_0026: bne.un.s IL_002c + + .line 42,42 : 50,68 '' + IL_0028: ldloc.0 + IL_0029: stloc.1 + IL_002a: leave.s IL_0047 + + .line 41,41 : 50,52 '' + IL_002c: ldloca.s CS$5$0001 + IL_002e: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0033: brtrue.s IL_0017 + + IL_0035: leave.s IL_0045 + + } // end .try + finally + { + IL_0037: ldloca.s CS$5$0001 + IL_0039: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_003f: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0044: endfinally + .line 44,44 : 13,25 '' + } // end handler + IL_0045: ldnull + IL_0046: ret + + .line 45,45 : 9,10 '' + IL_0047: ldloc.1 + IL_0048: ret + } // end of method PluginDescriptorCollection::FindDescriptorOf + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.PluginDescriptor + FindDescriptorOf(class [mscorlib]System.Type pluginType) cil managed + { + // Code size 93 (0x5d) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000, + [2] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001) + .line 49,49 : 13,36 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 50,50 : 17,59 '' + IL_0003: ldstr "plugin" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 52,52 : 13,75 '' + IL_000e: ldarg.1 + IL_000f: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginManagerBase::PluginType + IL_0014: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0019: brtrue.s IL_001d + + .line 53,53 : 17,29 '' + IL_001b: ldnull + IL_001c: ret + + .line 55,55 : 53,57 '' + IL_001d: ldarg.0 + IL_001e: call instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0023: stloc.2 + .try + { + IL_0024: br.s IL_0040 + + .line 55,55 : 22,49 '' + IL_0026: ldloca.s CS$5$0001 + IL_0028: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_002d: stloc.0 + .line 56,56 : 17,63 '' + IL_002e: ldloc.0 + IL_002f: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0034: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0039: ldarg.1 + IL_003a: bne.un.s IL_0040 + + .line 56,56 : 64,82 '' + IL_003c: ldloc.0 + IL_003d: stloc.1 + IL_003e: leave.s IL_005b + + .line 55,55 : 50,52 '' + IL_0040: ldloca.s CS$5$0001 + IL_0042: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0047: brtrue.s IL_0026 + + IL_0049: leave.s IL_0059 + + } // end .try + finally + { + IL_004b: ldloca.s CS$5$0001 + IL_004d: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0053: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0058: endfinally + .line 58,58 : 13,25 '' + } // end handler + IL_0059: ldnull + IL_005a: ret + + .line 59,59 : 9,10 '' + IL_005b: ldloc.1 + IL_005c: ret + } // end of method PluginDescriptorCollection::FindDescriptorOf + + .method public hidebysig instance bool + ContainsDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 67,67 : 13,55 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: ret + } // end of method PluginDescriptorCollection::ContainsDescriptorOf + + .method public hidebysig instance bool + ContainsDescriptorOf(class [mscorlib]System.Type pluginType) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 72,72 : 13,59 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class [mscorlib]System.Type) + IL_0007: ldnull + IL_0008: ceq + IL_000a: ldc.i4.0 + IL_000b: ceq + IL_000d: ret + } // end of method PluginDescriptorCollection::ContainsDescriptorOf + +} // end of class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection + extends class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection list) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 32,32 : 9,98 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\PluginDescriptorReadOnlyCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::.ctor(class [mscorlib]System.Collections.Generic.IList`1) + .line 32,32 : 101,102 '' + IL_0007: ret + } // end of method PluginDescriptorReadOnlyCollection::.ctor + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.PluginDescriptor + FindDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 40,40 : 13,81 '' + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.Collections.Generic.IList`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Items() + IL_0006: castclass Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + IL_000b: ldarg.1 + IL_000c: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0011: ret + } // end of method PluginDescriptorReadOnlyCollection::FindDescriptorOf + + .method public hidebysig instance class Virtuoso.Miranda.Plugins.PluginDescriptor + FindDescriptorOf(class [mscorlib]System.Type pluginType) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 45,45 : 13,85 '' + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.Collections.Generic.IList`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Items() + IL_0006: castclass Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + IL_000b: ldarg.1 + IL_000c: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class [mscorlib]System.Type) + IL_0011: ret + } // end of method PluginDescriptorReadOnlyCollection::FindDescriptorOf + + .method public hidebysig instance bool + ContainsDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 54,54 : 13,89 '' + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.Collections.Generic.IList`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Items() + IL_0006: castclass Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + IL_000b: ldarg.1 + IL_000c: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0011: ldnull + IL_0012: ceq + IL_0014: ldc.i4.0 + IL_0015: ceq + IL_0017: ret + } // end of method PluginDescriptorReadOnlyCollection::ContainsDescriptorOf + + .method public hidebysig instance bool + ContainsDescriptorOf(class [mscorlib]System.Type pluginType) cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 59,59 : 13,93 '' + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.Collections.Generic.IList`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Items() + IL_0006: castclass Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + IL_000b: ldarg.1 + IL_000c: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf(class [mscorlib]System.Type) + IL_0011: ldnull + IL_0012: ceq + IL_0014: ldc.i4.0 + IL_0015: ceq + IL_0017: ret + } // end of method PluginDescriptorReadOnlyCollection::ContainsDescriptorOf + +} // end of class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Translate + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .field private static initonly class [mscorlib]System.Type StatusEnumType + .method public hidebysig static valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + ToStatus(native uint wParam) cil managed + { + // Code size 47 (0x2f) + .maxstack 8 + .line 42,42 : 13,73 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Translate.cs' + IL_0000: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.Translate::StatusEnumType + IL_0005: ldarga.s wParam + IL_0007: call instance uint32 [mscorlib]System.UIntPtr::ToUInt32() + IL_000c: box [mscorlib]System.Int32 + IL_0011: call bool [mscorlib]System.Enum::IsDefined(class [mscorlib]System.Type, + object) + IL_0016: brtrue.s IL_0028 + + .line 43,43 : 17,107 '' + IL_0018: ldstr "wParam" + IL_001d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidValueToTranslate() + IL_0022: newobj instance void [mscorlib]System.ArgumentException::.ctor(string, + string) + IL_0027: throw + + .line 45,45 : 13,41 '' + IL_0028: ldarg.0 + IL_0029: call uint32 [mscorlib]System.UIntPtr::op_Explicit(native uint) + IL_002e: ret + } // end of method Translate::ToStatus + + .method public hidebysig static string + ToString(native int lParam, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding marshalAs) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 54,54 : 13,58 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: ldarg.1 + IL_0003: ldc.i4.0 + IL_0004: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + int32, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding, + bool) + IL_0009: ret + } // end of method Translate::ToString + + .method public hidebysig static string + ToString(native int lParam, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding marshalAs, + bool transformExceptionsToNull) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 59,59 : 13,78 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + int32, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding, + bool) + IL_0009: ret + } // end of method Translate::ToString + + .method public hidebysig static string + ToString(native int lParam, + int32 length, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding marshalAs) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 64,64 : 13,63 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldc.i4.0 + IL_0004: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + int32, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding, + bool) + IL_0009: ret + } // end of method Translate::ToString + + .method public hidebysig static string + ToString(native int lParam, + int32 length, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding marshalAs, + bool tranformExceptionsToNull) cil managed + { + // Code size 193 (0xc1) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Exception e, + [1] string CS$1$0000, + [2] valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding CS$0$0001) + .line 69,69 : 13,39 '' + IL_0000: ldarg.0 + IL_0001: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0006: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000b: brfalse.s IL_0018 + + .line 70,70 : 17,59 '' + IL_000d: ldstr "lParam" + IL_0012: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0017: throw + + .line 72,72 : 13,28 '' + IL_0018: ldarg.1 + IL_0019: ldc.i4.0 + IL_001a: bge.s IL_0027 + + .line 73,73 : 17,65 '' + IL_001c: ldstr "length" + IL_0021: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0026: throw + + .line 75,75 : 13,135 '' + IL_0027: ldarg.2 + IL_0028: ldc.i4.2 + IL_0029: beq.s IL_003d + + IL_002b: ldarg.2 + IL_002c: brfalse.s IL_003d + + IL_002e: ldarg.2 + IL_002f: ldc.i4.1 + IL_0030: beq.s IL_003d + + .line 76,76 : 17,68 '' + IL_0032: ldstr "marshalAs" + IL_0037: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_003c: throw + + .line 81,81 : 17,35 '' + .try + { + IL_003d: ldarg.2 + IL_003e: stloc.2 + IL_003f: ldloc.2 + IL_0040: switch ( + IL_0069, + IL_0080, + IL_0053) + IL_0051: br.s IL_0097 + + .line 84,84 : 25,78 '' + IL_0053: call valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaStringEncoding() + IL_0058: starg.s marshalAs + .line 85,85 : 25,72 '' + IL_005a: ldarg.2 + IL_005b: ldc.i4.2 + IL_005c: bne.un.s IL_003d + + .line 85,85 : 73,170 '' + IL_005e: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding() + IL_0063: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0068: throw + + .line 88,88 : 25,40 '' + IL_0069: ldarg.1 + IL_006a: ldc.i4.0 + IL_006b: ble.s IL_0077 + + .line 89,89 : 29,76 '' + IL_006d: ldarg.0 + IL_006e: ldarg.1 + IL_006f: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringAnsi(native int, + int32) + IL_0074: stloc.1 + IL_0075: leave.s IL_00bf + + .line 91,91 : 29,68 '' + IL_0077: ldarg.0 + IL_0078: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringAnsi(native int) + IL_007d: stloc.1 + IL_007e: leave.s IL_00bf + + .line 93,93 : 25,40 '' + IL_0080: ldarg.1 + IL_0081: ldc.i4.0 + IL_0082: ble.s IL_008e + + .line 94,94 : 29,75 '' + IL_0084: ldarg.0 + IL_0085: ldarg.1 + IL_0086: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringUni(native int, + int32) + IL_008b: stloc.1 + IL_008c: leave.s IL_00bf + + .line 96,96 : 29,67 '' + IL_008e: ldarg.0 + IL_008f: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringUni(native int) + IL_0094: stloc.1 + IL_0095: leave.s IL_00bf + + .line 98,98 : 25,37 '' + IL_0097: ldnull + IL_0098: stloc.1 + IL_0099: leave.s IL_00bf + + .line 101,101 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_009b: stloc.0 + .line 103,103 : 17,47 '' + IL_009c: ldarg.3 + IL_009d: brtrue.s IL_00bb + + .line 104,104 : 21,126 '' + IL_009f: ldstr "lParam" + IL_00a4: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidValueToTranslate() + IL_00a9: ldloc.0 + IL_00aa: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_00af: call string [mscorlib]System.String::Concat(string, + string) + IL_00b4: ldloc.0 + IL_00b5: newobj instance void [mscorlib]System.ArgumentException::.ctor(string, + string, + class [mscorlib]System.Exception) + IL_00ba: throw + + .line 106,106 : 21,33 '' + IL_00bb: ldnull + IL_00bc: stloc.1 + IL_00bd: leave.s IL_00bf + + .line 108,108 : 9,10 '' + } // end handler + IL_00bf: ldloc.1 + IL_00c0: ret + } // end of method Translate::ToString + + .method public hidebysig static native int + ToHandle(native uint wParam) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 116,116 : 13,56 '' + IL_0000: ldarga.s wParam + IL_0002: call instance uint64 [mscorlib]System.UIntPtr::ToUInt64() + IL_0007: newobj instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_000c: ret + } // end of method Translate::ToHandle + + .method public hidebysig static native uint + ToHandle(native int lParam) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 121,121 : 13,57 '' + IL_0000: ldarga.s lParam + IL_0002: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0007: newobj instance void [mscorlib]System.UIntPtr::.ctor(uint64) + IL_000c: ret + } // end of method Translate::ToHandle + + .method public hidebysig static valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle + ToHandle(string str, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding encoding) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 126,126 : 13,61 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0007: ret + } // end of method Translate::ToHandle + + .method public hidebysig static uint32 + ToMirandaVersion(class [mscorlib]System.Version version) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 80 (0x50) + .maxstack 3 + .line 136,136 : 13,33 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_0007: brfalse.s IL_0014 + + .line 137,137 : 17,60 '' + IL_0009: ldstr "version" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 139,139 : 13,191 '' + IL_0014: ldarg.0 + IL_0015: callvirt instance int32 [mscorlib]System.Version::get_Major() + IL_001a: ldc.i4 0xff + IL_001f: and + IL_0020: ldc.i4.s 24 + IL_0022: shl + IL_0023: ldarg.0 + IL_0024: callvirt instance int32 [mscorlib]System.Version::get_Minor() + IL_0029: ldc.i4 0xff + IL_002e: and + IL_002f: ldc.i4.s 16 + IL_0031: shl + IL_0032: or + IL_0033: ldarg.0 + IL_0034: callvirt instance int32 [mscorlib]System.Version::get_Build() + IL_0039: ldc.i4 0xff + IL_003e: and + IL_003f: ldc.i4.8 + IL_0040: shl + IL_0041: or + IL_0042: ldarg.0 + IL_0043: callvirt instance int16 [mscorlib]System.Version::get_MinorRevision() + IL_0048: ldc.i4 0xff + IL_004d: and + IL_004e: or + IL_004f: ret + } // end of method Translate::ToMirandaVersion + + .method public hidebysig static class [mscorlib]System.Version + FromMirandaVersion(uint32 version) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 42 (0x2a) + .maxstack 8 + .line 145,145 : 13,147 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.s 24 + IL_0003: shr.un + IL_0004: ldc.i4 0xff + IL_0009: and + IL_000a: ldarg.0 + IL_000b: ldc.i4.s 16 + IL_000d: shr.un + IL_000e: ldc.i4 0xff + IL_0013: and + IL_0014: ldarg.0 + IL_0015: ldc.i4.8 + IL_0016: shr.un + IL_0017: ldc.i4 0xff + IL_001c: and + IL_001d: ldarg.0 + IL_001e: ldc.i4 0xff + IL_0023: and + IL_0024: newobj instance void [mscorlib]System.Version::.ctor(int32, + int32, + int32, + int32) + IL_0029: ret + } // end of method Translate::FromMirandaVersion + + .method public hidebysig static uint8[] + ToBlob(native int blobPtr, + int32 size) cil managed + { + // Code size 57 (0x39) + .maxstack 4 + .locals init ([0] uint8[] 'blob') + .line 154,154 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0006: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000b: brfalse.s IL_0018 + + .line 155,155 : 17,60 '' + IL_000d: ldstr "blobPtr" + IL_0012: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0017: throw + + .line 157,157 : 13,26 '' + IL_0018: ldarg.1 + IL_0019: ldc.i4.0 + IL_001a: bge.s IL_0027 + + .line 158,158 : 17,63 '' + IL_001c: ldstr "size" + IL_0021: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0026: throw + + .line 160,160 : 13,42 '' + IL_0027: ldarg.1 + IL_0028: newarr [mscorlib]System.Byte + IL_002d: stloc.0 + .line 161,161 : 13,50 '' + IL_002e: ldarg.0 + IL_002f: ldloc.0 + IL_0030: ldc.i4.0 + IL_0031: ldarg.1 + IL_0032: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(native int, + uint8[], + int32, + int32) + .line 163,163 : 13,25 '' + IL_0037: ldloc.0 + IL_0038: ret + } // end of method Translate::ToBlob + + .method assembly hidebysig static object + ValueFromVariant(valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT& dbVariant) cil managed + { + // Code size 241 (0xf1) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.DbVariantValue CS$0$0000) + .line 172,172 : 13,52 '' + IL_0000: ldarg.0 + IL_0001: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT::Type + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: switch ( + IL_00b4, + IL_00a3, + IL_00c7, + IL_00ef, + IL_00b6) + IL_0021: ldloc.0 + IL_0022: ldc.i4 0x80 + IL_0027: beq IL_00e9 + + IL_002c: ldloc.0 + IL_002d: ldc.i4 0xfc + IL_0032: sub + IL_0033: switch ( + IL_00d8, + IL_006a, + IL_0087, + IL_004d) + IL_0048: br IL_00ef + + .line 175,175 : 21,123 '' + IL_004d: ldarg.0 + IL_004e: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0053: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + IL_0058: ldarg.0 + IL_0059: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_005e: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextBufferSize + IL_0063: ldc.i4.0 + IL_0064: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + int32, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0069: ret + + .line 177,177 : 21,126 '' + IL_006a: ldarg.0 + IL_006b: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_0070: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + IL_0075: ldarg.0 + IL_0076: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_007b: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextBufferSize + IL_0080: ldc.i4.1 + IL_0081: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + int32, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0086: ret + + .line 179,179 : 21,80 '' + IL_0087: ldarg.0 + IL_0088: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB Virtuoso.Miranda.Plugins.Native.DBVARIANT::Blob + IL_008d: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB::BlobPtr + IL_0092: ldarg.0 + IL_0093: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB Virtuoso.Miranda.Plugins.Native.DBVARIANT::Blob + IL_0098: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB::Size + IL_009d: call uint8[] Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToBlob(native int, + int32) + IL_00a2: ret + + .line 181,181 : 21,54 '' + IL_00a3: ldarg.0 + IL_00a4: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_00a9: ldfld uint8 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Byte + IL_00ae: box [mscorlib]System.Byte + IL_00b3: ret + + .line 183,183 : 21,33 '' + IL_00b4: ldnull + IL_00b5: ret + + .line 185,185 : 21,55 '' + IL_00b6: ldarg.0 + IL_00b7: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_00bc: ldfld uint32 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::DWord + IL_00c1: box [mscorlib]System.UInt32 + IL_00c6: ret + + .line 187,187 : 21,54 '' + IL_00c7: ldarg.0 + IL_00c8: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE Virtuoso.Miranda.Plugins.Native.DBVARIANT::Primitives + IL_00cd: ldfld uint16 Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE::Word + IL_00d2: box [mscorlib]System.UInt16 + IL_00d7: ret + + .line 189,189 : 21,76 '' + IL_00d8: ldarg.0 + IL_00d9: ldflda valuetype Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT Virtuoso.Miranda.Plugins.Native.DBVARIANT::Text + IL_00de: ldfld native int Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT::TextPtr + IL_00e3: call string [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStringBSTR(native int) + IL_00e8: ret + + .line 191,191 : 21,55 '' + IL_00e9: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_00ee: throw + + .line 193,193 : 21,33 '' + IL_00ef: ldnull + IL_00f0: ret + } // end of method Translate::ValueFromVariant + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 34,34 : 9,74 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.Translate::StatusEnumType + IL_000f: ret + } // end of method Translate::.cctor + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Translate + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Callback + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method Callback::.ctor + + .method public hidebysig newslot virtual + instance int32 Invoke(native uint wParam, + native int lParam) runtime managed + { + } // end of method Callback::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native uint wParam, + native int lParam, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method Callback::BeginInvoke + + .method public hidebysig newslot virtual + instance int32 EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method Callback::EndInvoke + +} // end of class Virtuoso.Miranda.Plugins.Callback + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.PluginState + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.PluginState Disabled = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.PluginState Enabled = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.PluginState CrashDisabled = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.PluginState + +.class private abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaServices + extends [mscorlib]System.Object +{ + .field public static literal string MS_CLIST_ADDMAINMENUITEM = "CList/AddMainMenuItem" + .field public static literal string MS_CLIST_ADDCONTACTMENUITEM = "CList/AddContactMenuItem" + .field public static literal string MS_CLIST_MODIFYMENUITEM = "CList/ModifyMenuItem" + .field public static literal string MS_CLIST_SYSTRAY_NOTIFY = "Miranda/Systray/Notify" + .field public static literal string MS_CONTACT_GETCONTACTINFO = "Miranda/Contact/GetContactInfo" + .field public static literal string MS_PROTO_GETCONTACTBASEPROTO = "Proto/GetContactBaseProto" + .field public static literal string MS_PROTO_ENUMPROTOCOLS = "Proto/EnumProtocols" + .field public static literal string MS_PROTO_CALLCONTACTSERVICE = "Proto/CallContactService" + .field public static literal string MS_PROTO_REGISTERMODULE = "Proto/RegisterModule" + .field public static literal string PS_MESSAGE = "/SendMsg" + .field public static literal string MS_SYSTEM_GETVERSION = "Miranda/System/GetVersion" +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaServices + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject, + Virtuoso.Miranda.Plugins.IDescriptor +{ + .field private string name + .field private native int handle + .field private class Virtuoso.Miranda.Plugins.Callback callback + .field private class Virtuoso.Miranda.Plugins.Callback callbackStub + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType hookType + .field private class Virtuoso.Miranda.Plugins.PluginDescriptor owner + .field private bool registeredManually + .method public hidebysig specialname rtspecialname + instance void .ctor(string name, + class Virtuoso.Miranda.Plugins.PluginDescriptor owner, + class Virtuoso.Miranda.Plugins.Callback callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType 'type') cil managed + { + // Code size 101 (0x65) + .maxstack 3 + .line 45,45 : 9,101 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\HookDescriptor.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 47,47 : 13,44 '' + IL_0006: ldarg.1 + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: brfalse.s IL_0019 + + .line 48,48 : 17,57 '' + IL_000e: ldstr "name" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 50,50 : 13,31 '' + IL_0019: ldarg.2 + IL_001a: brtrue.s IL_0027 + + .line 51,51 : 17,58 '' + IL_001c: ldstr "owner" + IL_0021: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0026: throw + + .line 53,53 : 13,34 '' + IL_0027: ldarg.3 + IL_0028: brtrue.s IL_0035 + + .line 54,54 : 17,61 '' + IL_002a: ldstr "callback" + IL_002f: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0034: throw + + .line 56,56 : 13,50 '' + IL_0035: ldarg.0 + IL_0036: ldarg.0 + IL_0037: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SafeCallbackStub(native uint, + native int) + IL_003d: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0042: stfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::callbackStub + .line 58,58 : 13,30 '' + IL_0047: ldarg.0 + IL_0048: ldarg.1 + IL_0049: stfld string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::name + .line 59,59 : 13,32 '' + IL_004e: ldarg.0 + IL_004f: ldarg.2 + IL_0050: stfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::owner + .line 60,60 : 13,38 '' + IL_0055: ldarg.0 + IL_0056: ldarg.3 + IL_0057: stfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::callback + .line 61,61 : 13,34 '' + IL_005c: ldarg.0 + IL_005d: ldarg.s 'type' + IL_005f: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::hookType + .line 62,62 : 9,10 '' + IL_0064: ret + } // end of method HookDescriptor::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1 targetContainer, + string name, + class Virtuoso.Miranda.Plugins.PluginDescriptor owner, + class Virtuoso.Miranda.Plugins.Callback callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType 'type') cil managed + { + // Code size 34 (0x22) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor) + .line 66,66 : 13,41 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 67,67 : 17,68 '' + IL_0003: ldstr "targetContainer" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 69,69 : 13,89 '' + IL_000e: ldarg.1 + IL_000f: ldarg.2 + IL_0010: ldarg.3 + IL_0011: ldarg.s 'type' + IL_0013: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::.ctor(string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0018: stloc.0 + .line 70,70 : 13,45 '' + IL_0019: ldarg.0 + IL_001a: ldloc.0 + IL_001b: callvirt instance void class [mscorlib]System.Collections.Generic.ICollection`1::Add(!0) + .line 72,72 : 13,31 '' + IL_0020: ldloc.0 + IL_0021: ret + } // end of method HookDescriptor::SetUpAndStore + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + SetUpAndStore(class [mscorlib]System.Collections.Generic.IDictionary`2 targetContainer, + string name, + class Virtuoso.Miranda.Plugins.PluginDescriptor owner, + class Virtuoso.Miranda.Plugins.Callback callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType 'type') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 77,77 : 13,94 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldarg.3 + IL_0005: ldarg.s 'type' + IL_0007: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IDictionary`2, + !!0, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_000c: ret + } // end of method HookDescriptor::SetUpAndStore + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + SetUpAndStore(class [mscorlib]System.Collections.Generic.IDictionary`2 targetContainer, + !!T key, + string name, + class Virtuoso.Miranda.Plugins.PluginDescriptor owner, + class Virtuoso.Miranda.Plugins.Callback callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType 'type') cil managed + { + // Code size 36 (0x24) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor) + .line 82,82 : 13,41 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 83,83 : 17,68 '' + IL_0003: ldstr "targetContainer" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 85,85 : 13,89 '' + IL_000e: ldarg.2 + IL_000f: ldarg.3 + IL_0010: ldarg.s callback + IL_0012: ldarg.s 'type' + IL_0014: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::.ctor(string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0019: stloc.0 + .line 86,86 : 13,50 '' + IL_001a: ldarg.0 + IL_001b: ldarg.1 + IL_001c: ldloc.0 + IL_001d: callvirt instance void class [mscorlib]System.Collections.Generic.IDictionary`2::Add(!0, + !1) + .line 88,88 : 13,31 '' + IL_0022: ldloc.0 + IL_0023: ret + } // end of method HookDescriptor::SetUpAndStore + + .method private hidebysig instance int32 + SafeCallbackStub(native uint wParam, + native int lParam) cil managed + { + // Code size 46 (0x2e) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Exception e, + [1] int32 CS$1$0000) + .line 99,99 : 17,49 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::callback + IL_0006: ldarg.1 + IL_0007: ldarg.2 + IL_0008: callvirt instance int32 Virtuoso.Miranda.Plugins.Callback::Invoke(native uint, + native int) + IL_000d: stloc.1 + IL_000e: leave.s IL_002c + + .line 101,101 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0010: stloc.0 + .line 103,103 : 17,84 '' + IL_0011: ldarg.0 + IL_0012: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::owner + IL_0017: call class Virtuoso.Miranda.Plugins.IExceptionHandler Virtuoso.Miranda.Plugins.MirandaPlugin::GetExceptionHandler(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_001c: ldloc.0 + IL_001d: ldarg.0 + IL_001e: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::owner + IL_0023: callvirt instance void Virtuoso.Miranda.Plugins.IExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 104,104 : 17,52 '' + IL_0028: ldc.i4.m1 + IL_0029: stloc.1 + IL_002a: leave.s IL_002c + + .line 106,106 : 9,10 '' + } // end handler + IL_002c: ldloc.1 + IL_002d: ret + } // end of method HookDescriptor::SafeCallbackStub + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 41 (0x29) + .maxstack 8 + .line 110,110 : 13,94 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::name + IL_0006: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_000b: ldarg.0 + IL_000c: ldfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::callback + IL_0011: callvirt instance class [mscorlib]System.Reflection.MethodInfo [mscorlib]System.Delegate::get_Method() + IL_0016: callvirt instance string [mscorlib]System.Reflection.MemberInfo::get_Name() + IL_001b: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0020: add + IL_0021: ldarg.0 + IL_0022: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::hookType + IL_0027: add + IL_0028: ret + } // end of method HookDescriptor::GetHashCode + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 32 (0x20) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor other) + .line 115,115 : 13,29 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_0005 + + .line 116,116 : 17,30 '' + IL_0003: ldc.i4.0 + IL_0004: ret + + .line 118,118 : 13,58 '' + IL_0005: ldarg.1 + IL_0006: isinst Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + IL_000b: stloc.0 + .line 120,120 : 13,31 '' + IL_000c: ldloc.0 + IL_000d: brtrue.s IL_0011 + + .line 121,121 : 17,30 '' + IL_000f: ldc.i4.0 + IL_0010: ret + + .line 123,123 : 13,57 '' + IL_0011: ldarg.0 + IL_0012: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0017: ldloc.0 + IL_0018: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_001d: ceq + IL_001f: ret + } // end of method HookDescriptor::Equals + + .method public hidebysig specialname instance string + get_Name() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 132,132 : 19,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::name + IL_0006: ret + } // end of method HookDescriptor::get_Name + + .method public hidebysig newslot specialname virtual final + instance native int get_MirandaHandle() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 137,137 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::handle + IL_0006: ret + } // end of method HookDescriptor::get_MirandaHandle + + .method assembly hidebysig specialname + instance void set_MirandaHandle(native int 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 138,138 : 28,43 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::handle + .line 138,138 : 44,45 '' + IL_0007: ret + } // end of method HookDescriptor::set_MirandaHandle + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Callback + get_Callback() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 143,143 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::callbackStub + IL_0006: ret + } // end of method HookDescriptor::get_Callback + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + get_HookType() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 148,148 : 19,35 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::hookType + IL_0006: ret + } // end of method HookDescriptor::get_HookType + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.PluginDescriptor + get_Owner() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 153,153 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::owner + IL_0006: ret + } // end of method HookDescriptor::get_Owner + + .method public hidebysig specialname instance bool + get_RegisteredManually() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 158,158 : 19,45 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::registeredManually + IL_0006: ret + } // end of method HookDescriptor::get_RegisteredManually + + .method public hidebysig specialname instance void + set_RegisteredManually(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 159,159 : 19,46 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::registeredManually + .line 159,159 : 47,48 '' + IL_0007: ret + } // end of method HookDescriptor::set_RegisteredManually + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + } // end of property HookDescriptor::Name + .property instance native int MirandaHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle(native int) + } // end of property HookDescriptor::MirandaHandle + .property instance class Virtuoso.Miranda.Plugins.Callback + Callback() + { + .get instance class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Callback() + } // end of property HookDescriptor::Callback + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType + HookType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + } // end of property HookDescriptor::HookType + .property instance class Virtuoso.Miranda.Plugins.PluginDescriptor + Owner() + { + .get instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Owner() + } // end of property HookDescriptor::Owner + .property instance bool RegisteredManually() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_RegisteredManually(bool) + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_RegisteredManually() + } // end of property HookDescriptor::RegisteredManually +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname uint32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags None = uint32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags CMIM_NAME = uint32(0x80000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags CMIM_FLAGS = uint32(0x40000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags CMIM_ICON = uint32(0x20000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags CMIM_HOTKEY = uint32(0x10000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags CMIM_ALL = uint32(0xF0000000) +} // end of class Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Native.MirandaException + extends [mscorlib]System.Exception +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor(string message) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 30,30 : 9,66 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\MirandaException.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void [mscorlib]System.Exception::.ctor(string) + .line 30,30 : 69,70 '' + IL_0007: ret + } // end of method MirandaException::.ctor + + .method assembly hidebysig specialname rtspecialname + instance void .ctor(string message, + class [mscorlib]System.Exception inner) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 31,31 : 9,90 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.Exception::.ctor(string, + class [mscorlib]System.Exception) + .line 31,31 : 93,94 '' + IL_0008: ret + } // end of method MirandaException::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 33,33 : 9,107 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext) + .line 33,33 : 110,111 '' + IL_0008: ret + } // end of method MirandaException::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Native.MirandaException + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field public string Protocol + .field public string Title + .field public string Text + .field public uint32 Flags + .field public uint32 Timeout + .method public hidebysig specialname rtspecialname + instance void .ctor(string title, + string text, + valuetype [System.Windows.Forms]System.Windows.Forms.ToolTipIcon 'flags') cil managed + { + // Code size 65 (0x41) + .maxstack 2 + .line 45,45 : 13,42 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\MIRANDASYSTRAYNOTIFY.cs' + IL_0000: ldarg.0 + IL_0001: ldsfld string [mscorlib]System.String::Empty + IL_0006: stfld string Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Protocol + .line 46,46 : 13,32 '' + IL_000b: ldarg.0 + IL_000c: ldarg.1 + IL_000d: stfld string Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Title + .line 47,47 : 13,30 '' + IL_0012: ldarg.0 + IL_0013: ldarg.2 + IL_0014: stfld string Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Text + .line 48,48 : 13,38 '' + IL_0019: ldarg.0 + IL_001a: ldarg.3 + IL_001b: stfld uint32 Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Flags + .line 49,49 : 13,38 '' + IL_0020: ldarg.0 + IL_0021: ldc.i4 0x2710 + IL_0026: stfld uint32 Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Timeout + .line 51,51 : 13,70 '' + IL_002b: ldarg.0 + IL_002c: ldtoken Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY + IL_0031: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0036: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_003b: stfld int32 Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::Size + .line 52,52 : 9,10 '' + IL_0040: ret + } // end of method MIRANDASYSTRAYNOTIFY::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Native.MarshalKind + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind Copy = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind PinBlittable = int32(0x00000001) +} // end of class Virtuoso.Miranda.Plugins.Native.MarshalKind + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + extends [mscorlib]System.ValueType + implements Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle, + [mscorlib]System.IDisposable +{ + .field public static initonly valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 Empty + .field private class [mscorlib]System.Type ActualType + .field private valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind MarshalKind + .field private valuetype [mscorlib]System.Runtime.InteropServices.GCHandle GcHandle + .field private native int intPtr + .field private native int SinglePressure + .field private native int[] Pressure + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 51,52 : 9,58 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\UnmanagedStructHandle.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: ldnull + IL_0004: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind, + native int[]) + .line 53,53 : 11,12 '' + IL_0009: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure, + native int pressure) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 55,56 : 9,58 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: ldnull + IL_0004: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind, + native int[]) + .line 58,58 : 13,44 '' + IL_0009: ldarg.0 + IL_000a: ldarg.2 + IL_000b: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + .line 59,59 : 9,10 '' + IL_0010: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure, + native int[] pressure) cil managed + { + .param [2] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 10 (0xa) + .maxstack 8 + .line 61,62 : 9,62 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: ldarg.2 + IL_0004: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind, + native int[]) + .line 63,63 : 11,12 '' + IL_0009: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind marshalKind) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 65,66 : 9,53 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldnull + IL_0004: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind, + native int[]) + .line 67,67 : 11,12 '' + IL_0009: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind marshalKind, + native int pressure) cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 69,70 : 9,53 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldnull + IL_0004: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind, + native int[]) + .line 72,72 : 13,44 '' + IL_0009: ldarg.0 + IL_000a: ldarg.3 + IL_000b: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + .line 73,73 : 9,10 '' + IL_0010: ret + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(!T& structure, + valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind marshalKind, + native int[] pressure) cil managed + { + .param [3] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 218 (0xda) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind CS$0$0000) + .line 78,78 : 13,83 '' + IL_0000: ldtoken !T + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: call instance bool [mscorlib]System.Type::get_IsValueType() + IL_000f: brtrue.s IL_002f + + IL_0011: ldarg.1 + IL_0012: ldobj !T + IL_0017: box !T + IL_001c: ldnull + IL_001d: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_0022: brfalse.s IL_002f + + .line 79,79 : 17,62 '' + IL_0024: ldstr "structure" + IL_0029: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002e: throw + + .line 81,81 : 13,47 '' + IL_002f: ldarg.0 + IL_0030: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0035: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + .line 82,82 : 13,38 '' + IL_003a: ldarg.0 + IL_003b: ldarg.3 + IL_003c: stfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + .line 83,83 : 13,44 '' + IL_0041: ldarg.0 + IL_0042: ldarg.2 + IL_0043: stfld valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalKind + .line 84,84 : 13,51 '' + IL_0048: ldarg.0 + IL_0049: ldarg.1 + IL_004a: constrained. !T + IL_0050: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0055: stfld class [mscorlib]System.Type valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::ActualType + .line 86,86 : 13,33 '' + IL_005a: ldarg.2 + IL_005b: stloc.0 + IL_005c: ldloc.0 + IL_005d: switch ( + IL_006c, + IL_00a6) + IL_006a: br.s IL_00cf + + .line 89,89 : 21,84 '' + IL_006c: ldarg.0 + IL_006d: ldarg.0 + IL_006e: ldfld class [mscorlib]System.Type valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::ActualType + IL_0073: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0078: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_007d: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + .line 90,90 : 21,83 '' + IL_0082: ldarg.1 + IL_0083: ldobj !T + IL_0088: box !T + IL_008d: ldarg.0 + IL_008e: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + IL_0093: ldc.i4.0 + IL_0094: call void [mscorlib]System.Runtime.InteropServices.Marshal::StructureToPtr(object, + native int, + bool) + .line 91,91 : 21,52 '' + IL_0099: ldarg.0 + IL_009a: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GcHandle + IL_009f: initobj [mscorlib]System.Runtime.InteropServices.GCHandle + .line 92,92 : 21,27 '' + IL_00a5: ret + + .line 94,94 : 21,92 '' + IL_00a6: ldarg.0 + IL_00a7: ldarg.1 + IL_00a8: ldobj !T + IL_00ad: box !T + IL_00b2: ldc.i4.3 + IL_00b3: call valuetype [mscorlib]System.Runtime.InteropServices.GCHandle [mscorlib]System.Runtime.InteropServices.GCHandle::Alloc(object, + valuetype [mscorlib]System.Runtime.InteropServices.GCHandleType) + IL_00b8: stfld valuetype [mscorlib]System.Runtime.InteropServices.GCHandle valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GcHandle + .line 95,95 : 21,70 '' + IL_00bd: ldarg.0 + IL_00be: ldarg.0 + IL_00bf: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GcHandle + IL_00c4: call instance native int [mscorlib]System.Runtime.InteropServices.GCHandle::AddrOfPinnedObject() + IL_00c9: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + .line 96,96 : 21,27 '' + IL_00ce: ret + + .line 98,98 : 21,74 '' + IL_00cf: ldstr "marshalKind" + IL_00d4: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_00d9: throw + } // end of method UnmanagedStructHandle`1::.ctor + + .method public hidebysig specialname static + native int op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 operand) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 108,108 : 13,35 '' + IL_0000: ldarga.s operand + IL_0002: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0007: ret + } // end of method UnmanagedStructHandle`1::op_Implicit + + .method public hidebysig specialname static + native uint op_Implicit(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 operand) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 13 (0xd) + .maxstack 8 + .line 114,114 : 13,55 '' + IL_0000: ldarga.s operand + IL_0002: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0007: call native uint Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native int) + IL_000c: ret + } // end of method UnmanagedStructHandle`1::op_Implicit + + .method public hidebysig newslot specialname virtual final + instance native int get_IntPtr() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 125,125 : 17,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + IL_0006: ret + } // end of method UnmanagedStructHandle`1::get_IntPtr + + .method public hidebysig instance void + MarshalBack([out] !T& destination) cil managed + { + // Code size 61 (0x3d) + .maxstack 8 + .line 135,135 : 13,57 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalKind + IL_0006: ldc.i4.1 + IL_0007: bne.un.s IL_0020 + + .line 136,136 : 17,50 '' + IL_0009: ldarg.1 + IL_000a: ldarg.0 + IL_000b: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GcHandle + IL_0010: call instance object [mscorlib]System.Runtime.InteropServices.GCHandle::get_Target() + IL_0015: unbox.any !T + IL_001a: stobj !T + IL_001f: ret + + .line 138,138 : 17,77 '' + IL_0020: ldarg.1 + IL_0021: ldarg.0 + IL_0022: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0027: ldarg.0 + IL_0028: ldfld class [mscorlib]System.Type valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::ActualType + IL_002d: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_0032: unbox.any !T + IL_0037: stobj !T + .line 139,139 : 9,10 '' + IL_003c: ret + } // end of method UnmanagedStructHandle`1::MarshalBack + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 143,143 : 13,41 '' + IL_0000: ldarg.0 + IL_0001: ldflda native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + IL_0006: constrained. [mscorlib]System.IntPtr + IL_000c: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_0011: ret + } // end of method UnmanagedStructHandle`1::GetHashCode + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 148,148 : 13,67 '' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_000b + + IL_0003: ldarg.1 + IL_0004: isinst valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + IL_0009: brtrue.s IL_000d + + .line 149,149 : 17,30 '' + IL_000b: ldc.i4.0 + IL_000c: ret + + .line 151,151 : 13,58 '' + IL_000d: ldarg.0 + IL_000e: ldarg.1 + IL_000f: unbox.any valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + IL_0014: call instance bool valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Equals(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1) + IL_0019: ret + } // end of method UnmanagedStructHandle`1::Equals + + .method public hidebysig instance bool + Equals(valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 other) cil managed + { + // Code size 56 (0x38) + .maxstack 8 + .line 156,156 : 13,132 '' + IL_0000: ldarga.s other + IL_0002: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + IL_0007: ldarg.0 + IL_0008: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + IL_000d: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0012: brfalse.s IL_0036 + + IL_0014: ldarga.s other + IL_0016: ldfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + IL_001b: ldarg.0 + IL_001c: ldfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + IL_0021: bne.un.s IL_0036 + + IL_0023: ldarga.s other + IL_0025: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + IL_002a: ldarg.0 + IL_002b: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + IL_0030: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0035: ret + + IL_0036: ldc.i4.0 + IL_0037: ret + } // end of method UnmanagedStructHandle`1::Equals + + .method private hidebysig newslot virtual final + instance void System.IDisposable.Dispose() cil managed + { + .override [mscorlib]System.IDisposable::Dispose + // Code size 7 (0x7) + .maxstack 8 + .line 163,163 : 13,20 '' + IL_0000: ldarg.0 + IL_0001: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + .line 164,164 : 9,10 '' + IL_0006: ret + } // end of method UnmanagedStructHandle`1::System.IDisposable.Dispose + + .method public hidebysig newslot virtual final + instance void Free() cil managed + { + // Code size 87 (0x57) + .maxstack 2 + .line 170,170 : 17,43 '' + .try + { + IL_0000: ldarg.0 + IL_0001: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0010: brfalse.s IL_0051 + + .line 172,172 : 21,36 '' + IL_0012: ldarg.0 + IL_0013: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::FreePressure() + .line 174,174 : 21,65 '' + IL_0018: ldarg.0 + IL_0019: ldfld valuetype Virtuoso.Miranda.Plugins.Native.MarshalKind valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalKind + IL_001e: ldc.i4.1 + IL_001f: bne.un.s IL_002e + + .line 175,175 : 25,41 '' + IL_0021: ldarg.0 + IL_0022: ldflda valuetype [mscorlib]System.Runtime.InteropServices.GCHandle valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GcHandle + IL_0027: call instance void [mscorlib]System.Runtime.InteropServices.GCHandle::Free() + IL_002c: br.s IL_003f + + .line 177,177 : 25,70 '' + IL_002e: ldarg.0 + IL_002f: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0034: ldarg.0 + IL_0035: ldfld class [mscorlib]System.Type valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::ActualType + IL_003a: call void [mscorlib]System.Runtime.InteropServices.Marshal::DestroyStructure(native int, + class [mscorlib]System.Type) + .line 179,179 : 21,42 '' + IL_003f: ldarg.0 + IL_0040: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0045: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::intPtr + .line 180,180 : 21,39 '' + IL_004a: ldarg.0 + IL_004b: ldnull + IL_004c: stfld class [mscorlib]System.Type valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::ActualType + IL_0051: leave.s IL_0056 + + .line 183,183 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0053: pop + IL_0054: leave.s IL_0056 + + .line 187,187 : 9,10 '' + } // end handler + IL_0056: ret + } // end of method UnmanagedStructHandle`1::Free + + .method private hidebysig instance void + FreePressure() cil managed + { + // Code size 112 (0x70) + .maxstack 2 + .locals init ([0] int32 i, + [1] native int ptr) + .line 191,191 : 13,47 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0010: brfalse.s IL_0028 + + .line 193,193 : 17,53 '' + IL_0012: ldarg.0 + IL_0013: ldfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + IL_0018: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + .line 194,194 : 17,46 '' + IL_001d: ldarg.0 + IL_001e: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0023: stfld native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::SinglePressure + .line 197,197 : 13,34 '' + IL_0028: ldarg.0 + IL_0029: ldfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + IL_002e: brfalse.s IL_006f + + .line 199,199 : 22,32 '' + IL_0030: ldc.i4.0 + IL_0031: stloc.0 + IL_0032: br.s IL_005d + + .line 201,201 : 21,46 '' + IL_0034: ldarg.0 + IL_0035: ldfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + IL_003a: ldloc.0 + IL_003b: ldelema [mscorlib]System.IntPtr + IL_0040: ldobj [mscorlib]System.IntPtr + IL_0045: stloc.1 + .line 203,203 : 21,44 '' + IL_0046: ldloc.1 + IL_0047: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_004c: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0051: brfalse.s IL_0059 + + .line 204,204 : 25,50 '' + IL_0053: ldloc.1 + IL_0054: call void [mscorlib]System.Runtime.InteropServices.Marshal::FreeHGlobal(native int) + .line 199,199 : 54,57 '' + IL_0059: ldloc.0 + IL_005a: ldc.i4.1 + IL_005b: add + IL_005c: stloc.0 + .line 199,199 : 33,52 '' + IL_005d: ldloc.0 + IL_005e: ldarg.0 + IL_005f: ldfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + IL_0064: ldlen + IL_0065: conv.i4 + IL_0066: blt.s IL_0034 + + .line 207,207 : 17,33 '' + IL_0068: ldarg.0 + IL_0069: ldnull + IL_006a: stfld native int[] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Pressure + .line 209,209 : 9,10 '' + IL_006f: ret + } // end of method UnmanagedStructHandle`1::FreePressure + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 36,36 : 9,96 '' + IL_0000: ldsflda valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0005: initobj valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + IL_000b: ret + } // end of method UnmanagedStructHandle`1::.cctor + + .property instance native int IntPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + } // end of property UnmanagedStructHandle`1::IntPtr +} // end of class Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.PluginDescriptor + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.IDescriptor +{ + .custom instance void [mscorlib]System.Diagnostics.DebuggerDisplayAttribute::.ctor(string) = ( 01 00 08 7B 50 6C 75 67 69 6E 7D 00 00 ) // ...{Plugin}.. + .field private static initonly class [mscorlib]System.Type HookDescriptorType + .field private static initonly class [mscorlib]System.Type EventHookAttribType + .field private static initonly class [mscorlib]System.Type MenuItemAttribType + .field private static initonly class [mscorlib]System.Type ServiceFncAttribType + .field private static initonly class [mscorlib]System.Type CallbackDelegType + .field private initonly class Virtuoso.Miranda.Plugins.MirandaPlugin plugin + .field private valuetype Virtuoso.Miranda.Plugins.PluginState PluginStateInternal + .field private initonly class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection eventHooks + .field private initonly class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection serviceFunctions + .field private initonly class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection eventHandles + .method private hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 67 (0x43) + .maxstack 2 + .line 52,52 : 9,55 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\PluginDescriptor.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 54,54 : 13,32 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 55,55 : 17,59 '' + IL_0009: ldstr "plugin" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 57,57 : 13,34 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: stfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + .line 59,59 : 13,62 '' + IL_001b: ldarg.0 + IL_001c: newobj instance void Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::.ctor() + IL_0021: stfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::eventHooks + .line 60,60 : 13,68 '' + IL_0026: ldarg.0 + IL_0027: newobj instance void Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::.ctor() + IL_002c: stfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::serviceFunctions + .line 61,61 : 13,61 '' + IL_0031: ldarg.0 + IL_0032: newobj instance void Virtuoso.Miranda.Plugins.Collections.EventHandleCollection::.ctor() + IL_0037: stfld class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::eventHandles + .line 63,63 : 13,26 '' + IL_003c: ldarg.0 + IL_003d: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::Initialize() + .line 64,64 : 9,10 '' + IL_0042: ret + } // end of method PluginDescriptor::.ctor + + .method private hidebysig instance void + Initialize() cil managed + { + // Code size 138 (0x8a) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Type pluginType, + [1] class [mscorlib]System.Reflection.MethodInfo[] methods, + [2] class [mscorlib]System.Reflection.MethodInfo 'method', + [3] class [mscorlib]System.Reflection.MethodInfo[] CS$6$0000, + [4] int32 CS$7$0001) + .line 68,68 : 13,38 '' + IL_0000: ldarg.0 + IL_0001: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0006: ldarg.0 + IL_0007: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::set_Descriptor(class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 70,70 : 13,48 '' + IL_000c: ldarg.0 + IL_000d: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0012: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0017: stloc.0 + .line 71,71 : 13,59 '' + IL_0018: ldloc.0 + IL_0019: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_001e: pop + .line 73,73 : 13,182 '' + IL_001f: ldloc.0 + IL_0020: ldc.i4.s 124 + IL_0022: callvirt instance class [mscorlib]System.Reflection.MethodInfo[] [mscorlib]System.Type::GetMethods(valuetype [mscorlib]System.Reflection.BindingFlags) + IL_0027: stloc.1 + .line 75,75 : 43,50 '' + IL_0028: ldloc.1 + IL_0029: stloc.3 + IL_002a: ldc.i4.0 + IL_002b: stloc.s CS$7$0001 + IL_002d: br.s IL_005b + + .line 75,75 : 22,39 '' + IL_002f: ldloc.3 + IL_0030: ldloc.s CS$7$0001 + IL_0032: ldelem.ref + IL_0033: stloc.2 + .line 77,77 : 17,88 '' + IL_0034: ldarg.0 + IL_0035: ldloc.2 + IL_0036: ldarg.0 + IL_0037: call instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_003c: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodHooksByAttribute(class [mscorlib]System.Reflection.MethodInfo, + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection) + .line 78,78 : 17,100 '' + IL_0041: ldarg.0 + IL_0042: ldloc.2 + IL_0043: ldarg.0 + IL_0044: call instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_0049: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodHooksByAttribute(class [mscorlib]System.Reflection.MethodInfo, + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection) + .line 80,80 : 17,62 '' + IL_004e: ldarg.0 + IL_004f: ldloc.2 + IL_0050: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodLevelDeclaredMenuItems(class [mscorlib]System.Reflection.MethodInfo) + IL_0055: ldloc.s CS$7$0001 + IL_0057: ldc.i4.1 + IL_0058: add + IL_0059: stloc.s CS$7$0001 + .line 75,75 : 40,42 '' + IL_005b: ldloc.s CS$7$0001 + IL_005d: ldloc.3 + IL_005e: ldlen + IL_005f: conv.i4 + IL_0060: blt.s IL_002f + + .line 83,83 : 13,49 '' + IL_0062: ldarg.0 + IL_0063: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateTopLevelDeclaredMenuItems() + .line 84,84 : 13,81 '' + IL_0068: ldarg.0 + IL_0069: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_006e: ldarg.0 + IL_006f: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0074: callvirt instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection() + IL_0079: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterMenuItemsPopulationInternal(class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection) + .line 86,86 : 13,56 '' + IL_007e: ldarg.0 + IL_007f: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0084: callvirt instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginInitializationInternal() + .line 87,87 : 9,10 '' + IL_0089: ret + } // end of method PluginDescriptor::Initialize + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.PluginDescriptor + SetUp(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 70 (0x46) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Exception e, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor CS$1$0000) + .line 91,91 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 92,92 : 17,59 '' + IL_0003: ldstr "plugin" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 96,96 : 17,53 '' + .try + { + IL_000e: ldarg.0 + IL_000f: newobj instance void Virtuoso.Miranda.Plugins.PluginDescriptor::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0014: stloc.1 + IL_0015: leave.s IL_0044 + + .line 98,98 : 13,36 '' + } // end .try + catch Virtuoso.Miranda.Plugins.FusionException + { + IL_0017: pop + .line 100,100 : 17,23 '' + IL_0018: rethrow + .line 102,102 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_001a: stloc.0 + .line 104,104 : 17,195 '' + IL_001b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor() + IL_0020: ldloc.0 + IL_0021: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0026: call string [mscorlib]System.String::Format(string, + object) + IL_002b: ldarg.0 + IL_002c: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0031: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0036: ldarg.0 + IL_0037: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_003c: ldarg.0 + IL_003d: ldloc.0 + IL_003e: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_0043: throw + + .line 106,106 : 9,10 '' + } // end handler + IL_0044: ldloc.1 + IL_0045: ret + } // end of method PluginDescriptor::SetUp + + .method private hidebysig instance void + PopulateMethodHooksByAttribute<(Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute) TAttrib>(class [mscorlib]System.Reflection.MethodInfo 'method', + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection hookBag) cil managed + { + // Code size 79 (0x4f) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Type attribType, + [1] !!TAttrib[] attributes) + .line 114,114 : 13,32 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 115,115 : 17,59 '' + IL_0003: ldstr "method" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 117,117 : 13,33 '' + IL_000e: ldarg.2 + IL_000f: brtrue.s IL_001c + + .line 118,118 : 17,60 '' + IL_0011: ldstr "hookBag" + IL_0016: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001b: throw + + .line 120,120 : 13,47 '' + IL_001c: ldtoken !!TAttrib + IL_0021: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0026: stloc.0 + .line 122,122 : 13,52 '' + IL_0027: ldarg.1 + IL_0028: ldloc.0 + IL_0029: ldc.i4.1 + IL_002a: callvirt instance bool [mscorlib]System.Reflection.MemberInfo::IsDefined(class [mscorlib]System.Type, + bool) + IL_002f: brfalse.s IL_004e + + .line 124,124 : 17,107 '' + IL_0031: ldarg.1 + IL_0032: ldloc.0 + IL_0033: ldc.i4.1 + IL_0034: call class [mscorlib]System.Attribute[] [mscorlib]System.Attribute::GetCustomAttributes(class [mscorlib]System.Reflection.MemberInfo, + class [mscorlib]System.Type, + bool) + IL_0039: castclass !!TAttrib[] + IL_003e: stloc.1 + .line 126,126 : 17,43 '' + IL_003f: ldloc.1 + IL_0040: ldlen + IL_0041: conv.i4 + IL_0042: ldc.i4.0 + IL_0043: ble.s IL_004e + + .line 127,127 : 21,79 '' + IL_0045: ldarg.0 + IL_0046: ldarg.1 + IL_0047: ldarg.2 + IL_0048: ldloc.1 + IL_0049: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodHooks(class [mscorlib]System.Reflection.MethodInfo, + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection, + !!0[]) + .line 129,129 : 9,10 '' + IL_004e: ret + } // end of method PluginDescriptor::PopulateMethodHooksByAttribute + + .method private hidebysig instance void + PopulateMethodHooks<(Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute) TAttrib>(class [mscorlib]System.Reflection.MethodInfo 'method', + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection hookBag, + !!TAttrib[] attributes) cil managed + { + .param [3] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 191 (0xbf) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Callback hookCallback, + [1] !!TAttrib attribute, + [2] !!TAttrib[] CS$6$0000, + [3] int32 CS$7$0001) + .line 133,133 : 13,32 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 134,134 : 17,59 '' + IL_0003: ldstr "method" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 136,136 : 13,33 '' + IL_000e: ldarg.2 + IL_000f: brtrue.s IL_001c + + .line 137,137 : 17,60 '' + IL_0011: ldstr "hookBag" + IL_0016: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001b: throw + + .line 139,139 : 13,36 '' + IL_001c: ldarg.3 + IL_001d: brtrue.s IL_002a + + .line 140,140 : 17,63 '' + IL_001f: ldstr "attributes" + IL_0024: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0029: throw + + .line 142,142 : 13,40 '' + IL_002a: ldarg.3 + IL_002b: ldlen + IL_002c: conv.i4 + IL_002d: brtrue.s IL_0030 + + .line 143,143 : 17,24 '' + IL_002f: ret + + .line 145,145 : 13,115 '' + IL_0030: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::CallbackDelegType + IL_0035: ldarg.0 + IL_0036: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_003b: ldarg.1 + IL_003c: ldc.i4.0 + IL_003d: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::CreateDelegate(class [mscorlib]System.Type, + object, + class [mscorlib]System.Reflection.MethodInfo, + bool) + IL_0042: isinst Virtuoso.Miranda.Plugins.Callback + IL_0047: stloc.0 + .line 147,147 : 13,38 '' + IL_0048: ldloc.0 + IL_0049: brtrue.s IL_0083 + + .line 148,148 : 17,193 '' + IL_004b: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_InvalidMethodSignature() + IL_0050: ldarg.1 + IL_0051: callvirt instance string [mscorlib]System.Reflection.MemberInfo::get_Name() + IL_0056: call string [mscorlib]System.String::Format(string, + object) + IL_005b: ldarg.0 + IL_005c: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0061: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0066: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_006b: ldarg.0 + IL_006c: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0071: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0076: ldarg.0 + IL_0077: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_007c: ldnull + IL_007d: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_0082: throw + + .line 150,150 : 43,53 '' + IL_0083: ldarg.3 + IL_0084: stloc.2 + IL_0085: ldc.i4.0 + IL_0086: stloc.3 + IL_0087: br.s IL_00b8 + + .line 150,150 : 22,39 '' + IL_0089: ldloc.2 + IL_008a: ldloc.3 + IL_008b: ldelem !!TAttrib + IL_0090: stloc.1 + .line 152,152 : 17,115 '' + IL_0091: ldarg.2 + IL_0092: ldloca.s attribute + IL_0094: constrained. !!TAttrib + IL_009a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::get_HookName() + IL_009f: ldarg.0 + IL_00a0: ldloc.0 + IL_00a1: ldloca.s attribute + IL_00a3: constrained. !!TAttrib + IL_00a9: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::get_HookType() + IL_00ae: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_00b3: pop + IL_00b4: ldloc.3 + IL_00b5: ldc.i4.1 + IL_00b6: add + IL_00b7: stloc.3 + .line 150,150 : 40,42 '' + IL_00b8: ldloc.3 + IL_00b9: ldloc.2 + IL_00ba: ldlen + IL_00bb: conv.i4 + IL_00bc: blt.s IL_0089 + + .line 154,154 : 9,10 '' + IL_00be: ret + } // end of method PluginDescriptor::PopulateMethodHooks + + .method private hidebysig instance void + PopulateTopLevelDeclaredMenuItems() cil managed + { + // Code size 62 (0x3e) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Type pluginType, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute[] menuItemAttribs) + .line 158,158 : 13,48 '' + IL_0000: ldarg.0 + IL_0001: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0006: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_000b: stloc.0 + .line 160,160 : 13,64 '' + IL_000c: ldloc.0 + IL_000d: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::MenuItemAttribType + IL_0012: ldc.i4.1 + IL_0013: callvirt instance bool [mscorlib]System.Reflection.MemberInfo::IsDefined(class [mscorlib]System.Type, + bool) + IL_0018: brfalse.s IL_003d + + .line 162,162 : 17,155 '' + IL_001a: ldloc.0 + IL_001b: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::MenuItemAttribType + IL_0020: ldc.i4.1 + IL_0021: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_0026: castclass class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute[] + IL_002b: stloc.1 + .line 163,163 : 17,70 '' + IL_002c: ldarg.0 + IL_002d: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0032: callvirt instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection() + IL_0037: ldloc.1 + IL_0038: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::AddRange(class [mscorlib]System.Collections.Generic.IEnumerable`1) + .line 165,165 : 9,10 '' + IL_003d: ret + } // end of method PluginDescriptor::PopulateTopLevelDeclaredMenuItems + + .method private hidebysig instance void + PopulateMethodLevelDeclaredMenuItems(class [mscorlib]System.Reflection.MethodInfo 'method') cil managed + { + // Code size 217 (0xd9) + .maxstack 6 + .locals init ([0] string methodService, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute[] menuItems, + [2] bool serviceRegistered, + [3] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute menuItem, + [4] class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute[] CS$6$0000, + [5] int32 CS$7$0001, + [6] class Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute[] CS$0$0002) + .line 169,169 : 13,32 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 170,170 : 17,59 '' + IL_0003: ldstr "method" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 172,172 : 13,60 '' + IL_000e: ldarg.1 + IL_000f: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::MenuItemAttribType + IL_0014: ldc.i4.1 + IL_0015: callvirt instance bool [mscorlib]System.Reflection.MemberInfo::IsDefined(class [mscorlib]System.Type, + bool) + IL_001a: brfalse IL_00d8 + + .line 174,174 : 17,105 '' + IL_001f: ldstr "{0}.{1}" + IL_0024: ldarg.0 + IL_0025: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_002a: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_002f: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0034: ldarg.1 + IL_0035: callvirt instance string [mscorlib]System.Reflection.MemberInfo::get_Name() + IL_003a: call string [mscorlib]System.String::Format(string, + object, + object) + IL_003f: stloc.0 + .line 175,175 : 17,145 '' + IL_0040: ldarg.1 + IL_0041: ldsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::MenuItemAttribType + IL_0046: ldc.i4.1 + IL_0047: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_004c: castclass class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute[] + IL_0051: stloc.1 + .line 177,177 : 17,48 '' + IL_0052: ldc.i4.0 + IL_0053: stloc.2 + .line 179,179 : 67,76 '' + IL_0054: ldloc.1 + IL_0055: stloc.s CS$6$0000 + IL_0057: ldc.i4.0 + IL_0058: stloc.s CS$7$0001 + IL_005a: br.s IL_00d0 + + .line 179,179 : 26,63 '' + IL_005c: ldloc.s CS$6$0000 + IL_005e: ldloc.s CS$7$0001 + IL_0060: ldelem.ref + IL_0061: stloc.3 + .line 181,181 : 21,65 '' + IL_0062: ldloc.3 + IL_0063: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Service() + IL_0068: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_006d: brtrue.s IL_008c + + .line 182,182 : 25,190 '' + IL_006f: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable3_MenuItemServiceAlreadySet() + IL_0074: ldloc.3 + IL_0075: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Text() + IL_007a: ldloc.0 + IL_007b: ldloc.3 + IL_007c: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Service() + IL_0081: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_0086: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_008b: throw + + .line 184,184 : 21,44 '' + IL_008c: ldloc.2 + IL_008d: brtrue.s IL_00b2 + + .line 186,186 : 25,142 '' + IL_008f: ldarg.0 + IL_0090: ldarg.1 + IL_0091: ldarg.0 + IL_0092: call instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_0097: ldc.i4.1 + IL_0098: newarr Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute + IL_009d: stloc.s CS$0$0002 + IL_009f: ldloc.s CS$0$0002 + IL_00a1: ldc.i4.0 + IL_00a2: ldloc.0 + IL_00a3: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::.ctor(string) + IL_00a8: stelem.ref + IL_00a9: ldloc.s CS$0$0002 + IL_00ab: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodHooks(class [mscorlib]System.Reflection.MethodInfo, + class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection, + !!0[]) + .line 187,187 : 25,50 '' + IL_00b0: ldc.i4.1 + IL_00b1: stloc.2 + .line 190,190 : 21,54 '' + IL_00b2: ldloc.3 + IL_00b3: ldloc.0 + IL_00b4: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Service(string) + .line 191,191 : 21,62 '' + IL_00b9: ldarg.0 + IL_00ba: call instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_00bf: callvirt instance class Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection() + IL_00c4: ldloc.3 + IL_00c5: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_00ca: ldloc.s CS$7$0001 + IL_00cc: ldc.i4.1 + IL_00cd: add + IL_00ce: stloc.s CS$7$0001 + .line 179,179 : 64,66 '' + IL_00d0: ldloc.s CS$7$0001 + IL_00d2: ldloc.s CS$6$0000 + IL_00d4: ldlen + IL_00d5: conv.i4 + IL_00d6: blt.s IL_005c + + .line 194,194 : 9,10 '' + IL_00d8: ret + } // end of method PluginDescriptor::PopulateMethodLevelDeclaredMenuItems + + .method public hidebysig virtual instance int32 + GetHashCode() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 202,202 : 13,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0006: callvirt instance int32 [mscorlib]System.Object::GetHashCode() + IL_000b: ret + } // end of method PluginDescriptor::GetHashCode + + .method public hidebysig virtual instance bool + Equals(object obj) cil managed + { + // Code size 36 (0x24) + .maxstack 8 + .line 207,207 : 13,59 '' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_000b + + IL_0003: ldarg.1 + IL_0004: isinst Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0009: brtrue.s IL_000d + + .line 208,208 : 17,30 '' + IL_000b: ldc.i4.0 + IL_000c: ret + + .line 210,210 : 13,66 '' + IL_000d: ldarg.0 + IL_000e: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0013: ldarg.1 + IL_0014: castclass Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0019: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_001e: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_0023: ret + } // end of method PluginDescriptor::Equals + + .method public hidebysig instance void + SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState newState) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 215,215 : 13,45 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: call instance void Virtuoso.Miranda.Plugins.PluginDescriptor::SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState, + bool) + .line 216,216 : 9,10 '' + IL_0008: ret + } // end of method PluginDescriptor::SetPluginState + + .method public hidebysig instance void + SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState newState, + bool rememberState) cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 220,220 : 13,96 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_000a: ldarg.0 + IL_000b: ldarg.1 + IL_000c: ldarg.2 + IL_000d: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState, + bool) + .line 221,221 : 9,10 '' + IL_0012: ret + } // end of method PluginDescriptor::SetPluginState + + .method assembly hidebysig instance void + AssociateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook) cil managed + { + // Code size 94 (0x5e) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType CS$0$0000) + .line 225,225 : 13,30 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 226,226 : 17,57 '' + IL_0003: ldstr "hook" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 230,230 : 17,67 '' + .try + { + IL_000e: ldarg.0 + IL_000f: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + .line 232,232 : 17,39 '' + IL_0014: ldarg.1 + IL_0015: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + IL_001a: stloc.0 + IL_001b: ldloc.0 + IL_001c: ldc.i4.1 + IL_001d: sub + IL_001e: switch ( + IL_002d, + IL_003b) + IL_002b: br.s IL_0049 + + .line 235,235 : 25,46 '' + IL_002d: ldarg.0 + IL_002e: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::eventHooks + IL_0033: ldarg.1 + IL_0034: callvirt instance void Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Add(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 236,236 : 25,31 '' + IL_0039: br.s IL_0054 + + .line 238,238 : 25,52 '' + IL_003b: ldarg.0 + IL_003c: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::serviceFunctions + IL_0041: ldarg.1 + IL_0042: callvirt instance void Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Add(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 239,239 : 25,31 '' + IL_0047: br.s IL_0054 + + .line 241,241 : 25,71 '' + IL_0049: ldstr "hook" + IL_004e: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0053: throw + + IL_0054: leave.s IL_005d + + .line 246,246 : 17,55 '' + } // end .try + finally + { + IL_0056: ldarg.0 + IL_0057: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_005c: endfinally + .line 248,248 : 9,10 '' + } // end handler + IL_005d: ret + } // end of method PluginDescriptor::AssociateHook + + .method assembly hidebysig instance void + UpdatePluginState(valuetype Virtuoso.Miranda.Plugins.PluginState state) cil managed + { + // Code size 42 (0x2a) + .maxstack 8 + .line 252,252 : 13,61 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.PluginState + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: ldarg.1 + IL_000b: box Virtuoso.Miranda.Plugins.PluginState + IL_0010: call bool [mscorlib]System.Enum::IsDefined(class [mscorlib]System.Type, + object) + IL_0015: brtrue.s IL_0022 + + .line 253,253 : 17,64 '' + IL_0017: ldstr "state" + IL_001c: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0021: throw + + .line 255,255 : 13,41 '' + IL_0022: ldarg.0 + IL_0023: ldarg.1 + IL_0024: stfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::PluginStateInternal + .line 256,256 : 9,10 '' + IL_0029: ret + } // end of method PluginDescriptor::UpdatePluginState + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.PluginState + get_PluginState() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 266,266 : 17,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::PluginStateInternal + IL_0006: ret + } // end of method PluginDescriptor::get_PluginState + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.MirandaPlugin + get_Plugin() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 274,274 : 17,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0006: ret + } // end of method PluginDescriptor::get_Plugin + + .method public hidebysig specialname instance bool + get_IsStandalone() cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 282,282 : 17,51 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0006: isinst Virtuoso.Hyphen.Mini.StandalonePlugin + IL_000b: ldnull + IL_000c: cgt.un + IL_000e: ret + } // end of method PluginDescriptor::get_IsStandalone + + .method assembly hidebysig specialname + instance bool get_IsConfigurable() cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 290,290 : 17,75 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0006: callvirt instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_HasOptions() + IL_000b: brfalse.s IL_001c + + IL_000d: ldarg.0 + IL_000e: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::plugin + IL_0013: isinst Virtuoso.Miranda.Plugins.IConfigurablePlugin + IL_0018: ldnull + IL_0019: cgt.un + IL_001b: ret + + IL_001c: ldc.i4.0 + IL_001d: ret + } // end of method PluginDescriptor::get_IsConfigurable + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + get_EventHooks() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 298,298 : 17,35 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::eventHooks + IL_0006: ret + } // end of method PluginDescriptor::get_EventHooks + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + get_ServiceFunctions() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 306,306 : 17,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::serviceFunctions + IL_0006: ret + } // end of method PluginDescriptor::get_ServiceFunctions + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection + get_EventHandles() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 314,314 : 17,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::eventHandles + IL_0006: ret + } // end of method PluginDescriptor::get_EventHandles + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 76 (0x4c) + .maxstack 1 + .line 36,36 : 9,82 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::HookDescriptorType + .line 37,37 : 13,62 '' + IL_000f: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute + IL_0014: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0019: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::EventHookAttribType + .line 38,38 : 13,71 '' + IL_001e: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + IL_0023: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0028: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::MenuItemAttribType + .line 39,39 : 13,69 '' + IL_002d: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute + IL_0032: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0037: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::ServiceFncAttribType + .line 40,40 : 13,50 '' + IL_003c: ldtoken Virtuoso.Miranda.Plugins.Callback + IL_0041: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0046: stsfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.PluginDescriptor::CallbackDelegType + IL_004b: ret + } // end of method PluginDescriptor::.cctor + + .property instance valuetype Virtuoso.Miranda.Plugins.PluginState + PluginState() + { + .get instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState() + } // end of property PluginDescriptor::PluginState + .property instance class Virtuoso.Miranda.Plugins.MirandaPlugin + Plugin() + { + .get instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + } // end of property PluginDescriptor::Plugin + .property instance bool IsStandalone() + { + .get instance bool Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsStandalone() + } // end of property PluginDescriptor::IsStandalone + .property instance bool IsConfigurable() + { + .get instance bool Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsConfigurable() + } // end of property PluginDescriptor::IsConfigurable + .property instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + EventHooks() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + } // end of property PluginDescriptor::EventHooks + .property instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + ServiceFunctions() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + } // end of property PluginDescriptor::ServiceFunctions + .property instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection + EventHandles() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHandles() + } // end of property PluginDescriptor::EventHandles +} // end of class Virtuoso.Miranda.Plugins.PluginDescriptor + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.DefaultPluginManager + extends Virtuoso.Miranda.Plugins.PluginManagerBase +{ + .field public static literal string LogCategory = "Hyphen::PluginManager" + .field public static literal string InternalServiceNamePrefix = "Virtuoso.Miranda.Plugins.Services." + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Hyphen.FusionContext fusionContext) cil managed + { + // Code size 32 (0x20) + .maxstack 8 + .line 38,39 : 9,46 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\DefaultPluginManager.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.1 + IL_0003: ldc.i4.1 + IL_0004: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::.ctor(class Virtuoso.Hyphen.FusionContext, + bool, + bool) + .line 41,41 : 13,83 '' + IL_0009: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetExecutingAssembly() + IL_000e: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_0013: pop + .line 44,44 : 13,77 '' + IL_0014: ldarg.0 + IL_0015: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_001a: call void Virtuoso.Miranda.Plugins.PluginManagerBase::FirePrimaryPluginManagerInitializedEvent(class Virtuoso.Miranda.Plugins.PluginManagerBase, + class [mscorlib]System.EventArgs) + .line 46,46 : 9,10 '' + IL_001f: ret + } // end of method DefaultPluginManager::.ctor + + .method famorassem hidebysig virtual instance void + FindAndLoadPlugins() cil managed + { + // Code size 239 (0xef) + .maxstack 5 + .locals init ([0] class [mscorlib]System.Reflection.Assembly currentAssembly, + [1] class [mscorlib]System.Type currentType, + [2] class Virtuoso.Miranda.Plugins.MirandaPlugin currentPlugin, + [3] string[] paths, + [4] string path, + [5] class [mscorlib]System.Exception e, + [6] class Virtuoso.Miranda.Plugins.FusionException fEx, + [7] string[] CS$6$0000, + [8] int32 CS$7$0001) + .line 54,54 : 13,41 '' + IL_0000: ldarg.0 + IL_0001: call instance class Virtuoso.Hyphen.FusionContext Virtuoso.Miranda.Plugins.PluginManagerBase::get_FusionContext() + IL_0006: callvirt instance bool Virtuoso.Hyphen.FusionContext::get_IsInvalid() + IL_000b: brfalse.s IL_0018 + + .line 55,55 : 17,102 '' + IL_000d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidFusionContext() + IL_0012: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0017: throw + + .line 57,57 : 13,29 '' + IL_0018: ldarg.0 + IL_0019: call instance bool Virtuoso.Miranda.Plugins.PluginManagerBase::get_Initialized() + IL_001e: brfalse.s IL_002b + + .line 58,58 : 17,113 '' + IL_0020: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginManagerAlreadyInitialized() + IL_0025: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_002a: throw + + .line 60,60 : 13,45 '' + IL_002b: ldnull + IL_002c: stloc.0 + .line 61,61 : 13,37 '' + IL_002d: ldnull + IL_002e: stloc.1 + .line 62,62 : 13,48 '' + IL_002f: ldnull + IL_0030: stloc.2 + .line 66,66 : 17,79 '' + .try + { + .try + { + IL_0031: ldarg.0 + IL_0032: call instance class Virtuoso.Hyphen.FusionContext Virtuoso.Miranda.Plugins.PluginManagerBase::get_FusionContext() + IL_0037: callvirt instance class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.FusionContext::get_AssemblyProbe() + IL_003c: callvirt instance string[] Virtuoso.Miranda.Plugins.AssemblyProbe::FindAssemblies() + IL_0041: stloc.3 + .line 68,68 : 17,39 '' + IL_0042: ldloc.3 + IL_0043: ldlen + IL_0044: conv.i4 + IL_0045: brtrue.s IL_004c + + .line 71,71 : 21,28 '' + IL_0047: leave IL_00ee + + .line 76,76 : 41,46 '' + IL_004c: ldloc.3 + IL_004d: stloc.s CS$6$0000 + IL_004f: ldc.i4.0 + IL_0050: stloc.s CS$7$0001 + IL_0052: br.s IL_006f + + .line 76,76 : 26,37 '' + IL_0054: ldloc.s CS$6$0000 + IL_0056: ldloc.s CS$7$0001 + IL_0058: ldelem.ref + IL_0059: stloc.s path + .line 77,77 : 21,97 '' + IL_005b: ldarg.0 + IL_005c: ldloc.s path + IL_005e: ldloca.s currentAssembly + IL_0060: ldloca.s currentType + IL_0062: ldloca.s currentPlugin + IL_0064: call instance void Virtuoso.Miranda.Plugins.DefaultPluginManager::LoadAssembly(string, + class [mscorlib]System.Reflection.Assembly&, + class [mscorlib]System.Type&, + class Virtuoso.Miranda.Plugins.MirandaPlugin&) + IL_0069: ldloc.s CS$7$0001 + IL_006b: ldc.i4.1 + IL_006c: add + IL_006d: stloc.s CS$7$0001 + .line 76,76 : 38,40 '' + IL_006f: ldloc.s CS$7$0001 + IL_0071: ldloc.s CS$6$0000 + IL_0073: ldlen + IL_0074: conv.i4 + IL_0075: blt.s IL_0054 + + IL_0077: leave.s IL_00d5 + + .line 79,79 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0079: stloc.s e + .line 81,81 : 17,44 '' + IL_007b: ldnull + IL_007c: stloc.s fEx + .line 84,84 : 17,38 '' + IL_007e: ldloc.s e + IL_0080: isinst [mscorlib]System.IO.IOException + IL_0085: brfalse.s IL_0098 + + .line 85,85 : 21,123 '' + IL_0087: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_IOErrorOccurred() + IL_008c: ldloc.0 + IL_008d: ldnull + IL_008e: ldnull + IL_008f: ldloc.s e + IL_0091: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_0096: stloc.s fEx + .line 86,86 : 17,42 '' + IL_0098: ldloc.s e + IL_009a: isinst Virtuoso.Miranda.Plugins.FusionException + IL_009f: brfalse.s IL_00ac + + .line 87,87 : 21,46 '' + IL_00a1: ldloc.s e + IL_00a3: castclass Virtuoso.Miranda.Plugins.FusionException + IL_00a8: stloc.s fEx + IL_00aa: br.s IL_00bf + + .line 89,89 : 21,97 '' + IL_00ac: ldloc.s e + IL_00ae: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_00b3: ldloc.0 + IL_00b4: ldloc.1 + IL_00b5: ldnull + IL_00b6: ldloc.s e + IL_00b8: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_00bd: stloc.s fEx + .line 91,91 : 17,113 '' + IL_00bf: ldarg.0 + IL_00c0: ldloc.s fEx + IL_00c2: ldloc.2 + IL_00c3: brtrue.s IL_00c8 + + IL_00c5: ldnull + IL_00c6: br.s IL_00ce + + IL_00c8: ldloc.2 + IL_00c9: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_00ce: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_00d3: leave.s IL_00d5 + + } // end handler + IL_00d5: leave.s IL_00ee + + .line 95,95 : 17,38 '' + } // end .try + finally + { + IL_00d7: ldarg.0 + IL_00d8: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::DeclareInitialized() + .line 96,96 : 17,60 '' + IL_00dd: ldarg.0 + IL_00de: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_00e3: call instance void Virtuoso.Miranda.Plugins.PluginManagerBase::RaiseFusionCompletedEvent(class [mscorlib]System.EventArgs) + .line 98,98 : 17,66 '' + IL_00e8: call void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::FlushCaches() + IL_00ed: endfinally + .line 101,101 : 9,10 '' + } // end handler + IL_00ee: ret + } // end of method DefaultPluginManager::FindAndLoadPlugins + + .method private hidebysig instance void + LoadAssembly(string path, + class [mscorlib]System.Reflection.Assembly& currentAssembly, + class [mscorlib]System.Type& currentType, + class Virtuoso.Miranda.Plugins.MirandaPlugin& currentPlugin) cil managed + { + // Code size 173 (0xad) + .maxstack 6 + .locals init ([0] class [mscorlib]System.Type 'type', + [1] class [mscorlib]System.BadImageFormatException bifE, + [2] class [mscorlib]System.IO.FileNotFoundException fnfE, + [3] class [mscorlib]System.Exception e, + [4] class [mscorlib]System.Type[] CS$6$0000, + [5] int32 CS$7$0001, + [6] class [mscorlib]System.Type CS$0$0002) + .line 109,109 : 17,89 '' + .try + { + IL_0000: ldarg.2 + IL_0001: ldarg.1 + IL_0002: call string [mscorlib]System.IO.Path::GetFileNameWithoutExtension(string) + IL_0007: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::Load(string) + IL_000c: stind.ref + .line 111,111 : 39,73 '' + IL_000d: ldarg.2 + IL_000e: ldind.ref + IL_000f: call class [mscorlib]System.Type[] Virtuoso.Miranda.Plugins.PluginManagerBase::GetExposedPlugins(class [mscorlib]System.Reflection.Assembly) + IL_0014: stloc.s CS$6$0000 + IL_0016: ldc.i4.0 + IL_0017: stloc.s CS$7$0001 + IL_0019: br.s IL_0035 + + .line 111,111 : 26,35 '' + IL_001b: ldloc.s CS$6$0000 + IL_001d: ldloc.s CS$7$0001 + IL_001f: ldelem.ref + IL_0020: stloc.0 + .line 112,112 : 21,60 '' + IL_0021: ldarg.0 + IL_0022: ldarg.3 + IL_0023: ldloc.0 + IL_0024: dup + IL_0025: stloc.s CS$0$0002 + IL_0027: stind.ref + IL_0028: ldloc.s CS$0$0002 + IL_002a: call instance void Virtuoso.Miranda.Plugins.DefaultPluginManager::LoadPluginFromType(class [mscorlib]System.Type) + IL_002f: ldloc.s CS$7$0001 + IL_0031: ldc.i4.1 + IL_0032: add + IL_0033: stloc.s CS$7$0001 + .line 111,111 : 36,38 '' + IL_0035: ldloc.s CS$7$0001 + IL_0037: ldloc.s CS$6$0000 + IL_0039: ldlen + IL_003a: conv.i4 + IL_003b: blt.s IL_001b + + IL_003d: leave.s IL_00ac + + .line 114,114 : 13,49 '' + } // end .try + catch [mscorlib]System.BadImageFormatException + { + IL_003f: stloc.1 + .line 116,116 : 17,164 '' + IL_0040: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnmanagedImageFound() + IL_0045: ldarg.1 + IL_0046: call string [mscorlib]System.String::Format(string, + object) + IL_004b: ldloc.1 + IL_004c: callvirt instance string [mscorlib]System.BadImageFormatException::get_FusionLog() + IL_0051: ldnull + IL_0052: ldnull + IL_0053: ldnull + IL_0054: ldloc.1 + IL_0055: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_005a: throw + + .line 118,118 : 13,47 '' + } // end handler + catch [mscorlib]System.IO.FileNotFoundException + { + IL_005b: stloc.2 + .line 120,120 : 17,235 '' + IL_005c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_AssemblyLoadError() + IL_0061: ldarg.2 + IL_0062: ldind.ref + IL_0063: brtrue.s IL_0068 + + IL_0065: ldarg.1 + IL_0066: br.s IL_006f + + IL_0068: ldarg.2 + IL_0069: ldind.ref + IL_006a: callvirt instance string [mscorlib]System.Object::ToString() + IL_006f: call string [mscorlib]System.String::Format(string, + object) + IL_0074: ldloc.2 + IL_0075: callvirt instance string [mscorlib]System.IO.FileNotFoundException::get_FusionLog() + IL_007a: ldarg.2 + IL_007b: ldind.ref + IL_007c: ldarg.3 + IL_007d: ldind.ref + IL_007e: ldnull + IL_007f: ldloc.2 + IL_0080: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_0085: throw + + .line 122,122 : 13,36 '' + } // end handler + catch Virtuoso.Miranda.Plugins.FusionException + { + IL_0086: pop + .line 124,124 : 17,23 '' + IL_0087: rethrow + .line 126,126 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_0089: stloc.3 + .line 128,128 : 17,182 '' + IL_008a: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_AssemblyLoadError() + IL_008f: ldarg.1 + IL_0090: ldloc.3 + IL_0091: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0096: call string [mscorlib]System.String::Format(string, + object, + object) + IL_009b: ldarg.2 + IL_009c: ldind.ref + IL_009d: callvirt instance string [mscorlib]System.Object::ToString() + IL_00a2: ldnull + IL_00a3: ldnull + IL_00a4: ldnull + IL_00a5: ldloc.3 + IL_00a6: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_00ab: throw + + .line 130,130 : 9,10 '' + } // end handler + IL_00ac: ret + } // end of method DefaultPluginManager::LoadAssembly + + .method private hidebysig instance void + LoadPluginFromType(class [mscorlib]System.Type 'type') cil managed + { + // Code size 190 (0xbe) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.MirandaPlugin plugin, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor pluginDescriptor, + [2] class [mscorlib]System.MissingMethodException mmEx, + [3] class [mscorlib]System.Reflection.TargetInvocationException tiEx, + [4] class [mscorlib]System.MethodAccessException maEx) + .line 134,134 : 13,30 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 135,135 : 17,57 '' + IL_0003: ldstr "type" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 141,141 : 17,71 '' + .try + { + IL_000e: ldarg.1 + IL_000f: ldc.i4.0 + IL_0010: call class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginManagerBase::InstantiatePlugin(class [mscorlib]System.Type, + bool) + IL_0015: stloc.0 + .line 143,143 : 17,36 '' + IL_0016: ldloc.0 + IL_0017: brtrue.s IL_001e + + .line 144,144 : 21,28 '' + IL_0019: leave IL_00bd + + .line 146,146 : 17,72 '' + IL_001e: ldarg.0 + IL_001f: ldloc.0 + IL_0020: call instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.PluginManagerBase::LoadPlugin(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0025: stloc.1 + .line 149,149 : 17,39 '' + IL_0026: ldarg.0 + IL_0027: ldloc.0 + IL_0028: call instance bool Virtuoso.Miranda.Plugins.PluginManagerBase::IsEnabled(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_002d: brfalse.s IL_0037 + + .line 150,150 : 21,75 '' + IL_002f: ldarg.0 + IL_0030: ldloc.1 + IL_0031: ldc.i4.1 + IL_0032: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState(class Virtuoso.Miranda.Plugins.PluginDescriptor, + valuetype Virtuoso.Miranda.Plugins.PluginState) + IL_0037: leave IL_00bd + + .line 154,154 : 13,48 '' + } // end .try + catch [mscorlib]System.MissingMethodException + { + IL_003c: stloc.2 + .line 156,156 : 17,169 '' + IL_003d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_NoValidPluginCtorFound() + IL_0042: ldarg.1 + IL_0043: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0048: call string [mscorlib]System.String::Format(string, + object) + IL_004d: ldarg.1 + IL_004e: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0053: ldarg.1 + IL_0054: ldnull + IL_0055: ldloc.2 + IL_0056: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_005b: throw + + .line 158,158 : 13,51 '' + } // end handler + catch [mscorlib]System.Reflection.TargetInvocationException + { + IL_005c: stloc.3 + .line 160,162 : 17,69 '' + IL_005d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin() + IL_0062: ldarg.1 + IL_0063: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0068: ldloc.3 + IL_0069: callvirt instance class [mscorlib]System.Exception [mscorlib]System.Exception::get_InnerException() + IL_006e: brtrue.s IL_0077 + + IL_0070: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Unknown() + IL_0075: br.s IL_0082 + + IL_0077: ldloc.3 + IL_0078: callvirt instance class [mscorlib]System.Exception [mscorlib]System.Exception::get_InnerException() + IL_007d: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0082: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0087: ldarg.1 + IL_0088: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_008d: ldarg.1 + IL_008e: ldnull + IL_008f: ldloc.3 + IL_0090: callvirt instance class [mscorlib]System.Exception [mscorlib]System.Exception::get_InnerException() + IL_0095: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_009a: throw + + .line 164,164 : 13,47 '' + } // end handler + catch [mscorlib]System.MethodAccessException + { + IL_009b: stloc.s maEx + .line 166,166 : 17,178 '' + IL_009d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin() + IL_00a2: ldarg.1 + IL_00a3: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_00a8: call string [mscorlib]System.String::Format(string, + object) + IL_00ad: ldarg.1 + IL_00ae: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_00b3: ldarg.1 + IL_00b4: ldnull + IL_00b5: ldloc.s maEx + IL_00b7: newobj instance void Virtuoso.Miranda.Plugins.FusionException::.ctor(string, + class [mscorlib]System.Reflection.Assembly, + class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class [mscorlib]System.Exception) + IL_00bc: throw + + .line 168,168 : 9,10 '' + } // end handler + IL_00bd: ret + } // end of method DefaultPluginManager::LoadPluginFromType + +} // end of class Virtuoso.Miranda.Plugins.DefaultPluginManager + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field public string Text + .field public uint32 Flags + .field public int32 Position + .field public native int Icon + .field public string Service + .field public string PopUpMenu + .field public int32 PopUpPosition + .field public uint32 HotKey + .field public string ContactOwner + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute attrib) cil managed + { + // Code size 165 (0xa5) + .maxstack 3 + .line 53,53 : 13,31 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\CLISTMENUITEM.cs' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 54,54 : 17,58 '' + IL_0003: ldstr "owner" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 56,56 : 13,32 '' + IL_000e: ldarg.2 + IL_000f: brtrue.s IL_001c + + .line 57,57 : 17,59 '' + IL_0011: ldstr "attrib" + IL_0016: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001b: throw + + .line 59,59 : 13,37 '' + IL_001c: ldarg.0 + IL_001d: ldarg.2 + IL_001e: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Text() + IL_0023: stfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Text + .line 60,60 : 13,43 '' + IL_0028: ldarg.0 + IL_0029: ldarg.2 + IL_002a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Service() + IL_002f: stfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Service + .line 61,61 : 13,53 '' + IL_0034: ldarg.0 + IL_0035: ldarg.2 + IL_0036: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_OwningModule() + IL_003b: stfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::ContactOwner + .line 62,62 : 13,45 '' + IL_0040: ldarg.0 + IL_0041: ldarg.2 + IL_0042: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Flags() + IL_0047: stfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Flags + .line 63,63 : 13,47 '' + IL_004c: ldarg.0 + IL_004d: ldarg.2 + IL_004e: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_PopUpMenu() + IL_0053: stfld string Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpMenu + .line 64,64 : 13,55 '' + IL_0058: ldarg.0 + IL_0059: ldarg.2 + IL_005a: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_PopUpPosition() + IL_005f: stfld int32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::PopUpPosition + .line 65,65 : 13,45 '' + IL_0064: ldarg.0 + IL_0065: ldarg.2 + IL_0066: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Position() + IL_006b: stfld int32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Position + .line 66,66 : 13,47 '' + IL_0070: ldarg.0 + IL_0071: ldarg.2 + IL_0072: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HotKeys Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_HotKey() + IL_0077: stfld uint32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::HotKey + .line 67,67 : 13,37 '' + IL_007c: ldarg.0 + IL_007d: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0082: stfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + .line 68,68 : 13,63 '' + IL_0087: ldarg.0 + IL_0088: ldtoken Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + IL_008d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0092: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0097: stfld int32 Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Size + .line 70,70 : 13,37 '' + IL_009c: ldarg.0 + IL_009d: ldarg.1 + IL_009e: ldarg.2 + IL_009f: call instance void Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::LoadIcon(class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute) + .line 71,71 : 9,10 '' + IL_00a4: ret + } // end of method CLISTMENUITEM::.ctor + + .method private hidebysig instance void + LoadIcon(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute attrib) cil managed + { + // Code size 117 (0x75) + .maxstack 3 + .locals init ([0] class [mscorlib]System.IO.Stream 'stream') + .line 81,81 : 17,37 '' + .try + { + IL_0000: ldarg.2 + IL_0001: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_HasIcon() + IL_0006: brtrue.s IL_000a + + .line 82,82 : 21,28 '' + IL_0008: leave.s IL_0074 + + .line 84,84 : 17,44 '' + IL_000a: ldarg.2 + IL_000b: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_UseEmbeddedIcon() + IL_0010: brfalse.s IL_004e + + .line 86,86 : 28,109 '' + IL_0012: ldarg.1 + IL_0013: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0018: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_001d: ldarg.2 + IL_001e: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IconID() + IL_0023: callvirt instance class [mscorlib]System.IO.Stream [mscorlib]System.Reflection.Assembly::GetManifestResourceStream(string) + IL_0028: stloc.0 + .line 88,88 : 25,44 '' + .try + { + IL_0029: ldloc.0 + IL_002a: brfalse.s IL_0042 + + .line 89,89 : 29,92 '' + IL_002c: ldarg.0 + IL_002d: call class Virtuoso.Miranda.Plugins.Native.IconImageCache Virtuoso.Miranda.Plugins.Native.IconImageCache::get_Singleton() + IL_0032: ldloc.0 + IL_0033: callvirt instance class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Native.IconImageCache::GetStreamedIcon(class [mscorlib]System.IO.Stream) + IL_0038: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_003d: stfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + IL_0042: leave.s IL_0064 + + } // end .try + finally + { + IL_0044: ldloc.0 + IL_0045: brfalse.s IL_004d + + IL_0047: ldloc.0 + IL_0048: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_004d: endfinally + .line 95,95 : 21,68 '' + } // end handler + IL_004e: ldarg.0 + IL_004f: ldarg.2 + IL_0050: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IconID() + IL_0055: call int32 [mscorlib]System.Int32::Parse(string) + IL_005a: call native int Virtuoso.Miranda.Plugins.Infrastructure.Skin::LoadIcon(int32) + IL_005f: stfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + IL_0064: leave.s IL_0074 + + .line 97,97 : 13,18 '' + } // end .try + catch [mscorlib]System.Object + { + IL_0066: pop + .line 99,99 : 17,41 '' + IL_0067: ldarg.0 + IL_0068: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_006d: stfld native int Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::Icon + IL_0072: leave.s IL_0074 + + .line 101,101 : 9,10 '' + } // end handler + IL_0074: ret + } // end of method CLISTMENUITEM::LoadIcon + +} // end of class Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Resources.TextResources + extends [mscorlib]System.Object +{ + .custom instance void [System]System.CodeDom.Compiler.GeneratedCodeAttribute::.ctor(string, + string) = ( 01 00 33 53 79 73 74 65 6D 2E 52 65 73 6F 75 72 // ..3System.Resour + 63 65 73 2E 54 6F 6F 6C 73 2E 53 74 72 6F 6E 67 // ces.Tools.Strong + 6C 79 54 79 70 65 64 52 65 73 6F 75 72 63 65 42 // lyTypedResourceB + 75 69 6C 64 65 72 07 34 2E 30 2E 30 2E 30 00 00 ) // uilder.4.0.0.0.. + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private static class [mscorlib]System.Resources.ResourceManager resourceMan + .field private static class [mscorlib]System.Globalization.CultureInfo resourceCulture + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 31,32 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Resources\\TextResources.Designer.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 33,33 : 9,10 '' + IL_0006: ret + } // end of method TextResources::.ctor + + .method assembly hidebysig specialname static + class [mscorlib]System.Resources.ResourceManager + get_ResourceManager() cil managed + { + // Code size 51 (0x33) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Resources.ResourceManager temp) + .line 41,41 : 17,63 '' + IL_0000: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::resourceMan + IL_0005: ldnull + IL_0006: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_000b: brfalse.s IL_002d + + .line 42,42 : 21,198 '' + IL_000d: ldstr "Virtuoso.Miranda.Plugins.Resources.TextResources" + IL_0012: ldtoken Virtuoso.Miranda.Plugins.Resources.TextResources + IL_0017: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_001c: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0021: newobj instance void [mscorlib]System.Resources.ResourceManager::.ctor(string, + class [mscorlib]System.Reflection.Assembly) + IL_0026: stloc.0 + .line 43,43 : 21,40 '' + IL_0027: ldloc.0 + IL_0028: stsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::resourceMan + .line 45,45 : 17,36 '' + IL_002d: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::resourceMan + IL_0032: ret + } // end of method TextResources::get_ResourceManager + + .method assembly hidebysig specialname static + class [mscorlib]System.Globalization.CultureInfo + get_Culture() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 56,56 : 17,40 '' + IL_0000: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_0005: ret + } // end of method TextResources::get_Culture + + .method assembly hidebysig specialname static + void set_Culture(class [mscorlib]System.Globalization.CultureInfo 'value') cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 59,59 : 17,41 '' + IL_0000: ldarg.0 + IL_0001: stsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + .line 60,60 : 13,14 '' + IL_0006: ret + } // end of method TextResources::set_Culture + + .method assembly hidebysig specialname static + string get_Balloon_Text_FusionFinished() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 68,68 : 17,98 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "Balloon_Text_FusionFinished" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_Balloon_Text_FusionFinished + + .method assembly hidebysig specialname static + string get_Config_General() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 77,77 : 17,85 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "Config_General" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_Config_General + + .method assembly hidebysig specialname static + string get_Config_General_About() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 86,86 : 17,91 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "Config_General_About" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_Config_General_About + + .method assembly hidebysig specialname static + string get_Config_General_About_Description() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 95,95 : 17,103 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "Config_General_About_Description" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_Config_General_About_Description + + .method assembly hidebysig specialname static + string get_Config_General_Description() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 104,104 : 17,97 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "Config_General_Description" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_Config_General_Description + + .method assembly hidebysig specialname static + string get_Config_Management() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 113,113 : 17,88 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "Config_Management" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_Config_Management + + .method assembly hidebysig specialname static + string get_Config_Management_Description() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 122,122 : 17,100 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "Config_Management_Description" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_Config_Management_Description + + .method assembly hidebysig specialname static + string get_Config_Management_Plugins() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 131,131 : 17,96 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "Config_Management_Plugins" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_Config_Management_Plugins + + .method assembly hidebysig specialname static + string get_Config_Management_Plugins_Description() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 140,140 : 17,108 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "Config_Management_Plugins_Description" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_Config_Management_Plugins_Description + + .method assembly hidebysig specialname static + string get_ExceptionMsg_CallInvalidForUnknownNetworkProtocol() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 149,149 : 17,120 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_CallInvalidForUnknownNetworkProtocol" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_CallInvalidForUnknownNetworkProtocol + + .method assembly hidebysig specialname static + string get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 158,158 : 17,124 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_CannotDetectMirandaDefaultStringEncod" + + "ing" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding + + .method assembly hidebysig specialname static + string get_ExceptionMsg_CannotFinishMarshaling() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 167,167 : 17,106 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_CannotFinishMarshaling" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_CannotFinishMarshaling + + .method assembly hidebysig specialname static + string get_ExceptionMsg_CannotOpenHomePage() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 176,176 : 17,102 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_CannotOpenHomePage" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_CannotOpenHomePage + + .method assembly hidebysig specialname static + string get_ExceptionMsg_CannotRegisterBuiltinProtocol() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 185,185 : 17,113 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_CannotRegisterBuiltinProtocol" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_CannotRegisterBuiltinProtocol + + .method assembly hidebysig specialname static + string get_ExceptionMsg_ConfigurationFailed() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 194,194 : 17,103 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_ConfigurationFailed" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_ConfigurationFailed + + .method assembly hidebysig specialname static + string get_ExceptionMsg_DuplicitLoaderOptions() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 203,203 : 17,105 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_DuplicitLoaderOptions" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_DuplicitLoaderOptions + + .method assembly hidebysig specialname static + string get_ExceptionMsg_ErrorWhileCallingMirandaService() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 212,212 : 17,115 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_ErrorWhileCallingMirandaService" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService + + .method assembly hidebysig specialname static + string get_ExceptionMsg_ErrorWhileLoadingPlugins() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 221,221 : 17,108 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_ErrorWhileLoadingPlugins" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_ErrorWhileLoadingPlugins + + .method assembly hidebysig specialname static + string get_ExceptionMsg_FeatureNotAvailableInDomain() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 230,230 : 17,111 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_FeatureNotAvailableInDomain" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_FeatureNotAvailableInDomain + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_AssemblyLoadError() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 239,239 : 17,113 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_AssemblyLoadError" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_AssemblyLoadError + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_CannotLoadStringResolver() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 248,248 : 17,120 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_CannotLoadStringResolver" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_CannotLoadStringResolver + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_EventHookingFailed() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 257,257 : 17,114 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_EventHookingFailed" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_EventHookingFailed + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 266,266 : 17,123 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_InvalidMethodSignature() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 275,275 : 17,118 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_InvalidMethodSignature" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_InvalidMethodSignature + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_NoValidPluginCtorFound() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 284,284 : 17,118 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_NoValidPluginCtorFound" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_NoValidPluginCtorFound + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 293,293 : 17,124 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_ServiceFunctionAlreadyExi" + + "sts" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_ServiceFunctionCreationFailed() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 302,302 : 17,125 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_ServiceFunctionCreationFa" + + "iled" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionCreationFailed + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_UnableToLoadMasterType() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 311,311 : 17,118 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_UnableToLoadMasterType" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_UnableToLoadMasterType + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 320,320 : 17,125 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_UnableToSetUpPluginDescri" + + "ptor" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 329,329 : 17,127 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_UnauthorizedToInstantiate" + + "Plugin" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable1_UnmanagedImageFound() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 338,338 : 17,115 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable1_UnmanagedImageFound" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable1_UnmanagedImageFound + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 347,347 : 17,125 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable2_ErrorWhileInstantiatingPl" + + "ugin" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 356,356 : 17,125 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable2_MirandaServiceReturnedFai" + + "lure" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 365,365 : 17,122 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable2_RuntimeVersionNotAvailable" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable + + .method assembly hidebysig specialname static + string get_ExceptionMsg_Formatable3_MenuItemServiceAlreadySet() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 374,374 : 17,121 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_Formatable3_MenuItemServiceAlreadySet" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_Formatable3_MenuItemServiceAlreadySet + + .method assembly hidebysig specialname static + string get_ExceptionMsg_HookNotFound() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 383,383 : 17,96 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_HookNotFound" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_HookNotFound + + .method assembly hidebysig specialname static + string get_ExceptionMsg_HyphenSxSNotSupported() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 392,392 : 17,105 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_HyphenSxSNotSupported" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_HyphenSxSNotSupported + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InternalErrorOccurred() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 401,401 : 17,105 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_InternalErrorOccurred" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_InternalErrorOccurred + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InteropBufferNotLocked() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 410,410 : 17,106 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_InteropBufferNotLocked" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_InteropBufferNotLocked + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InteropBufferNotUnlocked() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 419,419 : 17,108 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_InteropBufferNotUnlocked" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_InteropBufferNotUnlocked + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InvalidCrossThreadInteropBufferUnlock() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 428,428 : 17,121 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_InvalidCrossThreadInteropBufferUnlock" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_InvalidCrossThreadInteropBufferUnlock + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InvalidFusionContext() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 437,437 : 17,104 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_InvalidFusionContext" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_InvalidFusionContext + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InvalidHandle() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 446,446 : 17,97 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_InvalidHandle" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_InvalidHandle + + .method assembly hidebysig specialname static + string get_ExceptionMsg_InvalidValueToTranslate() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 455,455 : 17,107 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_InvalidValueToTranslate" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_InvalidValueToTranslate + + .method assembly hidebysig specialname static + string get_ExceptionMsg_IOErrorOccurred() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 464,464 : 17,99 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_IOErrorOccurred" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_IOErrorOccurred + + .method assembly hidebysig specialname static + string get_ExceptionMsg_MirandaContextNotAvailable() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 473,473 : 17,110 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_MirandaContextNotAvailable" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_MirandaContextNotAvailable + + .method assembly hidebysig specialname static + string get_ExceptionMsg_MirandaRestartRequired() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 482,482 : 17,106 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_MirandaRestartRequired" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_MirandaRestartRequired + + .method assembly hidebysig specialname static + string get_ExceptionMsg_OwnerUnknown() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 491,491 : 17,96 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_OwnerUnknown" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_OwnerUnknown + + .method assembly hidebysig specialname static + string get_ExceptionMsg_PluginAlreadyInitialized() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 500,500 : 17,108 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_PluginAlreadyInitialized" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_PluginAlreadyInitialized + + .method assembly hidebysig specialname static + string get_ExceptionMsg_PluginManagerAlreadyInitialized() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 509,509 : 17,115 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_PluginManagerAlreadyInitialized" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_PluginManagerAlreadyInitialized + + .method assembly hidebysig specialname static + string get_ExceptionMsg_PluginNotInitialized() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 518,518 : 17,104 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_PluginNotInitialized" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_PluginNotInitialized + + .method assembly hidebysig specialname static + string get_ExceptionMsg_SingletonNotInitializedYet() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 527,527 : 17,110 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_SingletonNotInitializedYet" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_SingletonNotInitializedYet + + .method assembly hidebysig specialname static + string get_ExceptionMsg_UnableToLoadConfiguration_StorageError() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 536,536 : 17,122 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_UnableToLoadConfiguration_StorageError" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_UnableToLoadConfiguration_StorageError + + .method assembly hidebysig specialname static + string get_ExceptionMsg_UnableToSaveConfiguration_StorageError() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 545,545 : 17,122 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_UnableToSaveConfiguration_StorageError" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_UnableToSaveConfiguration_StorageError + + .method assembly hidebysig specialname static + string get_ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 554,554 : 17,130 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "ExceptionMsg_UnableToUnloadPluginMangerFromCurrent" + + "AppDomain" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_HyphenCrashed() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 563,563 : 17,99 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Caption_HyphenCrashed" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Caption_HyphenCrashed + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_HyphenLoadFailed() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 572,572 : 17,102 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Caption_HyphenLoadFailed" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Caption_HyphenLoadFailed + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_LoadUnloadPlugins() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 581,581 : 17,103 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Caption_LoadUnloadPlugins" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Caption_LoadUnloadPlugins + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_LoadUnloadPluginsFailure() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 590,590 : 17,110 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Caption_LoadUnloadPluginsFailure" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Caption_LoadUnloadPluginsFailure + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_NoOptionsAvailable() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 599,599 : 17,104 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Caption_NoOptionsAvailable" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Caption_NoOptionsAvailable + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_NoPluginsLoaded() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 608,608 : 17,101 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Caption_NoPluginsLoaded" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Caption_NoPluginsLoaded + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_PluginReloadComplete() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 617,617 : 17,106 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Caption_PluginReloadComplete" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Caption_PluginReloadComplete + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_RuntimeVersionNotAvailable() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 626,626 : 17,112 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Caption_RuntimeVersionNotAvailable" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Caption_RuntimeVersionNotAvailable + + .method assembly hidebysig specialname static + string get_MsgBox_Caption_Warning() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 635,635 : 17,93 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Caption_Warning" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Caption_Warning + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable1_Caption_PluginError() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 644,644 : 17,109 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Formatable1_Caption_PluginError" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Formatable1_Caption_PluginError + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable1_Caption_PluginUpdated() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 653,653 : 17,111 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Formatable1_Caption_PluginUpdated" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Formatable1_Caption_PluginUpdated + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable1_Text_HyphenLoadFailed() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 662,662 : 17,111 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Formatable1_Text_HyphenLoadFailed" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Formatable1_Text_HyphenLoadFailed + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable1_Text_LoadUnloadPluginsFailure() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 671,671 : 17,119 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Formatable1_Text_LoadUnloadPluginsFailure" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Formatable1_Text_LoadUnloadPluginsFailure + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable1_Text_ModuleError() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 680,680 : 17,106 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Formatable1_Text_ModuleError" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Formatable1_Text_ModuleError + + .method assembly hidebysig specialname static + string get_MsgBox_Formatable2_Text_PluginError() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 689,689 : 17,106 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Formatable2_Text_PluginError" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Formatable2_Text_PluginError + + .method assembly hidebysig specialname static + string get_MsgBox_Text_GenericPluginError() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 698,698 : 17,101 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Text_GenericPluginError" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Text_GenericPluginError + + .method assembly hidebysig specialname static + string get_MsgBox_Text_HyphenCrashed() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 707,707 : 17,96 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Text_HyphenCrashed" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Text_HyphenCrashed + + .method assembly hidebysig specialname static + string get_MsgBox_Text_LoadUnloadPlugins_Unload() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 716,716 : 17,107 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Text_LoadUnloadPlugins_Unload" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Text_LoadUnloadPlugins_Unload + + .method assembly hidebysig specialname static + string get_MsgBox_Text_MirandaRestartRequired() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 725,725 : 17,105 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Text_MirandaRestartRequired" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Text_MirandaRestartRequired + + .method assembly hidebysig specialname static + string get_MsgBox_Text_NoOptionsAvailable() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 734,734 : 17,101 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Text_NoOptionsAvailable" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Text_NoOptionsAvailable + + .method assembly hidebysig specialname static + string get_MsgBox_Text_NoPluginsLoaded() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 743,743 : 17,98 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Text_NoPluginsLoaded" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Text_NoPluginsLoaded + + .method assembly hidebysig specialname static + string get_MsgBox_Text_PluginReloadComplete() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 752,752 : 17,103 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Text_PluginReloadComplete" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Text_PluginReloadComplete + + .method assembly hidebysig specialname static + string get_MsgBox_Text_PluginUpdated() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 761,761 : 17,96 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Text_PluginUpdated" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Text_PluginUpdated + + .method assembly hidebysig specialname static + string get_MsgBox_Text_UnableToReportError() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 770,770 : 17,102 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "MsgBox_Text_UnableToReportError" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_MsgBox_Text_UnableToReportError + + .method assembly hidebysig specialname static + string get_UI_Caption_Configure() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 779,779 : 17,91 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Caption_Configure" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Caption_Configure + + .method assembly hidebysig specialname static + string get_UI_Caption_Error() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 788,788 : 17,87 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Caption_Error" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Caption_Error + + .method assembly hidebysig specialname static + string get_UI_Formatable1_Text_PluginCrashed() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 797,797 : 17,104 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Formatable1_Text_PluginCrashed" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Formatable1_Text_PluginCrashed + + .method assembly hidebysig specialname static + string get_UI_Label_Empty() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 806,806 : 17,85 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Label_Empty" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Label_Empty + + .method assembly hidebysig specialname static + string get_UI_Label_SelectPluginToDisplayDescr() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 815,815 : 17,106 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Label_SelectPluginToDisplayDescr" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Label_SelectPluginToDisplayDescr + + .method assembly hidebysig specialname static + string get_UI_Label_Unknown() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 824,824 : 17,87 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Label_Unknown" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Label_Unknown + + .method assembly hidebysig specialname static + string get_UI_Text_ConfigureStandaloneModules() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 833,833 : 17,105 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Text_ConfigureStandaloneModules" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Text_ConfigureStandaloneModules + + .method assembly hidebysig specialname static + string get_UI_Text_Hyphen() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 842,842 : 17,85 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Text_Hyphen" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Text_Hyphen + + .method assembly hidebysig specialname static + string get_UI_Text_LoadUnloadPlugins() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 851,851 : 17,96 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Text_LoadUnloadPlugins" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Text_LoadUnloadPlugins + + .method assembly hidebysig specialname static + string get_UI_Text_ManagePlugins() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 860,860 : 17,92 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Text_ManagePlugins" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Text_ManagePlugins + + .method assembly hidebysig specialname static + string get_UI_Text_No() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 869,869 : 17,81 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Text_No" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Text_No + + .method assembly hidebysig specialname static + string get_UI_Text_ShowManagedMainMenu() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 878,878 : 17,98 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Text_ShowManagedMainMenu" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Text_ShowManagedMainMenu + + .method assembly hidebysig specialname static + string get_UI_Text_Yes() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 887,887 : 17,82 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_Text_Yes" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_Text_Yes + + .method assembly hidebysig specialname static + string get_UI_ToolTip_HyphenTrayIcon() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 896,896 : 17,96 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + IL_0005: ldstr "UI_ToolTip_HyphenTrayIcon" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::resourceCulture + IL_000f: callvirt instance string [mscorlib]System.Resources.ResourceManager::GetString(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: ret + } // end of method TextResources::get_UI_ToolTip_HyphenTrayIcon + + .property class [mscorlib]System.Resources.ResourceManager + ResourceManager() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .get class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager() + } // end of property TextResources::ResourceManager + .property class [mscorlib]System.Globalization.CultureInfo + Culture() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .set void Virtuoso.Miranda.Plugins.Resources.TextResources::set_Culture(class [mscorlib]System.Globalization.CultureInfo) + .get class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.TextResources::get_Culture() + } // end of property TextResources::Culture + .property string Balloon_Text_FusionFinished() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Balloon_Text_FusionFinished() + } // end of property TextResources::Balloon_Text_FusionFinished + .property string Config_General() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General() + } // end of property TextResources::Config_General + .property string Config_General_About() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_About() + } // end of property TextResources::Config_General_About + .property string Config_General_About_Description() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_About_Description() + } // end of property TextResources::Config_General_About_Description + .property string Config_General_Description() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_Description() + } // end of property TextResources::Config_General_Description + .property string Config_Management() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management() + } // end of property TextResources::Config_Management + .property string Config_Management_Description() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Description() + } // end of property TextResources::Config_Management_Description + .property string Config_Management_Plugins() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins() + } // end of property TextResources::Config_Management_Plugins + .property string Config_Management_Plugins_Description() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins_Description() + } // end of property TextResources::Config_Management_Plugins_Description + .property string ExceptionMsg_CallInvalidForUnknownNetworkProtocol() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CallInvalidForUnknownNetworkProtocol() + } // end of property TextResources::ExceptionMsg_CallInvalidForUnknownNetworkProtocol + .property string ExceptionMsg_CannotDetectMirandaDefaultStringEncoding() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding() + } // end of property TextResources::ExceptionMsg_CannotDetectMirandaDefaultStringEncoding + .property string ExceptionMsg_CannotFinishMarshaling() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotFinishMarshaling() + } // end of property TextResources::ExceptionMsg_CannotFinishMarshaling + .property string ExceptionMsg_CannotOpenHomePage() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotOpenHomePage() + } // end of property TextResources::ExceptionMsg_CannotOpenHomePage + .property string ExceptionMsg_CannotRegisterBuiltinProtocol() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotRegisterBuiltinProtocol() + } // end of property TextResources::ExceptionMsg_CannotRegisterBuiltinProtocol + .property string ExceptionMsg_ConfigurationFailed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ConfigurationFailed() + } // end of property TextResources::ExceptionMsg_ConfigurationFailed + .property string ExceptionMsg_DuplicitLoaderOptions() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_DuplicitLoaderOptions() + } // end of property TextResources::ExceptionMsg_DuplicitLoaderOptions + .property string ExceptionMsg_ErrorWhileCallingMirandaService() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + } // end of property TextResources::ExceptionMsg_ErrorWhileCallingMirandaService + .property string ExceptionMsg_ErrorWhileLoadingPlugins() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileLoadingPlugins() + } // end of property TextResources::ExceptionMsg_ErrorWhileLoadingPlugins + .property string ExceptionMsg_FeatureNotAvailableInDomain() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_FeatureNotAvailableInDomain() + } // end of property TextResources::ExceptionMsg_FeatureNotAvailableInDomain + .property string ExceptionMsg_Formatable1_AssemblyLoadError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_AssemblyLoadError() + } // end of property TextResources::ExceptionMsg_Formatable1_AssemblyLoadError + .property string ExceptionMsg_Formatable1_CannotLoadStringResolver() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_CannotLoadStringResolver() + } // end of property TextResources::ExceptionMsg_Formatable1_CannotLoadStringResolver + .property string ExceptionMsg_Formatable1_EventHookingFailed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_EventHookingFailed() + } // end of property TextResources::ExceptionMsg_Formatable1_EventHookingFailed + .property string ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden() + } // end of property TextResources::ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden + .property string ExceptionMsg_Formatable1_InvalidMethodSignature() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_InvalidMethodSignature() + } // end of property TextResources::ExceptionMsg_Formatable1_InvalidMethodSignature + .property string ExceptionMsg_Formatable1_NoValidPluginCtorFound() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_NoValidPluginCtorFound() + } // end of property TextResources::ExceptionMsg_Formatable1_NoValidPluginCtorFound + .property string ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists() + } // end of property TextResources::ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists + .property string ExceptionMsg_Formatable1_ServiceFunctionCreationFailed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionCreationFailed() + } // end of property TextResources::ExceptionMsg_Formatable1_ServiceFunctionCreationFailed + .property string ExceptionMsg_Formatable1_UnableToLoadMasterType() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnableToLoadMasterType() + } // end of property TextResources::ExceptionMsg_Formatable1_UnableToLoadMasterType + .property string ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor() + } // end of property TextResources::ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor + .property string ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin() + } // end of property TextResources::ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin + .property string ExceptionMsg_Formatable1_UnmanagedImageFound() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnmanagedImageFound() + } // end of property TextResources::ExceptionMsg_Formatable1_UnmanagedImageFound + .property string ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin() + } // end of property TextResources::ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin + .property string ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + } // end of property TextResources::ExceptionMsg_Formatable2_MirandaServiceReturnedFailure + .property string ExceptionMsg_Formatable2_RuntimeVersionNotAvailable() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable() + } // end of property TextResources::ExceptionMsg_Formatable2_RuntimeVersionNotAvailable + .property string ExceptionMsg_Formatable3_MenuItemServiceAlreadySet() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable3_MenuItemServiceAlreadySet() + } // end of property TextResources::ExceptionMsg_Formatable3_MenuItemServiceAlreadySet + .property string ExceptionMsg_HookNotFound() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_HookNotFound() + } // end of property TextResources::ExceptionMsg_HookNotFound + .property string ExceptionMsg_HyphenSxSNotSupported() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_HyphenSxSNotSupported() + } // end of property TextResources::ExceptionMsg_HyphenSxSNotSupported + .property string ExceptionMsg_InternalErrorOccurred() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InternalErrorOccurred() + } // end of property TextResources::ExceptionMsg_InternalErrorOccurred + .property string ExceptionMsg_InteropBufferNotLocked() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InteropBufferNotLocked() + } // end of property TextResources::ExceptionMsg_InteropBufferNotLocked + .property string ExceptionMsg_InteropBufferNotUnlocked() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InteropBufferNotUnlocked() + } // end of property TextResources::ExceptionMsg_InteropBufferNotUnlocked + .property string ExceptionMsg_InvalidCrossThreadInteropBufferUnlock() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidCrossThreadInteropBufferUnlock() + } // end of property TextResources::ExceptionMsg_InvalidCrossThreadInteropBufferUnlock + .property string ExceptionMsg_InvalidFusionContext() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidFusionContext() + } // end of property TextResources::ExceptionMsg_InvalidFusionContext + .property string ExceptionMsg_InvalidHandle() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidHandle() + } // end of property TextResources::ExceptionMsg_InvalidHandle + .property string ExceptionMsg_InvalidValueToTranslate() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidValueToTranslate() + } // end of property TextResources::ExceptionMsg_InvalidValueToTranslate + .property string ExceptionMsg_IOErrorOccurred() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_IOErrorOccurred() + } // end of property TextResources::ExceptionMsg_IOErrorOccurred + .property string ExceptionMsg_MirandaContextNotAvailable() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaContextNotAvailable() + } // end of property TextResources::ExceptionMsg_MirandaContextNotAvailable + .property string ExceptionMsg_MirandaRestartRequired() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaRestartRequired() + } // end of property TextResources::ExceptionMsg_MirandaRestartRequired + .property string ExceptionMsg_OwnerUnknown() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_OwnerUnknown() + } // end of property TextResources::ExceptionMsg_OwnerUnknown + .property string ExceptionMsg_PluginAlreadyInitialized() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginAlreadyInitialized() + } // end of property TextResources::ExceptionMsg_PluginAlreadyInitialized + .property string ExceptionMsg_PluginManagerAlreadyInitialized() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginManagerAlreadyInitialized() + } // end of property TextResources::ExceptionMsg_PluginManagerAlreadyInitialized + .property string ExceptionMsg_PluginNotInitialized() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + } // end of property TextResources::ExceptionMsg_PluginNotInitialized + .property string ExceptionMsg_SingletonNotInitializedYet() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_SingletonNotInitializedYet() + } // end of property TextResources::ExceptionMsg_SingletonNotInitializedYet + .property string ExceptionMsg_UnableToLoadConfiguration_StorageError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToLoadConfiguration_StorageError() + } // end of property TextResources::ExceptionMsg_UnableToLoadConfiguration_StorageError + .property string ExceptionMsg_UnableToSaveConfiguration_StorageError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToSaveConfiguration_StorageError() + } // end of property TextResources::ExceptionMsg_UnableToSaveConfiguration_StorageError + .property string ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain() + } // end of property TextResources::ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain + .property string MsgBox_Caption_HyphenCrashed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_HyphenCrashed() + } // end of property TextResources::MsgBox_Caption_HyphenCrashed + .property string MsgBox_Caption_HyphenLoadFailed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_HyphenLoadFailed() + } // end of property TextResources::MsgBox_Caption_HyphenLoadFailed + .property string MsgBox_Caption_LoadUnloadPlugins() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_LoadUnloadPlugins() + } // end of property TextResources::MsgBox_Caption_LoadUnloadPlugins + .property string MsgBox_Caption_LoadUnloadPluginsFailure() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_LoadUnloadPluginsFailure() + } // end of property TextResources::MsgBox_Caption_LoadUnloadPluginsFailure + .property string MsgBox_Caption_NoOptionsAvailable() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_NoOptionsAvailable() + } // end of property TextResources::MsgBox_Caption_NoOptionsAvailable + .property string MsgBox_Caption_NoPluginsLoaded() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_NoPluginsLoaded() + } // end of property TextResources::MsgBox_Caption_NoPluginsLoaded + .property string MsgBox_Caption_PluginReloadComplete() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_PluginReloadComplete() + } // end of property TextResources::MsgBox_Caption_PluginReloadComplete + .property string MsgBox_Caption_RuntimeVersionNotAvailable() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_RuntimeVersionNotAvailable() + } // end of property TextResources::MsgBox_Caption_RuntimeVersionNotAvailable + .property string MsgBox_Caption_Warning() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_Warning() + } // end of property TextResources::MsgBox_Caption_Warning + .property string MsgBox_Formatable1_Caption_PluginError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Caption_PluginError() + } // end of property TextResources::MsgBox_Formatable1_Caption_PluginError + .property string MsgBox_Formatable1_Caption_PluginUpdated() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Caption_PluginUpdated() + } // end of property TextResources::MsgBox_Formatable1_Caption_PluginUpdated + .property string MsgBox_Formatable1_Text_HyphenLoadFailed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_HyphenLoadFailed() + } // end of property TextResources::MsgBox_Formatable1_Text_HyphenLoadFailed + .property string MsgBox_Formatable1_Text_LoadUnloadPluginsFailure() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_LoadUnloadPluginsFailure() + } // end of property TextResources::MsgBox_Formatable1_Text_LoadUnloadPluginsFailure + .property string MsgBox_Formatable1_Text_ModuleError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_ModuleError() + } // end of property TextResources::MsgBox_Formatable1_Text_ModuleError + .property string MsgBox_Formatable2_Text_PluginError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable2_Text_PluginError() + } // end of property TextResources::MsgBox_Formatable2_Text_PluginError + .property string MsgBox_Text_GenericPluginError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_GenericPluginError() + } // end of property TextResources::MsgBox_Text_GenericPluginError + .property string MsgBox_Text_HyphenCrashed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_HyphenCrashed() + } // end of property TextResources::MsgBox_Text_HyphenCrashed + .property string MsgBox_Text_LoadUnloadPlugins_Unload() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_LoadUnloadPlugins_Unload() + } // end of property TextResources::MsgBox_Text_LoadUnloadPlugins_Unload + .property string MsgBox_Text_MirandaRestartRequired() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_MirandaRestartRequired() + } // end of property TextResources::MsgBox_Text_MirandaRestartRequired + .property string MsgBox_Text_NoOptionsAvailable() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_NoOptionsAvailable() + } // end of property TextResources::MsgBox_Text_NoOptionsAvailable + .property string MsgBox_Text_NoPluginsLoaded() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_NoPluginsLoaded() + } // end of property TextResources::MsgBox_Text_NoPluginsLoaded + .property string MsgBox_Text_PluginReloadComplete() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_PluginReloadComplete() + } // end of property TextResources::MsgBox_Text_PluginReloadComplete + .property string MsgBox_Text_PluginUpdated() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_PluginUpdated() + } // end of property TextResources::MsgBox_Text_PluginUpdated + .property string MsgBox_Text_UnableToReportError() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_UnableToReportError() + } // end of property TextResources::MsgBox_Text_UnableToReportError + .property string UI_Caption_Configure() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Caption_Configure() + } // end of property TextResources::UI_Caption_Configure + .property string UI_Caption_Error() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Caption_Error() + } // end of property TextResources::UI_Caption_Error + .property string UI_Formatable1_Text_PluginCrashed() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Formatable1_Text_PluginCrashed() + } // end of property TextResources::UI_Formatable1_Text_PluginCrashed + .property string UI_Label_Empty() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Empty() + } // end of property TextResources::UI_Label_Empty + .property string UI_Label_SelectPluginToDisplayDescr() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_SelectPluginToDisplayDescr() + } // end of property TextResources::UI_Label_SelectPluginToDisplayDescr + .property string UI_Label_Unknown() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Unknown() + } // end of property TextResources::UI_Label_Unknown + .property string UI_Text_ConfigureStandaloneModules() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ConfigureStandaloneModules() + } // end of property TextResources::UI_Text_ConfigureStandaloneModules + .property string UI_Text_Hyphen() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Hyphen() + } // end of property TextResources::UI_Text_Hyphen + .property string UI_Text_LoadUnloadPlugins() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_LoadUnloadPlugins() + } // end of property TextResources::UI_Text_LoadUnloadPlugins + .property string UI_Text_ManagePlugins() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ManagePlugins() + } // end of property TextResources::UI_Text_ManagePlugins + .property string UI_Text_No() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_No() + } // end of property TextResources::UI_Text_No + .property string UI_Text_ShowManagedMainMenu() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ShowManagedMainMenu() + } // end of property TextResources::UI_Text_ShowManagedMainMenu + .property string UI_Text_Yes() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Yes() + } // end of property TextResources::UI_Text_Yes + .property string UI_ToolTip_HyphenTrayIcon() + { + .get string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_ToolTip_HyphenTrayIcon() + } // end of property TextResources::UI_ToolTip_HyphenTrayIcon +} // end of class Virtuoso.Miranda.Plugins.Resources.TextResources + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Resources.VisualResources + extends [mscorlib]System.Object +{ + .custom instance void [System]System.CodeDom.Compiler.GeneratedCodeAttribute::.ctor(string, + string) = ( 01 00 33 53 79 73 74 65 6D 2E 52 65 73 6F 75 72 // ..3System.Resour + 63 65 73 2E 54 6F 6F 6C 73 2E 53 74 72 6F 6E 67 // ces.Tools.Strong + 6C 79 54 79 70 65 64 52 65 73 6F 75 72 63 65 42 // lyTypedResourceB + 75 69 6C 64 65 72 07 34 2E 30 2E 30 2E 30 00 00 ) // uilder.4.0.0.0.. + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private static class [mscorlib]System.Resources.ResourceManager resourceMan + .field private static class [mscorlib]System.Globalization.CultureInfo resourceCulture + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 31,32 : 9,35 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Resources\\VisualResources.Designer.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 33,33 : 9,10 '' + IL_0006: ret + } // end of method VisualResources::.ctor + + .method assembly hidebysig specialname static + class [mscorlib]System.Resources.ResourceManager + get_ResourceManager() cil managed + { + // Code size 51 (0x33) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Resources.ResourceManager temp) + .line 41,41 : 17,63 '' + IL_0000: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceMan + IL_0005: ldnull + IL_0006: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_000b: brfalse.s IL_002d + + .line 42,42 : 21,202 '' + IL_000d: ldstr "Virtuoso.Miranda.Plugins.Resources.VisualResources" + IL_0012: ldtoken Virtuoso.Miranda.Plugins.Resources.VisualResources + IL_0017: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_001c: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0021: newobj instance void [mscorlib]System.Resources.ResourceManager::.ctor(string, + class [mscorlib]System.Reflection.Assembly) + IL_0026: stloc.0 + .line 43,43 : 21,40 '' + IL_0027: ldloc.0 + IL_0028: stsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceMan + .line 45,45 : 17,36 '' + IL_002d: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceMan + IL_0032: ret + } // end of method VisualResources::get_ResourceManager + + .method assembly hidebysig specialname static + class [mscorlib]System.Globalization.CultureInfo + get_Culture() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 56,56 : 17,40 '' + IL_0000: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_0005: ret + } // end of method VisualResources::get_Culture + + .method assembly hidebysig specialname static + void set_Culture(class [mscorlib]System.Globalization.CultureInfo 'value') cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 59,59 : 17,41 '' + IL_0000: ldarg.0 + IL_0001: stsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + .line 60,60 : 13,14 '' + IL_0006: ret + } // end of method VisualResources::set_Culture + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Icon + get_Engine() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 68,68 : 17,83 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0005: ldstr "Engine" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 69,69 : 17,53 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Icon + IL_001b: ret + } // end of method VisualResources::get_Engine + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Icon + get_Icon_16x16_Configuration() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 78,78 : 17,101 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0005: ldstr "Icon_16x16_Configuration" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 79,79 : 17,53 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Icon + IL_001b: ret + } // end of method VisualResources::get_Icon_16x16_Configuration + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Icon + get_Icon_16x16_Hyphen() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 88,88 : 17,94 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0005: ldstr "Icon_16x16_Hyphen" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 89,89 : 17,53 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Icon + IL_001b: ret + } // end of method VisualResources::get_Icon_16x16_Hyphen + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Icon + get_Icon_32x32_Configuration() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 98,98 : 17,101 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0005: ldstr "Icon_32x32_Configuration" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 99,99 : 17,53 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Icon + IL_001b: ret + } // end of method VisualResources::get_Icon_32x32_Configuration + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Icon + get_Icon_32x32_ConfigurationWarning() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 108,108 : 17,108 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0005: ldstr "Icon_32x32_ConfigurationWarning" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 109,109 : 17,53 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Icon + IL_001b: ret + } // end of method VisualResources::get_Icon_32x32_ConfigurationWarning + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Image_48x48_Warning() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 118,118 : 17,96 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0005: ldstr "Image_48x48_Warning" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 119,119 : 17,55 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Bitmap + IL_001b: ret + } // end of method VisualResources::get_Image_48x48_Warning + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Image_64x67_Configuration() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 128,128 : 17,102 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0005: ldstr "Image_64x67_Configuration" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 129,129 : 17,55 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Bitmap + IL_001b: ret + } // end of method VisualResources::get_Image_64x67_Configuration + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Image_64x67_Information() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 138,138 : 17,100 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0005: ldstr "Image_64x67_Information" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 139,139 : 17,55 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Bitmap + IL_001b: ret + } // end of method VisualResources::get_Image_64x67_Information + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Image_64x67_Management() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 148,148 : 17,99 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + IL_0005: ldstr "Image_64x67_Management" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 149,149 : 17,55 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Bitmap + IL_001b: ret + } // end of method VisualResources::get_Image_64x67_Management + + .property class [mscorlib]System.Resources.ResourceManager + ResourceManager() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .get class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager() + } // end of property VisualResources::ResourceManager + .property class [mscorlib]System.Globalization.CultureInfo + Culture() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .set void Virtuoso.Miranda.Plugins.Resources.VisualResources::set_Culture(class [mscorlib]System.Globalization.CultureInfo) + .get class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Culture() + } // end of property VisualResources::Culture + .property class [System.Drawing]System.Drawing.Icon + Engine() + { + .get class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Engine() + } // end of property VisualResources::Engine + .property class [System.Drawing]System.Drawing.Icon + Icon_16x16_Configuration() + { + .get class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_16x16_Configuration() + } // end of property VisualResources::Icon_16x16_Configuration + .property class [System.Drawing]System.Drawing.Icon + Icon_16x16_Hyphen() + { + .get class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_16x16_Hyphen() + } // end of property VisualResources::Icon_16x16_Hyphen + .property class [System.Drawing]System.Drawing.Icon + Icon_32x32_Configuration() + { + .get class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_32x32_Configuration() + } // end of property VisualResources::Icon_32x32_Configuration + .property class [System.Drawing]System.Drawing.Icon + Icon_32x32_ConfigurationWarning() + { + .get class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_32x32_ConfigurationWarning() + } // end of property VisualResources::Icon_32x32_ConfigurationWarning + .property class [System.Drawing]System.Drawing.Bitmap + Image_48x48_Warning() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_48x48_Warning() + } // end of property VisualResources::Image_48x48_Warning + .property class [System.Drawing]System.Drawing.Bitmap + Image_64x67_Configuration() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Configuration() + } // end of property VisualResources::Image_64x67_Configuration + .property class [System.Drawing]System.Drawing.Bitmap + Image_64x67_Information() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Information() + } // end of property VisualResources::Image_64x67_Information + .property class [System.Drawing]System.Drawing.Bitmap + Image_64x67_Management() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Management() + } // end of property VisualResources::Image_64x67_Management +} // end of class Virtuoso.Miranda.Plugins.Resources.VisualResources + +.class private abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.SynchronizationHelper + extends [mscorlib]System.Object +{ + .method private hidebysig static void VerifyNotNull(object obj) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 35,35 : 13,29 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\SynchronizationHelper.cs' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_0009 + + .line 36,36 : 17,51 '' + IL_0003: newobj instance void [mscorlib]System.ArgumentNullException::.ctor() + IL_0008: throw + + .line 37,37 : 9,10 '' + IL_0009: ret + } // end of method SynchronizationHelper::VerifyNotNull + + .method public hidebysig static void EndUpdate(object obj) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 45,45 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + .line 46,46 : 13,31 '' + IL_0006: ldarg.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Exit(object) + .line 47,47 : 9,10 '' + IL_000c: ret + } // end of method SynchronizationHelper::EndUpdate + + .method public hidebysig static void BeginPluginUpdate(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 51,51 : 13,35 '' + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + .line 52,52 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 53,53 : 9,10 '' + IL_000c: ret + } // end of method SynchronizationHelper::BeginPluginUpdate + + .method public hidebysig static void BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor descriptor) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 57,57 : 13,39 '' + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + .line 58,58 : 13,39 '' + IL_0006: ldarg.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 59,59 : 9,10 '' + IL_000c: ret + } // end of method SynchronizationHelper::BeginDescriptorUpdate + + .method public hidebysig static void BeginMenuItemUpdate(class Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute item) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 63,63 : 13,33 '' + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + .line 64,64 : 13,33 '' + IL_0006: ldarg.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 65,65 : 9,10 '' + IL_000c: ret + } // end of method SynchronizationHelper::BeginMenuItemUpdate + + .method public hidebysig static void BeginCollectionUpdate(class [mscorlib]System.Collections.IList collection) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 69,69 : 13,39 '' + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + .line 70,70 : 13,39 '' + IL_0006: ldarg.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 71,71 : 9,10 '' + IL_000c: ret + } // end of method SynchronizationHelper::BeginCollectionUpdate + + .method public hidebysig static void BeginCollectionUpdate(class [mscorlib]System.Collections.IDictionary dictionary) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 75,75 : 13,39 '' + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + .line 76,76 : 13,39 '' + IL_0006: ldarg.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 77,77 : 9,10 '' + IL_000c: ret + } // end of method SynchronizationHelper::BeginCollectionUpdate + + .method public hidebysig static void BeginHandleUpdate(class Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject handle) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 81,81 : 13,35 '' + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull(object) + .line 82,82 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 83,83 : 9,10 '' + IL_000c: ret + } // end of method SynchronizationHelper::BeginHandleUpdate + +} // end of class Virtuoso.Miranda.Plugins.SynchronizationHelper + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.ControlCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 29,29 : 9,47 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\ControlCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + .line 29,29 : 50,51 '' + IL_0007: ret + } // end of method ControlCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.ControlCollection + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.ModuleCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 29,29 : 9,46 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\ModuleCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + .line 29,29 : 49,50 '' + IL_0007: ret + } // end of method ModuleCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.ModuleCollection + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection + extends class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Collections.ModuleCollection list) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 31,31 : 9,78 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\ModuleReadOnlyCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::.ctor(class [mscorlib]System.Collections.Generic.IList`1) + .line 31,31 : 81,82 '' + IL_0007: ret + } // end of method ModuleReadOnlyCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 27,27 : 9,62 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\CustomApiExportDescriptorCollection.cs' + IL_0000: ldarg.0 + IL_0001: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor() + .line 27,27 : 65,66 '' + IL_0006: ret + } // end of method CustomApiExportDescriptorCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Collections.ConfigurationValues + extends class [mscorlib]System.Collections.Generic.Dictionary`2 +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 28,28 : 9,47 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Collections\\ConfigurationValues.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + .line 28,28 : 50,51 '' + IL_0007: ret + } // end of method ConfigurationValues::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 29,29 : 9,110 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext) + .line 29,29 : 113,114 '' + IL_0008: ret + } // end of method ConfigurationValues::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ + .method public hidebysig newslot specialname abstract virtual + instance string get_Name() cil managed + { + } // end of method IConfigurablePlugin::get_Name + + .method public hidebysig newslot specialname abstract virtual + instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + get_Configuration() cil managed + { + } // end of method IConfigurablePlugin::get_Configuration + + .method public hidebysig newslot abstract virtual + instance void PopulateConfiguration(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories) cil managed + { + } // end of method IConfigurablePlugin::PopulateConfiguration + + .method public hidebysig newslot abstract virtual + instance void ResetConfiguration() cil managed + { + } // end of method IConfigurablePlugin::ResetConfiguration + + .method public hidebysig newslot abstract virtual + instance void ReloadConfiguration() cil managed + { + } // end of method IConfigurablePlugin::ReloadConfiguration + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + } // end of property IConfigurablePlugin::Name + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + Configuration() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Configuration() + } // end of property IConfigurablePlugin::Configuration +} // end of class Virtuoso.Miranda.Plugins.IConfigurablePlugin + +.class interface private abstract auto ansi Virtuoso.Miranda.Plugins.IConfigurablePluginBase`1<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) TConfiguration> + implements Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ + .method public hidebysig newslot specialname abstract virtual + instance !TConfiguration get_PluginConfiguration() cil managed + { + } // end of method IConfigurablePluginBase`1::get_PluginConfiguration + + .property instance !TConfiguration PluginConfiguration() + { + .get instance !TConfiguration Virtuoso.Miranda.Plugins.IConfigurablePluginBase`1::get_PluginConfiguration() + } // end of property IConfigurablePluginBase`1::PluginConfiguration +} // end of class Virtuoso.Miranda.Plugins.IConfigurablePluginBase`1 + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) TConfiguration> + extends Virtuoso.Miranda.Plugins.MirandaPlugin + implements class Virtuoso.Miranda.Plugins.IConfigurablePluginBase`1, + Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ + .field private !TConfiguration pluginConfiguration + .field private class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] configuration + .method public hidebysig newslot specialname virtual final + instance !TConfiguration get_PluginConfiguration() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 35,35 : 19,46 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\ConfigurableMirandaPlugin.cs' + IL_0000: ldarg.0 + IL_0001: ldfld !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + IL_0006: ret + } // end of method ConfigurableMirandaPlugin`1::get_PluginConfiguration + + .method private hidebysig newslot specialname virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + Virtuoso.Miranda.Plugins.IConfigurablePlugin.get_Configuration() cil managed + { + .override Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Configuration + // Code size 42 (0x2a) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$0$0000, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$0$0001) + .line 41,41 : 19,111 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::configuration + IL_0006: dup + IL_0007: brtrue.s IL_0029 + + IL_0009: pop + IL_000a: ldarg.0 + IL_000b: ldc.i4.1 + IL_000c: newarr Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: ldc.i4.0 + IL_0014: ldarg.0 + IL_0015: ldfld !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + IL_001a: box !TConfiguration + IL_001f: stelem.ref + IL_0020: ldloc.0 + IL_0021: dup + IL_0022: stloc.1 + IL_0023: stfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::configuration + IL_0028: ldloc.1 + IL_0029: ret + } // end of method ConfigurableMirandaPlugin`1::Virtuoso.Miranda.Plugins.IConfigurablePlugin.get_Configuration + + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 48,48 : 9,46 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::.ctor() + .line 48,48 : 49,50 '' + IL_0006: ret + } // end of method ConfigurableMirandaPlugin`1::.ctor + + .method assembly hidebysig strict virtual + instance void AfterPluginInitializationInternal() cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 56,56 : 13,93 '' + IL_0000: ldarg.0 + IL_0001: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Load() + IL_0006: stfld !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + .line 57,57 : 13,54 '' + IL_000b: ldarg.0 + IL_000c: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginInitializationInternal() + .line 58,58 : 9,10 '' + IL_0011: ret + } // end of method ConfigurableMirandaPlugin`1::AfterPluginInitializationInternal + + .method assembly hidebysig strict virtual + instance void BeforePluginDisableInternal() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 62,62 : 13,33 '' + IL_0000: ldarg.0 + IL_0001: call instance void class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::SaveConfiguration() + .line 63,63 : 13,48 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforePluginDisableInternal() + .line 64,64 : 9,10 '' + IL_000c: ret + } // end of method ConfigurableMirandaPlugin`1::BeforePluginDisableInternal + + .method assembly hidebysig strict virtual + instance void BeforeMirandaShutdownInternal() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 68,68 : 13,33 '' + IL_0000: ldarg.0 + IL_0001: call instance void class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::SaveConfiguration() + .line 69,69 : 13,50 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.MirandaPlugin::BeforeMirandaShutdownInternal() + .line 70,70 : 9,10 '' + IL_000c: ret + } // end of method ConfigurableMirandaPlugin`1::BeforeMirandaShutdownInternal + + .method private hidebysig instance void + SaveConfiguration() cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 75,75 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: ldflda !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + IL_0006: constrained. !TConfiguration + IL_000c: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save() + .line 76,76 : 9,10 '' + IL_0011: ret + } // end of method ConfigurableMirandaPlugin`1::SaveConfiguration + + .method public hidebysig newslot virtual final + instance void ResetConfiguration() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 80,80 : 13,112 '' + IL_0000: ldarg.0 + IL_0001: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration() + IL_0006: stfld !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + .line 81,81 : 9,10 '' + IL_000b: ret + } // end of method ConfigurableMirandaPlugin`1::ResetConfiguration + + .method public hidebysig newslot virtual final + instance void ReloadConfiguration() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 85,85 : 13,93 '' + IL_0000: ldarg.0 + IL_0001: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Load() + IL_0006: stfld !0 class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::pluginConfiguration + .line 86,86 : 9,10 '' + IL_000b: ret + } // end of method ConfigurableMirandaPlugin`1::ReloadConfiguration + + .method public hidebysig newslot abstract virtual + instance void PopulateConfiguration(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories) cil managed + { + } // end of method ConfigurableMirandaPlugin`1::PopulateConfiguration + + .method public hidebysig specialname virtual + instance bool get_HasOptions() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 96,96 : 19,31 '' + IL_0000: ldc.i4.1 + IL_0001: ret + } // end of method ConfigurableMirandaPlugin`1::get_HasOptions + + .property instance !TConfiguration PluginConfiguration() + { + .get instance !TConfiguration Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::get_PluginConfiguration() + } // end of property ConfigurableMirandaPlugin`1::PluginConfiguration + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + Virtuoso.Miranda.Plugins.IConfigurablePlugin.Configuration() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::Virtuoso.Miranda.Plugins.IConfigurablePlugin.get_Configuration() + } // end of property ConfigurableMirandaPlugin`1::Virtuoso.Miranda.Plugins.IConfigurablePlugin.Configuration + .property instance bool HasOptions() + { + .get instance bool Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::get_HasOptions() + } // end of property ConfigurableMirandaPlugin`1::HasOptions +} // end of class Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1 + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor + extends [mscorlib]System.Object +{ + .field private class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin + .field private class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin) cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .line 28,28 : 9,72 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\ConfigurableEntityDescriptor.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 30,30 : 13,32 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 31,31 : 17,59 '' + IL_0009: ldstr "plugin" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 33,33 : 13,34 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: stfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::plugin + .line 34,34 : 9,10 '' + IL_001b: ret + } // end of method ConfigurableEntityDescriptor::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin + get_Plugin() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 43,43 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::plugin + IL_0006: ret + } // end of method ConfigurableEntityDescriptor::get_Plugin + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection + get_Categories() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 49,49 : 19,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::categories + IL_0006: ret + } // end of method ConfigurableEntityDescriptor::get_Categories + + .method public hidebysig specialname instance void + set_Categories(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 50,50 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::categories + .line 50,50 : 39,40 '' + IL_0007: ret + } // end of method ConfigurableEntityDescriptor::set_Categories + + .property instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin + Plugin() + { + .get instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin() + } // end of property ConfigurableEntityDescriptor::Plugin + .property instance class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection + Categories() + { + .get instance class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Categories() + .set instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::set_Categories(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection) + } // end of property ConfigurableEntityDescriptor::Categories +} // end of class Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + extends [System.Windows.Forms]System.Windows.Forms.UserControl +{ + .field private bool dirty + .field private class Virtuoso.Miranda.Plugins.Configuration.CategoryItem parentItem + .field private string configurationParameter + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 33,33 : 9,40 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemControl.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.UserControl::.ctor() + .line 35,35 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::InitializeComponent() + .line 36,36 : 9,10 '' + IL_000c: ret + } // end of method CategoryItemControl::.ctor + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 85 (0x55) + .maxstack 6 + .line 40,40 : 13,34 '' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 44,44 : 13,65 '' + IL_0006: ldarg.0 + IL_0007: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Window() + IL_000c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 45,45 : 13,147 '' + IL_0011: ldarg.0 + IL_0012: ldstr "Tahoma" + IL_0017: ldc.r4 8. + IL_001c: ldc.i4.0 + IL_001d: ldc.i4.3 + IL_001e: ldc.i4 0xee + IL_0023: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0028: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 46,46 : 13,47 '' + IL_002d: ldarg.0 + IL_002e: ldstr "CategoryItemControl" + IL_0033: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 47,47 : 13,59 '' + IL_0038: ldarg.0 + IL_0039: ldc.i4 0x318 + IL_003e: ldc.i4 0x190 + IL_0043: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0048: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 48,48 : 13,38 '' + IL_004d: ldarg.0 + IL_004e: ldc.i4.0 + IL_004f: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 50,50 : 9,10 '' + IL_0054: ret + } // end of method CategoryItemControl::InitializeComponent + + .method famorassem hidebysig specialname + instance bool get_IsDirty() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 59,59 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::dirty + IL_0006: ret + } // end of method CategoryItemControl::get_IsDirty + + .method famorassem hidebysig specialname + instance void set_IsDirty(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 60,60 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::dirty + .line 60,60 : 34,35 '' + IL_0007: ret + } // end of method CategoryItemControl::set_IsDirty + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItem + get_ParentItem() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 66,66 : 19,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItem Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::parentItem + IL_0006: ret + } // end of method CategoryItemControl::get_ParentItem + + .method famorassem hidebysig specialname + instance string get_ConfigurationParameter() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 72,72 : 19,49 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::configurationParameter + IL_0006: ret + } // end of method CategoryItemControl::get_ConfigurationParameter + + .method assembly hidebysig specialname + instance void set_ConfigurationParameter(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 73,73 : 28,59 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::configurationParameter + .line 73,73 : 60,61 '' + IL_0007: ret + } // end of method CategoryItemControl::set_ConfigurationParameter + + .method famorassem hidebysig newslot specialname virtual + instance bool get_HasUI() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 83,83 : 55,67 '' + IL_0000: ldc.i4.1 + IL_0001: ret + } // end of method CategoryItemControl::get_HasUI + + .method famorassem hidebysig newslot virtual + instance void OnSelected() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 88,88 : 56,57 '' + IL_0000: ret + } // end of method CategoryItemControl::OnSelected + + .method famorassem hidebysig newslot virtual + instance bool OnShow(bool firstTime) cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 95,95 : 66,79 '' + IL_0000: ldc.i4.0 + IL_0001: ret + } // end of method CategoryItemControl::OnShow + + .method famorassem hidebysig newslot virtual + instance bool OnHide() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 101,101 : 52,65 '' + IL_0000: ldc.i4.0 + IL_0001: ret + } // end of method CategoryItemControl::OnHide + + .method famorassem hidebysig newslot virtual + instance void Save() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 106,106 : 50,51 '' + IL_0000: ret + } // end of method CategoryItemControl::Save + + .method famorassem hidebysig newslot virtual + instance void Close() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 111,111 : 51,52 '' + IL_0000: ret + } // end of method CategoryItemControl::Close + + .method family hidebysig newslot virtual + instance void SetControlDirtyHandler(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 118,118 : 13,28 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::set_IsDirty(bool) + .line 119,119 : 9,10 '' + IL_0007: ret + } // end of method CategoryItemControl::SetControlDirtyHandler + + .method assembly hidebysig instance void + Initialize(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem parentItem) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 127,127 : 13,42 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItem Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::parentItem + .line 128,128 : 9,10 '' + IL_0007: ret + } // end of method CategoryItemControl::Initialize + + .method family hidebysig instance void + CloseDialog() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 132,132 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: call instance class [System.Windows.Forms]System.Windows.Forms.Form [System.Windows.Forms]System.Windows.Forms.ContainerControl::get_ParentForm() + IL_0006: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Form::Close() + .line 133,133 : 9,10 '' + IL_000b: ret + } // end of method CategoryItemControl::CloseDialog + + .property instance bool IsDirty() + { + .get instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_IsDirty() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::set_IsDirty(bool) + } // end of property CategoryItemControl::IsDirty + .property instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItem + ParentItem() + { + .get instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItem Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_ParentItem() + } // end of property CategoryItemControl::ParentItem + .property instance string ConfigurationParameter() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_ConfigurationParameter() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::set_ConfigurationParameter(string) + } // end of property CategoryItemControl::ConfigurationParameter + .property instance bool HasUI() + { + .get instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_HasUI() + } // end of property CategoryItemControl::HasUI +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent + extends Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl +{ + .field private class [System]System.ComponentModel.IContainer components + .field private class [System.Windows.Forms]System.Windows.Forms.Button EnablePluginBTN + .field private class [System.Windows.Forms]System.Windows.Forms.Button DisablePluginBTN + .field private class [System.Windows.Forms]System.Windows.Forms.ColumnHeader StatusColumn + .field private class [System.Windows.Forms]System.Windows.Forms.ListView PluginsLVIEW + .field private class [System.Windows.Forms]System.Windows.Forms.ColumnHeader NameColumn + .field private class [System.Windows.Forms]System.Windows.Forms.ColumnHeader AuthorColumn + .field private class [System.Windows.Forms]System.Windows.Forms.ColumnHeader VersionColumn + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader panel1 + .field private class [System.Windows.Forms]System.Windows.Forms.PictureBox pictureBox1 + .field private class [System.Windows.Forms]System.Windows.Forms.Label DescriptionLABEL + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection panel2 + .field private class [System.Windows.Forms]System.Windows.Forms.LinkLabel HomePageLBTN + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 67 (0x43) + .maxstack 3 + .line 31,31 : 9,42 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\PluginManagementContent.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::.ctor() + .line 33,33 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::InitializeComponent() + .line 35,35 : 13,33 '' + IL_000c: ldarg.0 + IL_000d: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0012: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::Hide() + .line 36,36 : 13,87 '' + IL_0017: ldarg.0 + IL_0018: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_001d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_SelectPluginToDisplayDescr() + IL_0022: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 38,38 : 13,103 '' + IL_0027: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_002c: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_0031: ldarg.0 + IL_0032: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginManager_PluginStateChange(object, + class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs) + IL_0038: newobj instance void class [mscorlib]System.EventHandler`1::.ctor(object, + native int) + IL_003d: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::add_PluginStateChange(class [mscorlib]System.EventHandler`1) + .line 39,39 : 9,10 '' + IL_0042: ret + } // end of method PluginManagementContent::.ctor + + .method private hidebysig instance void + PluginManager_PluginStateChange(object sender, + class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs e) cil managed + { + // Code size 37 (0x25) + .maxstack 8 + .line 43,43 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_InvokeRequired() + IL_0006: brfalse.s IL_001c + + .line 44,44 : 17,71 '' + IL_0008: ldarg.0 + IL_0009: ldarg.0 + IL_000a: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::'b__0'() + IL_0010: newobj instance void [System.Windows.Forms]System.Windows.Forms.MethodInvoker::.ctor(object, + native int) + IL_0015: call instance object [System.Windows.Forms]System.Windows.Forms.Control::Invoke(class [mscorlib]System.Delegate) + IL_001a: pop + IL_001b: ret + + .line 46,46 : 17,30 '' + IL_001c: ldarg.0 + IL_001d: ldc.i4.1 + IL_001e: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnShow(bool) + IL_0023: pop + .line 47,47 : 9,10 '' + IL_0024: ret + } // end of method PluginManagementContent::PluginManager_PluginStateChange + + .method famorassem hidebysig virtual instance void + Close() cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .line 55,55 : 13,103 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_000a: ldarg.0 + IL_000b: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginManager_PluginStateChange(object, + class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs) + IL_0011: newobj instance void class [mscorlib]System.EventHandler`1::.ctor(object, + native int) + IL_0016: callvirt instance void Virtuoso.Miranda.Plugins.PluginManagerBase::remove_PluginStateChange(class [mscorlib]System.EventHandler`1) + .line 56,56 : 9,10 '' + IL_001b: ret + } // end of method PluginManagementContent::Close + + .method famorassem hidebysig virtual instance bool + OnShow(bool firstTime) cil managed + { + // Code size 141 (0x8d) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection plugins, + [1] bool CS$0$0000, + [2] bool CS$0$0001) + .line 60,60 : 13,28 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_0005 + + .line 61,61 : 17,30 '' + IL_0003: ldc.i4.0 + IL_0004: ret + + .line 63,63 : 13,103 '' + IL_0005: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_000a: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_000f: callvirt instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + IL_0014: stloc.0 + .line 67,67 : 17,70 '' + .try + { + IL_0015: ldloc.0 + IL_0016: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 69,69 : 17,44 '' + IL_001b: ldarg.0 + IL_001c: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0021: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_0026: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::Clear() + .line 70,70 : 17,99 '' + IL_002b: ldarg.0 + IL_002c: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_0031: ldarg.0 + IL_0032: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0037: ldarg.0 + IL_0038: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_003d: ldc.i4.0 + IL_003e: dup + IL_003f: stloc.1 + IL_0040: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_0045: ldloc.1 + IL_0046: dup + IL_0047: stloc.2 + IL_0048: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_004d: ldloc.2 + IL_004e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + .line 72,72 : 17,40 '' + IL_0053: ldloc.0 + IL_0054: callvirt instance int32 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Count() + IL_0059: brtrue.s IL_0075 + + .line 74,74 : 21,50 '' + IL_005b: ldarg.0 + IL_005c: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0061: ldc.i4.0 + IL_0062: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + .line 75,75 : 21,49 '' + IL_0067: ldarg.0 + IL_0068: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_006d: ldc.i4.1 + IL_006e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Visible(bool) + IL_0073: br.s IL_007c + + .line 79,79 : 21,45 '' + IL_0075: ldarg.0 + IL_0076: ldloc.0 + IL_0077: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PublishPlugins(class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection) + IL_007c: leave.s IL_0085 + + .line 84,84 : 17,58 '' + } // end .try + finally + { + IL_007e: ldloc.0 + IL_007f: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0084: endfinally + .line 87,87 : 13,37 '' + } // end handler + IL_0085: ldarg.0 + IL_0086: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::CommitListViewChanges() + .line 88,88 : 13,26 '' + IL_008b: ldc.i4.0 + IL_008c: ret + } // end of method PluginManagementContent::OnShow + + .method private hidebysig instance void + CommitListViewChanges() cil managed + { + // Code size 60 (0x3c) + .maxstack 8 + .line 93,93 : 13,75 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::NameColumn + IL_0006: ldc.i4.1 + IL_0007: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::AutoResize(valuetype [System.Windows.Forms]System.Windows.Forms.ColumnHeaderAutoResizeStyle) + .line 94,94 : 13,77 '' + IL_000c: ldarg.0 + IL_000d: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::AuthorColumn + IL_0012: ldc.i4.1 + IL_0013: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::AutoResize(valuetype [System.Windows.Forms]System.Windows.Forms.ColumnHeaderAutoResizeStyle) + .line 95,95 : 13,78 '' + IL_0018: ldarg.0 + IL_0019: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::VersionColumn + IL_001e: ldc.i4.1 + IL_001f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::AutoResize(valuetype [System.Windows.Forms]System.Windows.Forms.ColumnHeaderAutoResizeStyle) + .line 96,96 : 13,77 '' + IL_0024: ldarg.0 + IL_0025: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::StatusColumn + IL_002a: ldc.i4.1 + IL_002b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::AutoResize(valuetype [System.Windows.Forms]System.Windows.Forms.ColumnHeaderAutoResizeStyle) + .line 98,98 : 13,33 '' + IL_0030: ldarg.0 + IL_0031: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0036: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::Show() + .line 99,99 : 9,10 '' + IL_003b: ret + } // end of method PluginManagementContent::CommitListViewChanges + + .method private hidebysig instance void + PublishPlugins(class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection plugins) cil managed + { + // Code size 287 (0x11f) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] class [System.Windows.Forms]System.Windows.Forms.ListViewItem item, + [2] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000, + [3] string[] CS$0$0001, + [4] valuetype Virtuoso.Miranda.Plugins.PluginState CS$0$0002) + .line 107,107 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0006: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::BeginUpdate() + .line 109,109 : 53,60 '' + IL_000b: ldarg.1 + IL_000c: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_0011: stloc.2 + .try + { + IL_0012: br IL_0107 + + .line 109,109 : 22,49 '' + IL_0017: ldloc.2 + IL_0018: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_001d: stloc.0 + .line 113,114 : 21,104 '' + .try + { + IL_001e: ldc.i4.4 + IL_001f: newarr [mscorlib]System.String + IL_0024: stloc.3 + IL_0025: ldloc.3 + IL_0026: ldc.i4.0 + IL_0027: ldloc.0 + IL_0028: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_002d: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_0032: stelem.ref + IL_0033: ldloc.3 + IL_0034: ldc.i4.1 + IL_0035: ldloc.0 + IL_0036: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_003b: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Author() + IL_0040: stelem.ref + IL_0041: ldloc.3 + IL_0042: ldc.i4.2 + IL_0043: ldloc.0 + IL_0044: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0049: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + IL_004e: callvirt instance string [mscorlib]System.Object::ToString() + IL_0053: stelem.ref + IL_0054: ldloc.3 + IL_0055: ldc.i4.3 + IL_0056: ldloc.0 + IL_0057: callvirt instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState() + IL_005c: box Virtuoso.Miranda.Plugins.PluginState + IL_0061: callvirt instance string [mscorlib]System.Object::ToString() + IL_0066: stelem.ref + IL_0067: ldloc.3 + IL_0068: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::.ctor(string[]) + IL_006d: stloc.1 + .line 116,116 : 21,52 '' + IL_006e: ldloc.0 + IL_006f: callvirt instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState() + IL_0074: stloc.s CS$0$0002 + IL_0076: ldloc.s CS$0$0002 + IL_0078: switch ( + IL_00a8, + IL_008b, + IL_00c5) + IL_0089: br.s IL_00e0 + + .line 119,119 : 29,78 '' + IL_008b: ldloc.1 + IL_008c: ldarg.0 + IL_008d: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0092: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Groups() + IL_0097: ldstr "EnabledGroup" + IL_009c: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroup [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection::get_Item(string) + IL_00a1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::set_Group(class [System.Windows.Forms]System.Windows.Forms.ListViewGroup) + .line 120,120 : 29,35 '' + IL_00a6: br.s IL_00e0 + + .line 122,122 : 29,85 '' + IL_00a8: ldloc.1 + IL_00a9: ldarg.0 + IL_00aa: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_00af: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Groups() + IL_00b4: ldstr "DisabledByUserGroup" + IL_00b9: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroup [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection::get_Item(string) + IL_00be: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::set_Group(class [System.Windows.Forms]System.Windows.Forms.ListViewGroup) + .line 123,123 : 29,35 '' + IL_00c3: br.s IL_00e0 + + .line 125,125 : 29,86 '' + IL_00c5: ldloc.1 + IL_00c6: ldarg.0 + IL_00c7: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_00cc: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Groups() + IL_00d1: ldstr "DisabledByCrashGroup" + IL_00d6: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroup [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection::get_Item(string) + IL_00db: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::set_Group(class [System.Windows.Forms]System.Windows.Forms.ListViewGroup) + .line 129,129 : 21,43 '' + IL_00e0: ldloc.1 + IL_00e1: ldloc.0 + IL_00e2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::set_Tag(object) + .line 130,130 : 21,50 '' + IL_00e7: ldarg.0 + IL_00e8: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_00ed: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_00f2: ldloc.1 + IL_00f3: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ListViewItem) + IL_00f8: pop + IL_00f9: leave.s IL_0107 + + .line 134,134 : 21,46 '' + } // end .try + finally + { + IL_00fb: ldarg.0 + IL_00fc: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0101: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::EndUpdate() + IL_0106: endfinally + .line 109,109 : 50,52 '' + } // end handler + IL_0107: ldloc.2 + IL_0108: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_010d: brtrue IL_0017 + + IL_0112: leave.s IL_011e + + } // end .try + finally + { + IL_0114: ldloc.2 + IL_0115: brfalse.s IL_011d + + IL_0117: ldloc.2 + IL_0118: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_011d: endfinally + .line 137,137 : 9,10 '' + } // end handler + IL_011e: ret + } // end of method PluginManagementContent::PublishPlugins + + .method private hidebysig instance void + PluginsLVIEW_ItemSelectionChanged(object sender, + class [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventArgs e) cil managed + { + // Code size 208 (0xd0) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [1] bool CS$0$0000, + [2] bool CS$0$0001) + .line 141,141 : 13,30 '' + IL_0000: ldarg.2 + IL_0001: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventArgs::get_IsSelected() + IL_0006: brfalse IL_008b + + .line 143,143 : 17,76 '' + IL_000b: ldarg.2 + IL_000c: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventArgs::get_Item() + IL_0011: callvirt instance object [System.Windows.Forms]System.Windows.Forms.ListViewItem::get_Tag() + IL_0016: castclass Virtuoso.Miranda.Plugins.PluginDescriptor + IL_001b: stloc.0 + .line 144,144 : 17,47 '' + IL_001c: ldarg.0 + IL_001d: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0022: ldloc.0 + IL_0023: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Tag(object) + .line 146,146 : 17,71 '' + IL_0028: ldarg.0 + IL_0029: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_002e: ldloc.0 + IL_002f: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0034: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Description() + IL_0039: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 148,148 : 17,92 '' + IL_003e: ldarg.0 + IL_003f: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0044: ldloc.0 + IL_0045: callvirt instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState() + IL_004a: ldc.i4.1 + IL_004b: ceq + IL_004d: ldc.i4.0 + IL_004e: ceq + IL_0050: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + .line 149,149 : 17,69 '' + IL_0055: ldarg.0 + IL_0056: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_005b: ldarg.0 + IL_005c: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0061: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_Enabled() + IL_0066: ldc.i4.0 + IL_0067: ceq + IL_0069: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + .line 151,151 : 17,75 '' + IL_006e: ldarg.0 + IL_006f: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0074: ldloc.0 + IL_0075: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_007a: callvirt instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + IL_007f: ldnull + IL_0080: call bool [System]System.Uri::op_Inequality(class [System]System.Uri, + class [System]System.Uri) + IL_0085: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_008a: ret + + .line 155,155 : 17,41 '' + IL_008b: ldarg.0 + IL_008c: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0091: ldnull + IL_0092: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Tag(object) + .line 157,157 : 17,99 '' + IL_0097: ldarg.0 + IL_0098: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_009d: ldarg.0 + IL_009e: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_00a3: ldarg.0 + IL_00a4: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_00a9: ldc.i4.0 + IL_00aa: dup + IL_00ab: stloc.1 + IL_00ac: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_00b1: ldloc.1 + IL_00b2: dup + IL_00b3: stloc.2 + IL_00b4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + IL_00b9: ldloc.2 + IL_00ba: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + .line 158,158 : 17,91 '' + IL_00bf: ldarg.0 + IL_00c0: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_00c5: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_SelectPluginToDisplayDescr() + IL_00ca: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 160,160 : 9,10 '' + IL_00cf: ret + } // end of method PluginManagementContent::PluginsLVIEW_ItemSelectionChanged + + .method private hidebysig instance void + DisablePluginBTN_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 42 (0x2a) + .maxstack 8 + .line 164,164 : 13,54 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0006: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_000b: isinst Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0010: brfalse.s IL_0029 + + .line 165,165 : 17,97 '' + IL_0012: ldarg.0 + IL_0013: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0018: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_001d: castclass Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0022: ldc.i4.0 + IL_0023: ldc.i4.1 + IL_0024: callvirt instance void Virtuoso.Miranda.Plugins.PluginDescriptor::SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState, + bool) + .line 166,166 : 9,10 '' + IL_0029: ret + } // end of method PluginManagementContent::DisablePluginBTN_Click + + .method private hidebysig instance void + EnablePluginBTN_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 42 (0x2a) + .maxstack 8 + .line 170,170 : 13,54 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0006: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_000b: isinst Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0010: brfalse.s IL_0029 + + .line 171,171 : 17,96 '' + IL_0012: ldarg.0 + IL_0013: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0018: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_001d: castclass Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0022: ldc.i4.1 + IL_0023: ldc.i4.1 + IL_0024: callvirt instance void Virtuoso.Miranda.Plugins.PluginDescriptor::SetPluginState(valuetype Virtuoso.Miranda.Plugins.PluginState, + bool) + .line 172,172 : 9,10 '' + IL_0029: ret + } // end of method PluginManagementContent::EnablePluginBTN_Click + + .method private hidebysig instance void + HomePageLBTN_LinkClicked(object sender, + class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventArgs eArgs) cil managed + { + // Code size 91 (0x5b) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Exception e) + .line 178,178 : 17,58 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0006: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_000b: isinst Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0010: brfalse.s IL_0037 + + .line 179,179 : 21,100 '' + IL_0012: ldarg.0 + IL_0013: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0018: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_001d: castclass Virtuoso.Miranda.Plugins.PluginDescriptor + IL_0022: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0027: callvirt instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + IL_002c: callvirt instance string [mscorlib]System.Object::ToString() + IL_0031: call class [System]System.Diagnostics.Process [System]System.Diagnostics.Process::Start(string) + IL_0036: pop + IL_0037: leave.s IL_005a + + .line 181,181 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0039: stloc.0 + .line 183,183 : 17,168 '' + IL_003a: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotOpenHomePage() + IL_003f: ldloc.0 + IL_0040: callvirt instance string [mscorlib]System.Exception::get_Message() + IL_0045: call string [mscorlib]System.String::Concat(string, + string) + IL_004a: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Caption_Error() + IL_004f: ldc.i4.0 + IL_0050: ldc.i4.s 16 + IL_0052: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0057: pop + IL_0058: leave.s IL_005a + + .line 185,185 : 9,10 '' + } // end handler + IL_005a: ret + } // end of method PluginManagementContent::HomePageLBTN_LinkClicked + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 18,18 : 13,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\PluginManagementContent.Designer.cs' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_0016 + + IL_0003: ldarg.0 + IL_0004: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::components + IL_0009: brfalse.s IL_0016 + + .line 20,20 : 17,38 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::components + IL_0011: callvirt instance void [mscorlib]System.IDisposable::Dispose() + .line 22,22 : 13,37 '' + IL_0016: ldarg.0 + IL_0017: ldarg.1 + IL_0018: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::Dispose(bool) + .line 23,23 : 9,10 '' + IL_001d: ret + } // end of method PluginManagementContent::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 2065 (0x811) + .maxstack 6 + .locals init ([0] class [System.Windows.Forms]System.Windows.Forms.ListViewGroup listViewGroup1, + [1] class [System.Windows.Forms]System.Windows.Forms.ListViewGroup listViewGroup2, + [2] class [System.Windows.Forms]System.Windows.Forms.ListViewGroup listViewGroup3, + [3] class [System]System.ComponentModel.ComponentResourceManager resources, + [4] class [System.Windows.Forms]System.Windows.Forms.ColumnHeader[] CS$0$0000, + [5] class [System.Windows.Forms]System.Windows.Forms.ListViewGroup[] CS$0$0001) + .line 33,33 : 13,174 '' + IL_0000: ldstr "Enabled and running" + IL_0005: ldc.i4.0 + IL_0006: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::.ctor(string, + valuetype [System.Windows.Forms]System.Windows.Forms.HorizontalAlignment) + IL_000b: stloc.0 + .line 34,34 : 13,175 '' + IL_000c: ldstr "Disabled by the user" + IL_0011: ldc.i4.0 + IL_0012: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::.ctor(string, + valuetype [System.Windows.Forms]System.Windows.Forms.HorizontalAlignment) + IL_0017: stloc.1 + .line 35,35 : 13,162 '' + IL_0018: ldstr "Crashed" + IL_001d: ldc.i4.0 + IL_001e: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::.ctor(string, + valuetype [System.Windows.Forms]System.Windows.Forms.HorizontalAlignment) + IL_0023: stloc.2 + .line 36,36 : 13,156 '' + IL_0024: ldtoken Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent + IL_0029: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_002e: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_0033: stloc.3 + .line 37,37 : 13,70 '' + IL_0034: ldarg.0 + IL_0035: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_003a: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + .line 38,38 : 13,71 '' + IL_003f: ldarg.0 + IL_0040: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0045: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + .line 39,39 : 13,73 '' + IL_004a: ldarg.0 + IL_004b: newobj instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::.ctor() + IL_0050: stfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::StatusColumn + .line 40,40 : 13,69 '' + IL_0055: ldarg.0 + IL_0056: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListView::.ctor() + IL_005b: stfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + .line 41,41 : 13,71 '' + IL_0060: ldarg.0 + IL_0061: newobj instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::.ctor() + IL_0066: stfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::NameColumn + .line 42,42 : 13,73 '' + IL_006b: ldarg.0 + IL_006c: newobj instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::.ctor() + IL_0071: stfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::AuthorColumn + .line 43,43 : 13,74 '' + IL_0076: ldarg.0 + IL_0077: newobj instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::.ctor() + IL_007c: stfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::VersionColumn + .line 44,44 : 13,106 '' + IL_0081: ldarg.0 + IL_0082: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor() + IL_0087: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + .line 45,45 : 13,70 '' + IL_008c: ldarg.0 + IL_008d: newobj instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::.ctor() + IL_0092: stfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + .line 46,46 : 13,70 '' + IL_0097: ldarg.0 + IL_0098: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_009d: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + .line 47,47 : 13,107 '' + IL_00a2: ldarg.0 + IL_00a3: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::.ctor() + IL_00a8: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + .line 48,48 : 13,70 '' + IL_00ad: ldarg.0 + IL_00ae: newobj instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::.ctor() + IL_00b3: stfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + .line 49,49 : 13,88 '' + IL_00b8: ldarg.0 + IL_00b9: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_00be: callvirt instance void [System]System.ComponentModel.ISupportInitialize::BeginInit() + .line 50,50 : 13,34 '' + IL_00c3: ldarg.0 + IL_00c4: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 54,54 : 13,50 '' + IL_00c9: ldarg.0 + IL_00ca: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_00cf: ldc.i4.1 + IL_00d0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 55,55 : 13,50 '' + IL_00d5: ldarg.0 + IL_00d6: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_00db: ldc.i4.0 + IL_00dc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + .line 56,56 : 13,83 '' + IL_00e1: ldarg.0 + IL_00e2: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_00e7: ldc.i4.0 + IL_00e8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_ImeMode(valuetype [System.Windows.Forms]System.Windows.Forms.ImeMode) + .line 57,57 : 13,79 '' + IL_00ed: ldarg.0 + IL_00ee: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_00f3: ldc.i4 0x2a6 + IL_00f8: ldc.i4.s 46 + IL_00fa: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_00ff: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 58,58 : 13,59 '' + IL_0104: ldarg.0 + IL_0105: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_010a: ldstr "EnablePluginBTN" + IL_010f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 59,59 : 13,73 '' + IL_0114: ldarg.0 + IL_0115: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_011a: ldc.i4.s 95 + IL_011c: ldc.i4.s 23 + IL_011e: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0123: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 60,60 : 13,48 '' + IL_0128: ldarg.0 + IL_0129: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_012e: ldc.i4.s 11 + IL_0130: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 61,61 : 13,57 '' + IL_0135: ldarg.0 + IL_0136: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_013b: ldstr "Enable plugin" + IL_0140: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 62,62 : 13,66 '' + IL_0145: ldarg.0 + IL_0146: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_014b: ldc.i4.0 + IL_014c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + .line 63,63 : 13,95 '' + IL_0151: ldarg.0 + IL_0152: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_0157: ldarg.0 + IL_0158: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN_Click(object, + class [mscorlib]System.EventArgs) + IL_015e: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0163: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::add_Click(class [mscorlib]System.EventHandler) + .line 67,67 : 13,51 '' + IL_0168: ldarg.0 + IL_0169: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_016e: ldc.i4.1 + IL_016f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 68,68 : 13,51 '' + IL_0174: ldarg.0 + IL_0175: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_017a: ldc.i4.0 + IL_017b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + .line 69,69 : 13,84 '' + IL_0180: ldarg.0 + IL_0181: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_0186: ldc.i4.0 + IL_0187: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_ImeMode(valuetype [System.Windows.Forms]System.Windows.Forms.ImeMode) + .line 70,70 : 13,80 '' + IL_018c: ldarg.0 + IL_018d: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_0192: ldc.i4 0x2a6 + IL_0197: ldc.i4.s 75 + IL_0199: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_019e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 71,71 : 13,61 '' + IL_01a3: ldarg.0 + IL_01a4: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01a9: ldstr "DisablePluginBTN" + IL_01ae: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 72,72 : 13,74 '' + IL_01b3: ldarg.0 + IL_01b4: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01b9: ldc.i4.s 95 + IL_01bb: ldc.i4.s 23 + IL_01bd: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_01c2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 73,73 : 13,49 '' + IL_01c7: ldarg.0 + IL_01c8: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01cd: ldc.i4.s 10 + IL_01cf: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 74,74 : 13,59 '' + IL_01d4: ldarg.0 + IL_01d5: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01da: ldstr "Disable plugin" + IL_01df: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 75,75 : 13,67 '' + IL_01e4: ldarg.0 + IL_01e5: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01ea: ldc.i4.0 + IL_01eb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + .line 76,76 : 13,97 '' + IL_01f0: ldarg.0 + IL_01f1: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_01f6: ldarg.0 + IL_01f7: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN_Click(object, + class [mscorlib]System.EventArgs) + IL_01fd: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0202: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::add_Click(class [mscorlib]System.EventHandler) + .line 80,80 : 13,47 '' + IL_0207: ldarg.0 + IL_0208: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::StatusColumn + IL_020d: ldstr "Status" + IL_0212: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::set_Text(string) + .line 84,88 : 13,33 '' + IL_0217: ldarg.0 + IL_0218: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_021d: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListView/ColumnHeaderCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Columns() + IL_0222: ldc.i4.4 + IL_0223: newarr [System.Windows.Forms]System.Windows.Forms.ColumnHeader + IL_0228: stloc.s CS$0$0000 + IL_022a: ldloc.s CS$0$0000 + IL_022c: ldc.i4.0 + IL_022d: ldarg.0 + IL_022e: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::NameColumn + IL_0233: stelem.ref + IL_0234: ldloc.s CS$0$0000 + IL_0236: ldc.i4.1 + IL_0237: ldarg.0 + IL_0238: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::AuthorColumn + IL_023d: stelem.ref + IL_023e: ldloc.s CS$0$0000 + IL_0240: ldc.i4.2 + IL_0241: ldarg.0 + IL_0242: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::VersionColumn + IL_0247: stelem.ref + IL_0248: ldloc.s CS$0$0000 + IL_024a: ldc.i4.3 + IL_024b: ldarg.0 + IL_024c: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::StatusColumn + IL_0251: stelem.ref + IL_0252: ldloc.s CS$0$0000 + IL_0254: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView/ColumnHeaderCollection::AddRange(class [System.Windows.Forms]System.Windows.Forms.ColumnHeader[]) + .line 89,89 : 13,52 '' + IL_0259: ldarg.0 + IL_025a: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_025f: ldc.i4.1 + IL_0260: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_FullRowSelect(bool) + .line 90,90 : 13,59 '' + IL_0265: ldloc.0 + IL_0266: ldstr "Enabled and running" + IL_026b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Header(string) + .line 91,91 : 13,50 '' + IL_0270: ldloc.0 + IL_0271: ldstr "EnabledGroup" + IL_0276: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Name(string) + .line 92,92 : 13,60 '' + IL_027b: ldloc.1 + IL_027c: ldstr "Disabled by the user" + IL_0281: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Header(string) + .line 93,93 : 13,57 '' + IL_0286: ldloc.1 + IL_0287: ldstr "DisabledByUserGroup" + IL_028c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Name(string) + .line 94,94 : 13,47 '' + IL_0291: ldloc.2 + IL_0292: ldstr "Crashed" + IL_0297: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Header(string) + .line 95,95 : 13,58 '' + IL_029c: ldloc.2 + IL_029d: ldstr "DisabledByCrashGroup" + IL_02a2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroup::set_Name(string) + .line 96,99 : 13,30 '' + IL_02a7: ldarg.0 + IL_02a8: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_02ad: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Groups() + IL_02b2: ldc.i4.3 + IL_02b3: newarr [System.Windows.Forms]System.Windows.Forms.ListViewGroup + IL_02b8: stloc.s CS$0$0001 + IL_02ba: ldloc.s CS$0$0001 + IL_02bc: ldc.i4.0 + IL_02bd: ldloc.0 + IL_02be: stelem.ref + IL_02bf: ldloc.s CS$0$0001 + IL_02c1: ldc.i4.1 + IL_02c2: ldloc.1 + IL_02c3: stelem.ref + IL_02c4: ldloc.s CS$0$0001 + IL_02c6: ldc.i4.2 + IL_02c7: ldloc.2 + IL_02c8: stelem.ref + IL_02c9: ldloc.s CS$0$0001 + IL_02cb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewGroupCollection::AddRange(class [System.Windows.Forms]System.Windows.Forms.ListViewGroup[]) + .line 100,100 : 13,97 '' + IL_02d0: ldarg.0 + IL_02d1: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_02d6: ldc.i4.1 + IL_02d7: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_HeaderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.ColumnHeaderStyle) + .line 101,101 : 13,53 '' + IL_02dc: ldarg.0 + IL_02dd: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_02e2: ldc.i4.0 + IL_02e3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_HideSelection(bool) + .line 102,102 : 13,75 '' + IL_02e8: ldarg.0 + IL_02e9: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_02ee: ldc.i4.s 12 + IL_02f0: ldc.i4.s 46 + IL_02f2: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_02f7: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 103,103 : 13,51 '' + IL_02fc: ldarg.0 + IL_02fd: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0302: ldc.i4.0 + IL_0303: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_MultiSelect(bool) + .line 104,104 : 13,53 '' + IL_0308: ldarg.0 + IL_0309: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_030e: ldstr "PluginsLVIEW" + IL_0313: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 105,105 : 13,55 '' + IL_0318: ldarg.0 + IL_0319: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_031e: ldc.i4.1 + IL_031f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_ShowItemToolTips(bool) + .line 106,106 : 13,72 '' + IL_0324: ldarg.0 + IL_0325: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_032a: ldc.i4 0x28a + IL_032f: ldc.i4 0x101 + IL_0334: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0339: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 107,107 : 13,82 '' + IL_033e: ldarg.0 + IL_033f: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0344: ldc.i4.1 + IL_0345: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_Sorting(valuetype [System.Windows.Forms]System.Windows.Forms.SortOrder) + .line 108,108 : 13,44 '' + IL_034a: ldarg.0 + IL_034b: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0350: ldc.i4.s 9 + IL_0352: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 109,109 : 13,71 '' + IL_0357: ldarg.0 + IL_0358: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_035d: ldc.i4.0 + IL_035e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_UseCompatibleStateImageBehavior(bool) + .line 110,110 : 13,72 '' + IL_0363: ldarg.0 + IL_0364: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0369: ldc.i4.1 + IL_036a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_View(valuetype [System.Windows.Forms]System.Windows.Forms.View) + .line 111,111 : 13,161 '' + IL_036f: ldarg.0 + IL_0370: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_0375: ldarg.0 + IL_0376: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW_ItemSelectionChanged(object, + class [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventArgs) + IL_037c: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventHandler::.ctor(object, + native int) + IL_0381: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView::add_ItemSelectionChanged(class [System.Windows.Forms]System.Windows.Forms.ListViewItemSelectionChangedEventHandler) + .line 115,115 : 13,44 '' + IL_0386: ldarg.0 + IL_0387: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::NameColumn + IL_038c: ldstr "Title" + IL_0391: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::set_Text(string) + .line 119,119 : 13,47 '' + IL_0396: ldarg.0 + IL_0397: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::AuthorColumn + IL_039c: ldstr "Author" + IL_03a1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::set_Text(string) + .line 123,123 : 13,49 '' + IL_03a6: ldarg.0 + IL_03a7: ldfld class [System.Windows.Forms]System.Windows.Forms.ColumnHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::VersionColumn + IL_03ac: ldstr "Version" + IL_03b1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ColumnHeader::set_Text(string) + .line 127,127 : 13,70 '' + IL_03b6: ldarg.0 + IL_03b7: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_03bc: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_03c1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 128,128 : 13,133 '' + IL_03c6: ldarg.0 + IL_03c7: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_03cc: ldc.i4 0xff + IL_03d1: ldc.i4 0x80 + IL_03d6: ldc.i4.0 + IL_03d7: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_03dc: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + .line 129,129 : 13,67 '' + IL_03e1: ldarg.0 + IL_03e2: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_03e7: ldc.i4.1 + IL_03e8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 130,130 : 13,73 '' + IL_03ed: ldarg.0 + IL_03ee: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_03f3: ldstr "Tahoma" + IL_03f8: ldc.r4 8.25 + IL_03fd: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32) + IL_0402: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 131,131 : 13,157 '' + IL_0407: ldarg.0 + IL_0408: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_040d: ldstr "Tahoma" + IL_0412: ldc.r4 8. + IL_0417: ldc.i4.1 + IL_0418: ldc.i4.3 + IL_0419: ldc.i4 0xee + IL_041e: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0423: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + .line 132,132 : 13,94 '' + IL_0428: ldarg.0 + IL_0429: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_042e: ldstr "The following list contains installed Hyphen plugi" + + "ns." + IL_0433: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + .line 133,133 : 13,95 '' + IL_0438: ldarg.0 + IL_0439: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_043e: ldloc.3 + IL_043f: ldstr "panel1.Image" + IL_0444: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0449: castclass [System.Drawing]System.Drawing.Image + IL_044e: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + .line 134,134 : 13,67 '' + IL_0453: ldarg.0 + IL_0454: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_0459: ldc.i4.0 + IL_045a: ldc.i4.0 + IL_045b: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0460: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 135,135 : 13,72 '' + IL_0465: ldarg.0 + IL_0466: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_046b: ldc.i4 0x12c + IL_0470: ldc.i4.s 40 + IL_0472: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0477: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 136,136 : 13,41 '' + IL_047c: ldarg.0 + IL_047d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_0482: ldstr "panel1" + IL_0487: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 137,137 : 13,65 '' + IL_048c: ldarg.0 + IL_048d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_0492: ldc.i4 0x316 + IL_0497: ldc.i4.s 40 + IL_0499: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_049e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 138,138 : 13,39 '' + IL_04a3: ldarg.0 + IL_04a4: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_04a9: ldc.i4.s 16 + IL_04ab: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 142,142 : 13,163 '' + IL_04b0: ldarg.0 + IL_04b1: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_04b6: ldc.i4.s 10 + IL_04b8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Anchor(valuetype [System.Windows.Forms]System.Windows.Forms.AnchorStyles) + .line 143,143 : 13,105 '' + IL_04bd: ldarg.0 + IL_04be: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_04c3: ldloc.3 + IL_04c4: ldstr "pictureBox1.Image" + IL_04c9: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_04ce: castclass [System.Drawing]System.Drawing.Image + IL_04d3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + .line 144,144 : 13,79 '' + IL_04d8: ldarg.0 + IL_04d9: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_04de: ldc.i4.0 + IL_04df: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_ImeMode(valuetype [System.Windows.Forms]System.Windows.Forms.ImeMode) + .line 145,145 : 13,76 '' + IL_04e4: ldarg.0 + IL_04e5: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_04ea: ldc.i4 0x271 + IL_04ef: ldc.i4 0xaa + IL_04f4: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_04f9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 146,146 : 13,51 '' + IL_04fe: ldarg.0 + IL_04ff: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_0504: ldstr "pictureBox1" + IL_0509: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 147,147 : 13,71 '' + IL_050e: ldarg.0 + IL_050f: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_0514: ldc.i4 0xd4 + IL_0519: ldc.i4 0xeb + IL_051e: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0523: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 148,148 : 13,90 '' + IL_0528: ldarg.0 + IL_0529: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_052e: ldc.i4.2 + IL_052f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_SizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.PictureBoxSizeMode) + .line 149,149 : 13,44 '' + IL_0534: ldarg.0 + IL_0535: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_053a: ldc.i4.s 15 + IL_053c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabIndex(int32) + .line 150,150 : 13,46 '' + IL_0541: ldarg.0 + IL_0542: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_0547: ldc.i4.0 + IL_0548: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabStop(bool) + .line 154,154 : 13,55 '' + IL_054d: ldarg.0 + IL_054e: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_0553: ldc.i4.1 + IL_0554: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_AutoEllipsis(bool) + .line 155,155 : 13,80 '' + IL_0559: ldarg.0 + IL_055a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_055f: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0564: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 156,156 : 13,84 '' + IL_0569: ldarg.0 + IL_056a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_056f: ldc.i4.0 + IL_0570: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_ImeMode(valuetype [System.Windows.Forms]System.Windows.Forms.ImeMode) + .line 157,157 : 13,80 '' + IL_0575: ldarg.0 + IL_0576: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_057b: ldc.i4.s 20 + IL_057d: ldc.i4 0x14f + IL_0582: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0587: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 158,158 : 13,61 '' + IL_058c: ldarg.0 + IL_058d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_0592: ldstr "DescriptionLABEL" + IL_0597: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 159,159 : 13,75 '' + IL_059c: ldarg.0 + IL_059d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_05a2: ldc.i4 0x24a + IL_05a7: ldc.i4.s 53 + IL_05a9: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_05ae: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 160,160 : 13,49 '' + IL_05b3: ldarg.0 + IL_05b4: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_05b9: ldc.i4.s 12 + IL_05bb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 161,161 : 13,50 '' + IL_05c0: ldarg.0 + IL_05c1: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_05c6: ldstr "(...)" + IL_05cb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 165,165 : 13,70 '' + IL_05d0: ldarg.0 + IL_05d1: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_05d6: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_05db: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 166,166 : 13,135 '' + IL_05e0: ldarg.0 + IL_05e1: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_05e6: ldc.i4 0xff + IL_05eb: ldc.i4 0xe0 + IL_05f0: ldc.i4 0xc0 + IL_05f5: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_05fa: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_Color(valuetype [System.Drawing]System.Drawing.Color) + .line 167,167 : 13,154 '' + IL_05ff: ldarg.0 + IL_0600: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0605: ldstr "Tahoma" + IL_060a: ldc.r4 8.25 + IL_060f: ldc.i4.1 + IL_0610: ldc.i4.3 + IL_0611: ldc.i4 0xee + IL_0616: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_061b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 168,168 : 13,64 '' + IL_0620: ldarg.0 + IL_0621: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0626: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Black() + IL_062b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + .line 169,169 : 13,70 '' + IL_0630: ldarg.0 + IL_0631: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0636: ldc.i4.s 12 + IL_0638: ldc.i4 0x135 + IL_063d: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0642: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 170,170 : 13,72 '' + IL_0647: ldarg.0 + IL_0648: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_064d: ldc.i4 0x12c + IL_0652: ldc.i4.s 20 + IL_0654: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0659: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 171,171 : 13,41 '' + IL_065e: ldarg.0 + IL_065f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0664: ldstr "panel2" + IL_0669: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 172,172 : 13,53 '' + IL_066e: ldarg.0 + IL_066f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0674: ldstr "Description" + IL_0679: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_SectionName(string) + .line 173,173 : 13,65 '' + IL_067e: ldarg.0 + IL_067f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_0684: ldc.i4 0x21f + IL_0689: ldc.i4.s 20 + IL_068b: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0690: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 174,174 : 13,39 '' + IL_0695: ldarg.0 + IL_0696: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_069b: ldc.i4.s 17 + IL_069d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 178,178 : 13,47 '' + IL_06a2: ldarg.0 + IL_06a3: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_06a8: ldc.i4.1 + IL_06a9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 179,179 : 13,47 '' + IL_06ae: ldarg.0 + IL_06af: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_06b4: ldc.i4.0 + IL_06b5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Enabled(bool) + .line 180,180 : 13,80 '' + IL_06ba: ldarg.0 + IL_06bb: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_06c0: ldc.i4.0 + IL_06c1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_ImeMode(valuetype [System.Windows.Forms]System.Windows.Forms.ImeMode) + .line 181,181 : 13,77 '' + IL_06c6: ldarg.0 + IL_06c7: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_06cc: ldc.i4 0x231 + IL_06d1: ldc.i4 0x139 + IL_06d6: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_06db: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 182,182 : 13,53 '' + IL_06e0: ldarg.0 + IL_06e1: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_06e6: ldstr "HomePageLBTN" + IL_06eb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 183,183 : 13,70 '' + IL_06f0: ldarg.0 + IL_06f1: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_06f6: ldc.i4.s 58 + IL_06f8: ldc.i4.s 13 + IL_06fa: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_06ff: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 184,184 : 13,45 '' + IL_0704: ldarg.0 + IL_0705: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_070a: ldc.i4.s 18 + IL_070c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 185,185 : 13,46 '' + IL_0711: ldarg.0 + IL_0712: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0717: ldc.i4.1 + IL_0718: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_TabStop(bool) + .line 186,186 : 13,49 '' + IL_071d: ldarg.0 + IL_071e: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_0723: ldstr "Homepage" + IL_0728: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 190,190 : 13,74 '' + IL_072d: ldarg.0 + IL_072e: ldc.r4 6. + IL_0733: ldc.r4 13. + IL_0738: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_073d: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + .line 191,191 : 13,74 '' + IL_0742: ldarg.0 + IL_0743: ldc.i4.1 + IL_0744: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + .line 192,192 : 13,77 '' + IL_0749: ldarg.0 + IL_074a: ldc.i4.1 + IL_074b: call instance void [System.Windows.Forms]System.Windows.Forms.UserControl::set_BorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.BorderStyle) + .line 193,193 : 13,50 '' + IL_0750: ldarg.0 + IL_0751: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0756: ldarg.0 + IL_0757: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN + IL_075c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 194,194 : 13,44 '' + IL_0761: ldarg.0 + IL_0762: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0767: ldarg.0 + IL_0768: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel2 + IL_076d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 195,195 : 13,53 '' + IL_0772: ldarg.0 + IL_0773: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0778: ldarg.0 + IL_0779: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN + IL_077e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 196,196 : 13,54 '' + IL_0783: ldarg.0 + IL_0784: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0789: ldarg.0 + IL_078a: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN + IL_078f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 197,197 : 13,50 '' + IL_0794: ldarg.0 + IL_0795: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_079a: ldarg.0 + IL_079b: ldfld class [System.Windows.Forms]System.Windows.Forms.ListView Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW + IL_07a0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 198,198 : 13,44 '' + IL_07a5: ldarg.0 + IL_07a6: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_07ab: ldarg.0 + IL_07ac: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::panel1 + IL_07b1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 199,199 : 13,49 '' + IL_07b6: ldarg.0 + IL_07b7: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_07bc: ldarg.0 + IL_07bd: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_07c2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 200,200 : 13,54 '' + IL_07c7: ldarg.0 + IL_07c8: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_07cd: ldarg.0 + IL_07ce: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DescriptionLABEL + IL_07d3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 201,201 : 13,51 '' + IL_07d8: ldarg.0 + IL_07d9: ldstr "PluginManagementContent" + IL_07de: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 202,202 : 13,59 '' + IL_07e3: ldarg.0 + IL_07e4: ldc.i4 0x316 + IL_07e9: ldc.i4 0x18e + IL_07ee: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_07f3: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 203,203 : 13,86 '' + IL_07f8: ldarg.0 + IL_07f9: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::pictureBox1 + IL_07fe: callvirt instance void [System]System.ComponentModel.ISupportInitialize::EndInit() + .line 204,204 : 13,38 '' + IL_0803: ldarg.0 + IL_0804: ldc.i4.0 + IL_0805: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 205,205 : 13,34 '' + IL_080a: ldarg.0 + IL_080b: call instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + .line 207,207 : 9,10 '' + IL_0810: ret + } // end of method PluginManagementContent::InitializeComponent + + .method private hidebysig instance void + 'b__0'() cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 9 (0x9) + .maxstack 8 + .line 44,44 : 53,66 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\PluginManagementContent.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnShow(bool) + IL_0007: pop + IL_0008: ret + } // end of method PluginManagementContent::'b__0' + +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.RemotableForm + extends [System.Windows.Forms]System.Windows.Forms.Form +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 29,29 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\RemotableForm.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Form::.ctor() + .line 29,29 : 36,37 '' + IL_0006: ret + } // end of method RemotableForm::.ctor + + .method public hidebysig virtual instance object + InitializeLifetimeService() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 37,37 : 13,25 '' + IL_0000: ldnull + IL_0001: ret + } // end of method RemotableForm::InitializeLifetimeService + +} // end of class Virtuoso.Miranda.Plugins.Forms.RemotableForm + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.PluginDialog + extends Virtuoso.Miranda.Plugins.Forms.RemotableForm +{ + .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass2' + extends [mscorlib]System.Object + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field public class Virtuoso.Miranda.Plugins.Forms.PluginDialog dialog + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method '<>c__DisplayClass2'::.ctor + + .method public hidebysig instance void + 'b__0'() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 99,99 : 68,85 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\PluginDialog.cs' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Forms.PluginDialog Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::dialog + IL_0006: callvirt instance void [System]System.ComponentModel.Component::Dispose() + IL_000b: ret + } // end of method '<>c__DisplayClass2'::'b__0' + + } // end of class '<>c__DisplayClass2' + + .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass5' + extends [mscorlib]System.Object + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field public class [mscorlib]System.Threading.ParameterizedThreadStart threadStart + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method '<>c__DisplayClass5'::.ctor + + .method public hidebysig instance void + 'b__4'(object _state) cil managed + { + // Code size 50 (0x32) + .maxstack 2 + .line 149,149 : 25,84 '' + .try + { + IL_0000: ldnull + IL_0001: ldftn void Virtuoso.Miranda.Plugins.Forms.PluginDialog::Application_ThreadException(object, + class [System]System.Threading.ThreadExceptionEventArgs) + IL_0007: newobj instance void [System]System.Threading.ThreadExceptionEventHandler::.ctor(object, + native int) + IL_000c: call void [System.Windows.Forms]System.Windows.Forms.Application::add_ThreadException(class [System]System.Threading.ThreadExceptionEventHandler) + .line 150,150 : 25,45 '' + IL_0011: ldarg.0 + IL_0012: ldfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5'::threadStart + IL_0017: ldarg.1 + IL_0018: callvirt instance void [mscorlib]System.Threading.ParameterizedThreadStart::Invoke(object) + IL_001d: leave.s IL_0031 + + .line 154,154 : 25,84 '' + } // end .try + finally + { + IL_001f: ldnull + IL_0020: ldftn void Virtuoso.Miranda.Plugins.Forms.PluginDialog::Application_ThreadException(object, + class [System]System.Threading.ThreadExceptionEventArgs) + IL_0026: newobj instance void [System]System.Threading.ThreadExceptionEventHandler::.ctor(object, + native int) + IL_002b: call void [System.Windows.Forms]System.Windows.Forms.Application::remove_ThreadException(class [System]System.Threading.ThreadExceptionEventHandler) + IL_0030: endfinally + } // end handler + IL_0031: ret + } // end of method '<>c__DisplayClass5'::'b__4' + + } // end of class '<>c__DisplayClass5' + + .field private static initonly class [mscorlib]System.Collections.Generic.List`1 ActiveDialogs + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 40,40 : 9,33 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Forms.RemotableForm::.ctor() + .line 40,40 : 36,37 '' + IL_0006: ret + } // end of method PluginDialog::.ctor + + .method family hidebysig virtual instance void + OnShown(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 48,48 : 13,30 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::RegisterDialog() + .line 49,49 : 13,29 '' + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Form::OnShown(class [mscorlib]System.EventArgs) + .line 50,50 : 9,10 '' + IL_000d: ret + } // end of method PluginDialog::OnShown + + .method family hidebysig virtual instance void + OnClosed(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 54,54 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterDialog() + .line 55,55 : 13,30 '' + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Form::OnClosed(class [mscorlib]System.EventArgs) + .line 56,56 : 9,10 '' + IL_000d: ret + } // end of method PluginDialog::OnClosed + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 60,60 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterDialog() + .line 61,61 : 13,37 '' + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Dispose(bool) + .line 62,62 : 9,10 '' + IL_000d: ret + } // end of method PluginDialog::Dispose + + .method family hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + get_Context() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 70,70 : 19,49 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ret + } // end of method PluginDialog::get_Context + + .method assembly hidebysig newslot strict virtual + instance void RegisterDialog() cil managed + { + // Code size 33 (0x21) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 CS$2$0000) + .line 79,79 : 13,33 '' + IL_0000: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_0005: dup + IL_0006: stloc.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 80,80 : 17,41 '' + .try + { + IL_000c: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_0011: ldarg.0 + IL_0012: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0017: leave.s IL_0020 + + } // end .try + finally + { + IL_0019: ldloc.0 + IL_001a: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_001f: endfinally + .line 81,81 : 9,10 '' + } // end handler + IL_0020: ret + } // end of method PluginDialog::RegisterDialog + + .method assembly hidebysig newslot strict virtual + instance void UnregisterDialog() cil managed + { + // Code size 34 (0x22) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.List`1 CS$2$0000) + .line 88,88 : 13,33 '' + IL_0000: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_0005: dup + IL_0006: stloc.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 89,89 : 17,44 '' + .try + { + IL_000c: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_0011: ldarg.0 + IL_0012: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_0017: pop + IL_0018: leave.s IL_0021 + + } // end .try + finally + { + IL_001a: ldloc.0 + IL_001b: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0020: endfinally + .line 90,90 : 9,10 '' + } // end handler + IL_0021: ret + } // end of method PluginDialog::UnregisterDialog + + .method public hidebysig static void CloseDialogs(class Virtuoso.Miranda.Plugins.PluginDescriptor owner, + bool force) cil managed + { + // Code size 126 (0x7e) + .maxstack 3 + .locals init ([0] class [System.Windows.Forms]System.Windows.Forms.MethodInvoker 'CS$<>9__CachedAnonymousMethodDelegate1', + [1] class Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2' 'CS$<>8__locals3', + [2] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000) + .line 94,94 : 45,81 '' + IL_0000: ldarg.0 + IL_0001: call class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterAndGetActiveDialogs(class Virtuoso.Miranda.Plugins.PluginDescriptor) + IL_0006: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_000b: stloc.2 + .try + { + IL_000c: br.s IL_0064 + + IL_000e: ldnull + IL_000f: stloc.0 + IL_0010: newobj instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::.ctor() + IL_0015: stloc.1 + .line 94,94 : 22,41 '' + IL_0016: ldloc.1 + IL_0017: ldloca.s CS$5$0000 + IL_0019: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_001e: stfld class Virtuoso.Miranda.Plugins.Forms.PluginDialog Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::dialog + .line 98,98 : 21,47 '' + .try + { + IL_0023: ldloc.1 + IL_0024: ldfld class Virtuoso.Miranda.Plugins.Forms.PluginDialog Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::dialog + IL_0029: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_InvokeRequired() + IL_002e: brfalse.s IL_004f + + .line 99,99 : 25,90 '' + IL_0030: ldloc.1 + IL_0031: ldfld class Virtuoso.Miranda.Plugins.Forms.PluginDialog Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::dialog + IL_0036: ldloc.0 + IL_0037: brtrue.s IL_0046 + + IL_0039: ldloc.1 + IL_003a: ldftn instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::'b__0'() + IL_0040: newobj instance void [System.Windows.Forms]System.Windows.Forms.MethodInvoker::.ctor(object, + native int) + IL_0045: stloc.0 + IL_0046: ldloc.0 + IL_0047: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::Invoke(class [mscorlib]System.Delegate) + IL_004c: pop + IL_004d: br.s IL_005a + + .line 101,101 : 25,42 '' + IL_004f: ldloc.1 + IL_0050: ldfld class Virtuoso.Miranda.Plugins.Forms.PluginDialog Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass2'::dialog + IL_0055: callvirt instance void [System]System.ComponentModel.Component::Dispose() + IL_005a: leave.s IL_0064 + + .line 103,103 : 17,22 '' + } // end .try + catch [mscorlib]System.Object + { + IL_005c: pop + .line 103,103 : 25,36 '' + IL_005d: ldarg.1 + IL_005e: brtrue.s IL_0062 + + .line 103,103 : 37,43 '' + IL_0060: rethrow + IL_0062: leave.s IL_0064 + + .line 94,94 : 42,44 '' + } // end handler + IL_0064: ldloca.s CS$5$0000 + IL_0066: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_006b: brtrue.s IL_000e + + IL_006d: leave.s IL_007d + + } // end .try + finally + { + IL_006f: ldloca.s CS$5$0000 + IL_0071: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0077: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_007c: endfinally + .line 105,105 : 9,10 '' + } // end handler + IL_007d: ret + } // end of method PluginDialog::CloseDialogs + + .method private hidebysig static class [mscorlib]System.Collections.Generic.List`1 + UnregisterAndGetActiveDialogs(class Virtuoso.Miranda.Plugins.PluginDescriptor plugin) cil managed + { + // Code size 174 (0xae) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Reflection.Assembly pluginAssembly, + [1] class [mscorlib]System.Collections.Generic.List`1 dialogsToRemove, + [2] class Virtuoso.Miranda.Plugins.Forms.PluginDialog dialog, + [3] class Virtuoso.Miranda.Plugins.Forms.PluginDialog V_3, + [4] class [mscorlib]System.Collections.Generic.List`1 CS$2$0000, + [5] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001, + [6] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0002) + .line 114,114 : 13,72 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_0006: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_000b: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0010: stloc.0 + .line 115,115 : 13,76 '' + IL_0011: ldc.i4.2 + IL_0012: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0017: stloc.1 + .line 117,117 : 13,33 '' + IL_0018: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_001d: dup + IL_001e: stloc.s CS$2$0000 + IL_0020: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 119,119 : 49,62 '' + .try + { + IL_0025: ldsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_002a: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_002f: stloc.s CS$5$0001 + .try + { + IL_0031: br.s IL_0058 + + .line 119,119 : 26,45 '' + IL_0033: ldloca.s CS$5$0001 + IL_0035: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_003a: stloc.2 + .line 122,122 : 21,90 '' + IL_003b: ldloc.2 + IL_003c: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_IsDisposed() + IL_0041: brtrue.s IL_0058 + + IL_0043: ldloc.2 + IL_0044: callvirt instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0049: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_004e: ldloc.0 + IL_004f: bne.un.s IL_0058 + + .line 125,125 : 21,49 '' + IL_0051: ldloc.1 + IL_0052: ldloc.2 + IL_0053: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 119,119 : 46,48 '' + IL_0058: ldloca.s CS$5$0001 + IL_005a: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_005f: brtrue.s IL_0033 + + IL_0061: leave.s IL_0071 + + } // end .try + finally + { + IL_0063: ldloca.s CS$5$0001 + IL_0065: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_006b: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0070: endfinally + .line 128,128 : 49,64 '' + } // end handler + IL_0071: ldloc.1 + IL_0072: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0077: stloc.s CS$5$0002 + .try + { + IL_0079: br.s IL_0089 + + .line 128,128 : 26,45 '' + IL_007b: ldloca.s CS$5$0002 + IL_007d: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0082: stloc.3 + .line 129,129 : 21,47 '' + IL_0083: ldloc.3 + IL_0084: callvirt instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterDialog() + .line 128,128 : 46,48 '' + IL_0089: ldloca.s CS$5$0002 + IL_008b: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0090: brtrue.s IL_007b + + IL_0092: leave.s IL_00a2 + + } // end .try + finally + { + IL_0094: ldloca.s CS$5$0002 + IL_0096: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_009c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_00a1: endfinally + } // end handler + IL_00a2: leave.s IL_00ac + + } // end .try + finally + { + IL_00a4: ldloc.s CS$2$0000 + IL_00a6: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_00ab: endfinally + .line 132,132 : 13,36 '' + } // end handler + IL_00ac: ldloc.1 + IL_00ad: ret + } // end of method PluginDialog::UnregisterAndGetActiveDialogs + + .method public hidebysig static void ExecuteOnSTAThread(class [mscorlib]System.Threading.ParameterizedThreadStart threadStart) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 137,137 : 13,51 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: call void Virtuoso.Miranda.Plugins.Forms.PluginDialog::ExecuteOnSTAThread(class [mscorlib]System.Threading.ParameterizedThreadStart, + object) + .line 138,138 : 9,10 '' + IL_0007: ret + } // end of method PluginDialog::ExecuteOnSTAThread + + .method public hidebysig static void ExecuteOnSTAThread(class [mscorlib]System.Threading.ParameterizedThreadStart threadStart, + object state) cil managed + { + // Code size 72 (0x48) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Threading.Thread thread, + [1] class Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5' 'CS$<>8__locals6') + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5'::.ctor() + IL_0005: stloc.1 + IL_0006: ldloc.1 + IL_0007: ldarg.0 + IL_0008: stfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5'::threadStart + .line 142,142 : 13,37 '' + IL_000d: ldloc.1 + IL_000e: ldfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5'::threadStart + IL_0013: brtrue.s IL_0020 + + .line 143,143 : 17,64 '' + IL_0015: ldstr "threadStart" + IL_001a: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001f: throw + + .line 145,156 : 13,20 '' + IL_0020: ldloc.1 + IL_0021: ldftn instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog/'<>c__DisplayClass5'::'b__4'(object) + IL_0027: newobj instance void [mscorlib]System.Threading.ParameterizedThreadStart::.ctor(object, + native int) + IL_002c: newobj instance void [mscorlib]System.Threading.Thread::.ctor(class [mscorlib]System.Threading.ParameterizedThreadStart) + IL_0031: stloc.0 + .line 158,158 : 13,58 '' + IL_0032: ldloc.0 + IL_0033: ldc.i4.0 + IL_0034: callvirt instance void [mscorlib]System.Threading.Thread::SetApartmentState(valuetype [mscorlib]System.Threading.ApartmentState) + .line 159,159 : 13,40 '' + IL_0039: ldloc.0 + IL_003a: ldc.i4.1 + IL_003b: callvirt instance void [mscorlib]System.Threading.Thread::set_IsBackground(bool) + .line 161,161 : 13,33 '' + IL_0040: ldloc.0 + IL_0041: ldarg.1 + IL_0042: callvirt instance void [mscorlib]System.Threading.Thread::Start(object) + .line 162,162 : 9,10 '' + IL_0047: ret + } // end of method PluginDialog::ExecuteOnSTAThread + + .method private hidebysig static void Application_ThreadException(object sender, + class [System]System.Threading.ThreadExceptionEventArgs e) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 166,166 : 13,81 '' + IL_0000: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create() + IL_0005: ldarg.1 + IL_0006: callvirt instance class [mscorlib]System.Exception [System]System.Threading.ThreadExceptionEventArgs::get_Exception() + IL_000b: ldnull + IL_000c: callvirt instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.PluginDescriptor) + .line 167,167 : 9,10 '' + IL_0011: ret + } // end of method PluginDialog::Application_ThreadException + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 34,34 : 9,93 '' + IL_0000: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor() + IL_0005: stsfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Forms.PluginDialog::ActiveDialogs + IL_000a: ret + } // end of method PluginDialog::.cctor + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + Context() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Forms.PluginDialog::get_Context() + } // end of property PluginDialog::Context +} // end of class Virtuoso.Miranda.Plugins.Forms.PluginDialog + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.SingletonDialog + extends Virtuoso.Miranda.Plugins.Forms.PluginDialog +{ + .class auto ansi sealed nested private ShowSingletonInvoker + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method ShowSingletonInvoker::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(bool modal) runtime managed + { + } // end of method ShowSingletonInvoker::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(bool modal, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method ShowSingletonInvoker::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method ShowSingletonInvoker::EndInvoke + + } // end of class ShowSingletonInvoker + + .field private static initonly class [mscorlib]System.Collections.Generic.Dictionary`2 visibleDialogs + .field private string singletonName + .method family hidebysig specialname static + class [mscorlib]System.Collections.Generic.Dictionary`2 + get_VisibleDialogs() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 32,32 : 19,41 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\SingletonDialog.cs' + IL_0000: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0005: ret + } // end of method SingletonDialog::get_VisibleDialogs + + .method family hidebysig specialname instance string + get_SingletonName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 38,38 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::singletonName + IL_0006: ret + } // end of method SingletonDialog::get_SingletonName + + .method private hidebysig specialname instance void + set_SingletonName(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 39,39 : 27,49 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::singletonName + .line 39,39 : 50,51 '' + IL_0007: ret + } // end of method SingletonDialog::set_SingletonName + + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 46,46 : 9,49 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: call instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::.ctor(string) + .line 46,46 : 52,53 '' + IL_0007: ret + } // end of method SingletonDialog::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(string name) cil managed + { + // Code size 35 (0x23) + .maxstack 8 + .line 48,48 : 9,47 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::.ctor() + .line 50,50 : 13,96 '' + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000d: brtrue.s IL_0012 + + IL_000f: ldarg.1 + IL_0010: br.s IL_001d + + IL_0012: ldarg.0 + IL_0013: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0018: call string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::GetDefaultName(class [mscorlib]System.Type) + IL_001d: stfld string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::singletonName + .line 51,51 : 9,10 '' + IL_0022: ret + } // end of method SingletonDialog::.ctor + + .method assembly hidebysig strict virtual + instance void RegisterDialog() cil managed + { + // Code size 63 (0x3f) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000) + .line 59,59 : 13,34 '' + IL_0000: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0005: dup + IL_0006: stloc.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 61,61 : 17,64 '' + .try + { + IL_000c: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0011: ldarg.0 + IL_0012: call instance string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_SingletonName() + IL_0017: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_001c: brtrue.s IL_002f + + .line 62,62 : 21,58 '' + IL_001e: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0023: ldarg.0 + IL_0024: call instance string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_SingletonName() + IL_0029: ldarg.0 + IL_002a: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + IL_002f: leave.s IL_0038 + + } // end .try + finally + { + IL_0031: ldloc.0 + IL_0032: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0037: endfinally + .line 65,65 : 13,35 '' + } // end handler + IL_0038: ldarg.0 + IL_0039: call instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::RegisterDialog() + .line 66,66 : 9,10 '' + IL_003e: ret + } // end of method SingletonDialog::RegisterDialog + + .method assembly hidebysig strict virtual + instance void UnregisterDialog() cil managed + { + // Code size 45 (0x2d) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0000) + .line 70,70 : 13,34 '' + IL_0000: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0005: dup + IL_0006: stloc.0 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 71,71 : 17,54 '' + .try + { + IL_000c: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0011: ldarg.0 + IL_0012: call instance string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_SingletonName() + IL_0017: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::Remove(!0) + IL_001c: pop + IL_001d: leave.s IL_0026 + + } // end .try + finally + { + IL_001f: ldloc.0 + IL_0020: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0025: endfinally + .line 73,73 : 13,37 '' + } // end handler + IL_0026: ldarg.0 + IL_0027: call instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterDialog() + .line 74,74 : 9,10 '' + IL_002c: ret + } // end of method SingletonDialog::UnregisterDialog + + .method public hidebysig static !!TForm + GetSingleton<(Virtuoso.Miranda.Plugins.Forms.PluginDialog) TForm>(bool createIfNeeded) cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 82,82 : 13,80 '' + IL_0000: ldarg.0 + IL_0001: ldtoken !!TForm + IL_0006: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000b: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0010: call !!0 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::GetSingleton(bool, + string) + IL_0015: ret + } // end of method SingletonDialog::GetSingleton + + .method public hidebysig static !!TForm + GetSingleton<(Virtuoso.Miranda.Plugins.Forms.PluginDialog) TForm>(bool createIfNeeded, + string name) cil managed + { + // Code size 134 (0x86) + .maxstack 2 + .locals init ([0] !!TForm CS$1$0000, + [1] class [mscorlib]System.Collections.Generic.Dictionary`2 CS$2$0001, + [2] !!TForm CS$0$0002) + .line 87,87 : 13,44 '' + IL_0000: ldarg.1 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 88,88 : 17,57 '' + IL_0008: ldstr "name" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 90,90 : 13,34 '' + IL_0013: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0018: dup + IL_0019: stloc.1 + IL_001a: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 92,92 : 17,90 '' + .try + { + IL_001f: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0024: ldarg.1 + IL_0025: callvirt instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_002a: brfalse.s IL_003e + + IL_002c: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_0031: ldarg.1 + IL_0032: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0037: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_IsDisposed() + IL_003c: brfalse.s IL_0065 + + .line 94,94 : 21,40 '' + IL_003e: ldarg.0 + IL_003f: brfalse.s IL_0059 + + .line 95,95 : 25,85 '' + IL_0041: ldtoken !!TForm + IL_0046: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_004b: ldc.i4.1 + IL_004c: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type, + bool) + IL_0051: unbox.any !!TForm + IL_0056: stloc.0 + IL_0057: leave.s IL_0084 + + .line 97,97 : 25,37 '' + IL_0059: ldloca.s CS$0$0002 + IL_005b: initobj !!TForm + IL_0061: ldloc.2 + IL_0062: stloc.0 + IL_0063: leave.s IL_0084 + + .line 100,100 : 21,58 '' + IL_0065: ldsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_006a: ldarg.1 + IL_006b: callvirt instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0070: isinst !!TForm + IL_0075: unbox.any !!TForm + IL_007a: stloc.0 + IL_007b: leave.s IL_0084 + + } // end .try + finally + { + IL_007d: ldloc.1 + IL_007e: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0083: endfinally + .line 102,102 : 9,10 '' + } // end handler + IL_0084: ldloc.0 + IL_0085: ret + } // end of method SingletonDialog::GetSingleton + + .method public hidebysig instance void + ShowSingleton(bool modal) cil managed + { + // Code size 53 (0x35) + .maxstack 5 + .locals init ([0] object[] CS$0$0000) + .line 108,108 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_InvokeRequired() + IL_0006: brfalse.s IL_002d + + .line 109,109 : 17,74 '' + IL_0008: ldarg.0 + IL_0009: ldarg.0 + IL_000a: ldftn instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::DoShowSingleton(bool) + IL_0010: newobj instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog/ShowSingletonInvoker::.ctor(object, + native int) + IL_0015: ldc.i4.1 + IL_0016: newarr [mscorlib]System.Object + IL_001b: stloc.0 + IL_001c: ldloc.0 + IL_001d: ldc.i4.0 + IL_001e: ldarg.1 + IL_001f: box [mscorlib]System.Boolean + IL_0024: stelem.ref + IL_0025: ldloc.0 + IL_0026: call instance object [System.Windows.Forms]System.Windows.Forms.Control::Invoke(class [mscorlib]System.Delegate, + object[]) + IL_002b: pop + IL_002c: ret + + .line 111,111 : 17,40 '' + IL_002d: ldarg.0 + IL_002e: ldarg.1 + IL_002f: call instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::DoShowSingleton(bool) + .line 112,112 : 9,10 '' + IL_0034: ret + } // end of method SingletonDialog::ShowSingleton + + .method private hidebysig instance void + DoShowSingleton(bool modal) cil managed + { + // Code size 33 (0x21) + .maxstack 8 + .line 116,116 : 13,25 '' + IL_0000: ldarg.0 + IL_0001: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::get_Visible() + IL_0006: brfalse.s IL_000f + + .line 117,117 : 17,28 '' + IL_0008: ldarg.0 + IL_0009: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Activate() + IL_000e: ret + + .line 118,118 : 18,28 '' + IL_000f: ldarg.1 + IL_0010: brfalse.s IL_001a + + .line 119,119 : 17,30 '' + IL_0012: ldarg.0 + IL_0013: call instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.Form::ShowDialog() + IL_0018: pop + IL_0019: ret + + .line 121,121 : 17,24 '' + IL_001a: ldarg.0 + IL_001b: call instance void [System.Windows.Forms]System.Windows.Forms.Control::Show() + .line 122,122 : 9,10 '' + IL_0020: ret + } // end of method SingletonDialog::DoShowSingleton + + .method public hidebysig static string + GetDefaultName(class [mscorlib]System.Type 'type') cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 126,126 : 13,30 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 127,127 : 17,57 '' + IL_0003: ldstr "type" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 129,129 : 13,34 '' + IL_000e: ldarg.0 + IL_000f: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0014: ret + } // end of method SingletonDialog::GetDefaultName + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 29,29 : 9,129 '' + IL_0000: ldc.i4.1 + IL_0001: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0006: stsfld class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::visibleDialogs + IL_000b: ret + } // end of method SingletonDialog::.cctor + + .property class [mscorlib]System.Collections.Generic.Dictionary`2 + VisibleDialogs() + { + .get class [mscorlib]System.Collections.Generic.Dictionary`2 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_VisibleDialogs() + } // end of property SingletonDialog::VisibleDialogs + .property instance string SingletonName() + { + .get instance string Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_SingletonName() + .set instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::set_SingletonName(string) + } // end of property SingletonDialog::SingletonName +} // end of class Virtuoso.Miranda.Plugins.Forms.SingletonDialog + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog + extends Virtuoso.Miranda.Plugins.Forms.SingletonDialog +{ + .field private static literal char PathSeparator = char(0x002F) + .field private bool Ok + .field private class [mscorlib]System.Collections.Generic.List`1 ConfigurableEntities + .field private string[] CurrentPath + .field private string ConfigurationParameter + .field private class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories + .field private class [System]System.ComponentModel.IContainer components + .field private class [System.Windows.Forms]System.Windows.Forms.Panel TopPanel + .field private class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher RibbonPageSwitcher + .field private class [TabStripControlLibrary]RibbonStyle.TabStrip RibbonStrip + .field private class [System.Windows.Forms]System.Windows.Forms.Button CancelBTN + .field private class [System.Windows.Forms]System.Windows.Forms.Button OkBTN + .field private class [System.Windows.Forms]System.Windows.Forms.Panel ControlPanel + .field private class [System.Windows.Forms]System.Windows.Forms.Panel BottomPanel + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader WelcomePanel + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 115 (0x73) + .maxstack 4 + .line 58,58 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\ConfigurationDialog.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::.ctor() + .line 60,60 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::InitializeComponent() + .line 61,61 : 13,119 '' + IL_000c: ldarg.0 + IL_000d: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0012: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripRenderer [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Renderer() + IL_0017: castclass [TabStripControlLibrary]RibbonStyle.TabStripProfessionalRenderer + IL_001c: ldc.i4 0xfe + IL_0021: ldc.i4 0xd1 + IL_0026: ldc.i4.s 94 + IL_0028: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_002d: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabStripProfessionalRenderer::set_HaloColor(valuetype [System.Drawing]System.Drawing.Color) + .line 62,62 : 13,120 '' + IL_0032: ldarg.0 + IL_0033: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0038: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripRenderer [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Renderer() + IL_003d: castclass [TabStripControlLibrary]RibbonStyle.TabStripProfessionalRenderer + IL_0042: ldc.i4 0xd7 + IL_0047: ldc.i4 0xe3 + IL_004c: ldc.i4 0xf2 + IL_0051: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0056: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabStripProfessionalRenderer::set_BaseColor(valuetype [System.Drawing]System.Drawing.Color) + .line 64,64 : 13,51 '' + IL_005b: ldarg.0 + IL_005c: newobj instance void Virtuoso.Miranda.Plugins.Configuration.CategoryCollection::.ctor() + IL_0061: stfld class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::categories + .line 65,65 : 13,78 '' + IL_0066: ldarg.0 + IL_0067: ldc.i4.5 + IL_0068: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_006d: stfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + .line 66,66 : 9,10 '' + IL_0072: ret + } // end of method ConfigurationDialog::.ctor + + .method public hidebysig static void Present(bool modal) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 70,70 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldnull + IL_0003: call void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present(bool, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + string) + .line 71,71 : 9,10 '' + IL_0008: ret + } // end of method ConfigurationDialog::Present + + .method public hidebysig static void Present(bool modal, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 75,75 : 13,42 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present(bool, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + string) + .line 76,76 : 9,10 '' + IL_0008: ret + } // end of method ConfigurationDialog::Present + + .method public hidebysig static void Present(bool modal, + string path) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 80,80 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldarg.1 + IL_0003: call void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present(bool, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + string) + .line 81,81 : 9,10 '' + IL_0008: ret + } // end of method ConfigurationDialog::Present + + .method public hidebysig static void Present(bool modal, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin, + string path) cil managed + { + // Code size 38 (0x26) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog dialog) + .line 85,85 : 13,103 '' + IL_0000: ldc.i4.0 + IL_0001: call !!0 Virtuoso.Miranda.Plugins.Forms.SingletonDialog::GetSingleton(bool) + IL_0006: stloc.0 + .line 87,87 : 13,32 '' + IL_0007: ldloc.0 + IL_0008: brtrue.s IL_001e + + .line 89,89 : 17,52 '' + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::.ctor() + IL_000f: stloc.0 + .line 91,91 : 17,38 '' + IL_0010: ldloc.0 + IL_0011: ldarg.2 + IL_0012: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::SetPath(string) + .line 92,92 : 17,41 '' + IL_0017: ldloc.0 + IL_0018: ldarg.1 + IL_0019: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Populate(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + .line 95,95 : 13,41 '' + IL_001e: ldloc.0 + IL_001f: ldarg.0 + IL_0020: callvirt instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::ShowSingleton(bool) + .line 96,96 : 9,10 '' + IL_0025: ret + } // end of method ConfigurationDialog::Present + + .method private hidebysig instance void + OkBTN_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 104,104 : 13,23 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Ok + .line 105,105 : 13,21 '' + IL_0007: ldarg.0 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Close() + .line 106,106 : 9,10 '' + IL_000d: ret + } // end of method ConfigurationDialog::OkBTN_Click + + .method private hidebysig instance void + CancelBTN_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 110,110 : 13,24 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Ok + .line 111,111 : 13,21 '' + IL_0007: ldarg.0 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Close() + .line 112,112 : 9,10 '' + IL_000d: ret + } // end of method ConfigurationDialog::CancelBTN_Click + + .method private hidebysig instance void + ConfigurationDialog_FormClosing(object sender, + class [System.Windows.Forms]System.Windows.Forms.FormClosingEventArgs e) cil managed + { + // Code size 103 (0x67) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor descriptor, + [1] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000) + .line 116,116 : 13,50 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Ok + IL_0006: brfalse.s IL_0018 + + IL_0008: ldarg.0 + IL_0009: call instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanDismissActiveControl() + IL_000e: brtrue.s IL_0018 + + .line 118,118 : 17,33 '' + IL_0010: ldarg.2 + IL_0011: ldc.i4.1 + IL_0012: callvirt instance void [System]System.ComponentModel.CancelEventArgs::set_Cancel(bool) + .line 119,119 : 17,24 '' + IL_0017: ret + + .line 122,122 : 65,85 '' + IL_0018: ldarg.0 + IL_0019: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_001e: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0023: stloc.1 + .try + { + IL_0024: br.s IL_003b + + .line 122,122 : 22,61 '' + IL_0026: ldloca.s CS$5$0000 + IL_0028: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_002d: stloc.0 + .line 123,123 : 17,48 '' + IL_002e: ldarg.0 + IL_002f: ldloc.0 + IL_0030: ldarg.0 + IL_0031: ldfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Ok + IL_0036: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ProcessChanges(class Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor, + bool) + .line 122,122 : 62,64 '' + IL_003b: ldloca.s CS$5$0000 + IL_003d: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0042: brtrue.s IL_0026 + + IL_0044: leave.s IL_0054 + + } // end .try + finally + { + IL_0046: ldloca.s CS$5$0000 + IL_0048: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_004e: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0053: endfinally + .line 125,125 : 13,20 '' + } // end handler + IL_0054: ldarg.0 + IL_0055: ldfld bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Ok + IL_005a: brfalse.s IL_0066 + + .line 126,126 : 17,41 '' + IL_005c: call class Virtuoso.Miranda.Plugins.Properties.Settings Virtuoso.Miranda.Plugins.Properties.Settings::get_Default() + IL_0061: callvirt instance void [System]System.Configuration.SettingsBase::Save() + .line 127,127 : 9,10 '' + IL_0066: ret + } // end of method ConfigurationDialog::ConfigurationDialog_FormClosing + + .method private hidebysig instance void + ProcessChanges(class Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor descriptor, + bool save) cil managed + { + // Code size 185 (0xb9) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.Category category, + [1] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + [2] class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl control, + [3] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration config, + [4] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000, + [5] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0001, + [6] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$6$0002, + [7] int32 CS$7$0003) + .line 131,131 : 43,64 '' + IL_0000: ldarg.1 + IL_0001: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Categories() + IL_0006: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_000b: stloc.s CS$5$0000 + .try + { + IL_000d: br.s IL_006d + + .line 131,131 : 22,39 '' + IL_000f: ldloca.s CS$5$0000 + IL_0011: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_0016: stloc.0 + .line 133,133 : 47,61 '' + IL_0017: ldloc.0 + IL_0018: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::get_Items() + IL_001d: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_0022: stloc.s CS$5$0001 + .try + { + IL_0024: br.s IL_0054 + + .line 133,133 : 26,43 '' + IL_0026: ldloca.s CS$5$0001 + IL_0028: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_002d: stloc.1 + .line 135,135 : 21,50 '' + IL_002e: ldloc.1 + IL_002f: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_ControlInitialized() + IL_0034: brfalse.s IL_0054 + + .line 138,138 : 21,64 '' + IL_0036: ldloc.1 + IL_0037: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Control() + IL_003c: stloc.2 + .line 140,140 : 21,49 '' + IL_003d: ldarg.2 + IL_003e: brfalse.s IL_004e + + IL_0040: ldloc.2 + IL_0041: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_IsDirty() + IL_0046: brfalse.s IL_004e + + .line 141,141 : 25,40 '' + IL_0048: ldloc.2 + IL_0049: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::Save() + .line 143,143 : 21,37 '' + IL_004e: ldloc.2 + IL_004f: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::Close() + .line 133,133 : 44,46 '' + IL_0054: ldloca.s CS$5$0001 + IL_0056: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_005b: brtrue.s IL_0026 + + IL_005d: leave.s IL_006d + + } // end .try + finally + { + IL_005f: ldloca.s CS$5$0001 + IL_0061: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0067: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_006c: endfinally + .line 131,131 : 40,42 '' + } // end handler + IL_006d: ldloca.s CS$5$0000 + IL_006f: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_0074: brtrue.s IL_000f + + IL_0076: leave.s IL_0086 + + } // end .try + finally + { + IL_0078: ldloca.s CS$5$0000 + IL_007a: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0080: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0085: endfinally + .line 147,147 : 13,22 '' + } // end handler + IL_0086: ldarg.2 + IL_0087: brfalse.s IL_00b8 + + .line 149,149 : 56,87 '' + IL_0089: ldarg.1 + IL_008a: callvirt instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin() + IL_008f: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Configuration() + IL_0094: stloc.s CS$6$0002 + IL_0096: ldc.i4.0 + IL_0097: stloc.s CS$7$0003 + IL_0099: br.s IL_00b0 + + .line 149,149 : 26,52 '' + IL_009b: ldloc.s CS$6$0002 + IL_009d: ldloc.s CS$7$0003 + IL_009f: ldelem.ref + IL_00a0: stloc.3 + .line 150,150 : 21,40 '' + IL_00a1: ldloc.3 + IL_00a2: brfalse.s IL_00aa + + .line 151,151 : 25,39 '' + IL_00a4: ldloc.3 + IL_00a5: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save() + IL_00aa: ldloc.s CS$7$0003 + IL_00ac: ldc.i4.1 + IL_00ad: add + IL_00ae: stloc.s CS$7$0003 + .line 149,149 : 53,55 '' + IL_00b0: ldloc.s CS$7$0003 + IL_00b2: ldloc.s CS$6$0002 + IL_00b4: ldlen + IL_00b5: conv.i4 + IL_00b6: blt.s IL_009b + + .line 153,153 : 9,10 '' + IL_00b8: ret + } // end of method ConfigurationDialog::ProcessChanges + + .method public hidebysig static string + CreatePath(class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin, + string category, + string item) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 163,163 : 13,61 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldnull + IL_0004: call string Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreatePath(class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + string, + string, + string) + IL_0009: ret + } // end of method ConfigurationDialog::CreatePath + + .method public hidebysig static string + CreatePath(class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin, + string category, + string item, + string parameter) cil managed + { + // Code size 114 (0x72) + .maxstack 5 + .locals init ([0] object[] CS$0$0000, + [1] char CS$0$0001) + .line 168,168 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 169,169 : 17,59 '' + IL_0003: ldstr "plugin" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 171,171 : 13,48 '' + IL_000e: ldarg.1 + IL_000f: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0014: brfalse.s IL_0021 + + .line 172,172 : 17,61 '' + IL_0016: ldstr "category" + IL_001b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0020: throw + + .line 174,174 : 13,44 '' + IL_0021: ldarg.2 + IL_0022: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0027: brfalse.s IL_0034 + + .line 175,175 : 17,57 '' + IL_0029: ldstr "item" + IL_002e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0033: throw + + .line 177,177 : 13,143 '' + IL_0034: ldstr "{1}{0}{2}{0}{3}{0}{4}" + IL_0039: ldc.i4.5 + IL_003a: newarr [mscorlib]System.Object + IL_003f: stloc.0 + IL_0040: ldloc.0 + IL_0041: ldc.i4.0 + IL_0042: ldc.i4.s 47 + IL_0044: stloc.1 + IL_0045: ldloca.s CS$0$0001 + IL_0047: call instance string [mscorlib]System.Char::ToString() + IL_004c: stelem.ref + IL_004d: ldloc.0 + IL_004e: ldc.i4.1 + IL_004f: ldarg.0 + IL_0050: callvirt instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + IL_0055: stelem.ref + IL_0056: ldloc.0 + IL_0057: ldc.i4.2 + IL_0058: ldarg.1 + IL_0059: stelem.ref + IL_005a: ldloc.0 + IL_005b: ldc.i4.3 + IL_005c: ldarg.2 + IL_005d: stelem.ref + IL_005e: ldloc.0 + IL_005f: ldc.i4.4 + IL_0060: ldarg.3 + IL_0061: dup + IL_0062: brtrue.s IL_006a + + IL_0064: pop + IL_0065: ldsfld string [mscorlib]System.String::Empty + IL_006a: stelem.ref + IL_006b: ldloc.0 + IL_006c: call string [mscorlib]System.String::Format(string, + object[]) + IL_0071: ret + } // end of method ConfigurationDialog::CreatePath + + .method private hidebysig instance void + SetPath(string path) cil managed + { + // Code size 89 (0x59) + .maxstack 5 + .locals init ([0] char[] CS$0$0000) + .line 182,182 : 13,44 '' + IL_0000: ldarg.1 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0009 + + .line 183,183 : 17,24 '' + IL_0008: ret + + .line 185,185 : 13,53 '' + IL_0009: ldarg.0 + IL_000a: ldarg.1 + IL_000b: ldc.i4.1 + IL_000c: newarr [mscorlib]System.Char + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: ldc.i4.0 + IL_0014: ldc.i4.s 47 + IL_0016: stelem.i2 + IL_0017: ldloc.0 + IL_0018: callvirt instance string[] [mscorlib]System.String::Split(char[]) + IL_001d: stfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + .line 187,187 : 13,41 '' + IL_0022: ldarg.0 + IL_0023: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_0028: ldlen + IL_0029: conv.i4 + IL_002a: ldc.i4.4 + IL_002b: beq.s IL_0038 + + .line 188,188 : 17,63 '' + IL_002d: ldstr "path" + IL_0032: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0037: throw + + .line 190,190 : 13,101 '' + IL_0038: ldarg.0 + IL_0039: ldarg.0 + IL_003a: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_003f: ldc.i4.3 + IL_0040: ldelem.ref + IL_0041: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0046: brtrue.s IL_0052 + + IL_0048: ldarg.0 + IL_0049: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_004e: ldc.i4.3 + IL_004f: ldelem.ref + IL_0050: br.s IL_0053 + + IL_0052: ldnull + IL_0053: stfld string Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurationParameter + .line 191,191 : 9,10 '' + IL_0058: ret + } // end of method ConfigurationDialog::SetPath + + .method private hidebysig instance bool + CanNavigateTo(class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin, + class Virtuoso.Miranda.Plugins.Configuration.Category category) cil managed + { + // Code size 81 (0x51) + .maxstack 2 + .line 195,195 : 13,32 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 196,196 : 17,59 '' + IL_0003: ldstr "plugin" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 198,198 : 13,34 '' + IL_000e: ldarg.2 + IL_000f: brtrue.s IL_001c + + .line 199,199 : 17,61 '' + IL_0011: ldstr "category" + IL_0016: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001b: throw + + .line 201,201 : 13,37 '' + IL_001c: ldarg.0 + IL_001d: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_0022: brtrue.s IL_0026 + + .line 202,202 : 17,30 '' + IL_0024: ldc.i4.0 + IL_0025: ret + + .line 204,204 : 13,87 '' + IL_0026: ldarg.0 + IL_0027: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_002c: ldc.i4.0 + IL_002d: ldelem.ref + IL_002e: ldarg.1 + IL_002f: callvirt instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + IL_0034: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0039: brfalse.s IL_004f + + IL_003b: ldarg.0 + IL_003c: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_0041: ldc.i4.1 + IL_0042: ldelem.ref + IL_0043: ldarg.2 + IL_0044: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.Category::get_Name() + IL_0049: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_004e: ret + + IL_004f: ldc.i4.0 + IL_0050: ret + } // end of method ConfigurationDialog::CanNavigateTo + + .method private hidebysig instance bool + CanNavigateTo(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item) cil managed + { + // Code size 44 (0x2c) + .maxstack 8 + .line 209,209 : 13,30 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 210,210 : 17,57 '' + IL_0003: ldstr "item" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 212,212 : 13,37 '' + IL_000e: ldarg.0 + IL_000f: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_0014: brtrue.s IL_0018 + + .line 213,213 : 17,30 '' + IL_0016: ldc.i4.0 + IL_0017: ret + + .line 215,215 : 13,48 '' + IL_0018: ldarg.0 + IL_0019: ldfld string[] Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CurrentPath + IL_001e: ldc.i4.2 + IL_001f: ldelem.ref + IL_0020: ldarg.1 + IL_0021: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Name() + IL_0026: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_002b: ret + } // end of method ConfigurationDialog::CanNavigateTo + + .method private hidebysig instance void + Populate(class Virtuoso.Miranda.Plugins.IConfigurablePlugin pluginToPopulate) cil managed + { + // Code size 133 (0x85) + .maxstack 4 + .line 224,224 : 13,42 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0006: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Clear() + .line 226,226 : 13,60 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0011: ldnull + IL_0012: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPageSwitcher::set_SelectedTabStripPage(class [TabStripControlLibrary]RibbonStyle.TabStripPage) + .line 227,227 : 13,39 '' + IL_0017: ldarg.0 + IL_0018: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_001d: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0022: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Clear() + .line 229,229 : 13,42 '' + IL_0027: ldarg.1 + IL_0028: brtrue.s IL_004c + + .line 231,231 : 17,47 '' + IL_002a: ldarg.0 + IL_002b: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateHyphenConfiguration() + .line 233,233 : 17,66 '' + IL_0030: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0035: callvirt instance bool [mscorlib]System.AppDomain::IsDefaultAppDomain() + IL_003a: brfalse.s IL_0044 + + .line 234,234 : 21,49 '' + IL_003c: ldarg.0 + IL_003d: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateStandalonePlugins() + IL_0042: br.s IL_007e + + .line 236,236 : 21,47 '' + IL_0044: ldarg.0 + IL_0045: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateIsolatedPlugins() + IL_004a: br.s IL_007e + + .line 240,240 : 17,94 '' + IL_004c: ldarg.0 + IL_004d: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0052: ldarg.1 + IL_0053: newobj instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_0058: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 241,241 : 17,72 '' + IL_005d: ldarg.0 + IL_005e: dup + IL_005f: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_0064: ldstr " : {0}" + IL_0069: ldarg.1 + IL_006a: callvirt instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + IL_006f: call string [mscorlib]System.String::Format(string, + object) + IL_0074: call string [mscorlib]System.String::Concat(string, + string) + IL_0079: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 244,244 : 13,29 '' + IL_007e: ldarg.0 + IL_007f: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateItems() + .line 245,245 : 9,10 '' + IL_0084: ret + } // end of method ConfigurationDialog::Populate + + .method private hidebysig instance void + PopulateItems() cil managed + { + // Code size 130 (0x82) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories, + [1] int32 i, + [2] class Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor descriptor, + [3] class [TabStripControlLibrary]RibbonStyle.TabStripPage page, + [4] int32 j, + [5] class Virtuoso.Miranda.Plugins.Configuration.Category category) + .line 249,249 : 13,50 '' + IL_0000: ldnull + IL_0001: stloc.0 + .line 251,251 : 18,28 '' + IL_0002: ldc.i4.0 + IL_0003: stloc.1 + IL_0004: br.s IL_0073 + + .line 253,253 : 17,83 '' + IL_0006: ldarg.0 + IL_0007: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_000c: ldloc.1 + IL_000d: callvirt instance !0 class [mscorlib]System.Collections.Generic.List`1::get_Item(int32) + IL_0012: stloc.2 + .line 254,254 : 17,99 '' + IL_0013: ldarg.0 + IL_0014: ldloc.0 + IL_0015: ldloc.2 + IL_0016: callvirt instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin() + IL_001b: ldloc.1 + IL_001c: call instance class [TabStripControlLibrary]RibbonStyle.TabStripPage Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreateAndRegisterEntityPage(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + int32) + IL_0021: stloc.3 + .line 256,256 : 17,81 '' + IL_0022: ldloc.2 + IL_0023: newobj instance void Virtuoso.Miranda.Plugins.Configuration.CategoryCollection::.ctor() + IL_0028: dup + IL_0029: stloc.0 + IL_002a: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::set_Categories(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection) + .line 257,257 : 17,69 '' + IL_002f: ldloc.2 + IL_0030: callvirt instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin() + IL_0035: ldloc.0 + IL_0036: callvirt instance void Virtuoso.Miranda.Plugins.IConfigurablePlugin::PopulateConfiguration(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection) + .line 259,259 : 22,32 '' + IL_003b: ldc.i4.0 + IL_003c: stloc.s j + IL_003e: br.s IL_0065 + + .line 261,261 : 21,55 '' + IL_0040: ldloc.0 + IL_0041: ldloc.s j + IL_0043: callvirt instance !0 class [mscorlib]System.Collections.Generic.List`1::get_Item(int32) + IL_0048: stloc.s category + .line 263,263 : 21,42 '' + IL_004a: ldloc.s category + IL_004c: brfalse.s IL_005f + + .line 266,266 : 21,81 '' + IL_004e: ldarg.0 + IL_004f: ldloc.3 + IL_0050: ldloc.s category + IL_0052: ldloc.2 + IL_0053: callvirt instance class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin() + IL_0058: ldloc.s j + IL_005a: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateCategoryPanel(class [TabStripControlLibrary]RibbonStyle.TabStripPage, + class Virtuoso.Miranda.Plugins.Configuration.Category, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + int32) + .line 259,259 : 55,58 '' + IL_005f: ldloc.s j + IL_0061: ldc.i4.1 + IL_0062: add + IL_0063: stloc.s j + .line 259,259 : 33,53 '' + IL_0065: ldloc.s j + IL_0067: ldloc.0 + IL_0068: callvirt instance int32 class [mscorlib]System.Collections.Generic.List`1::get_Count() + IL_006d: blt.s IL_0040 + + .line 251,251 : 61,64 '' + IL_006f: ldloc.1 + IL_0070: ldc.i4.1 + IL_0071: add + IL_0072: stloc.1 + .line 251,251 : 29,59 '' + IL_0073: ldloc.1 + IL_0074: ldarg.0 + IL_0075: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_007a: callvirt instance int32 class [mscorlib]System.Collections.Generic.List`1::get_Count() + IL_007f: blt.s IL_0006 + + .line 269,269 : 9,10 '' + IL_0081: ret + } // end of method ConfigurationDialog::PopulateItems + + .method private hidebysig instance void + PopulateIsolatedPlugins() cil managed + { + // Code size 103 (0x67) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection plugins, + [1] class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor, + [2] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000) + .line 273,273 : 13,103 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: callvirt instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager() + IL_000a: callvirt instance class Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins() + IL_000f: stloc.0 + .line 277,277 : 17,70 '' + .try + { + IL_0010: ldloc.0 + IL_0011: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 279,279 : 57,64 '' + IL_0016: ldloc.0 + IL_0017: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_001c: stloc.2 + .try + { + IL_001d: br.s IL_0049 + + .line 279,279 : 26,53 '' + IL_001f: ldloc.2 + IL_0020: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0025: stloc.1 + .line 280,280 : 21,51 '' + IL_0026: ldloc.1 + IL_0027: callvirt instance bool Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsConfigurable() + IL_002c: brfalse.s IL_0049 + + .line 281,281 : 25,124 '' + IL_002e: ldarg.0 + IL_002f: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0034: ldloc.1 + IL_0035: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin() + IL_003a: castclass Virtuoso.Miranda.Plugins.IConfigurablePlugin + IL_003f: newobj instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_0044: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 279,279 : 54,56 '' + IL_0049: ldloc.2 + IL_004a: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_004f: brtrue.s IL_001f + + IL_0051: leave.s IL_005d + + } // end .try + finally + { + IL_0053: ldloc.2 + IL_0054: brfalse.s IL_005c + + IL_0056: ldloc.2 + IL_0057: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_005c: endfinally + } // end handler + IL_005d: leave.s IL_0066 + + .line 285,285 : 17,58 '' + } // end .try + finally + { + IL_005f: ldloc.0 + IL_0060: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0065: endfinally + .line 287,287 : 9,10 '' + } // end handler + IL_0066: ret + } // end of method ConfigurationDialog::PopulateIsolatedPlugins + + .method private hidebysig instance void + PopulateStandalonePlugins() cil managed + { + // Code size 108 (0x6c) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection modules, + [1] class Virtuoso.Hyphen.Mini.Module module, + [2] class [mscorlib]System.Collections.Generic.IEnumerator`1 CS$5$0000) + .line 291,291 : 13,90 '' + IL_0000: call class Virtuoso.Hyphen.Mini.ModuleManager Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton() + IL_0005: callvirt instance class Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection Virtuoso.Hyphen.Mini.ModuleManager::get_RegisteredModules() + IL_000a: stloc.0 + .line 295,295 : 17,70 '' + .try + { + IL_000b: ldloc.0 + IL_000c: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 297,297 : 43,50 '' + IL_0011: ldloc.0 + IL_0012: callvirt instance class [mscorlib]System.Collections.Generic.IEnumerator`1 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::GetEnumerator() + IL_0017: stloc.2 + .try + { + IL_0018: br.s IL_004e + + .line 297,297 : 26,39 '' + IL_001a: ldloc.2 + IL_001b: callvirt instance !0 class [mscorlib]System.Collections.Generic.IEnumerator`1::get_Current() + IL_0020: stloc.1 + .line 298,298 : 21,75 '' + IL_0021: ldloc.1 + IL_0022: callvirt instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_0027: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_002c: callvirt instance bool Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsConfigurable() + IL_0031: brfalse.s IL_004e + + .line 299,299 : 25,130 '' + IL_0033: ldarg.0 + IL_0034: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0039: ldloc.1 + IL_003a: callvirt instance class Virtuoso.Hyphen.Mini.StandalonePlugin Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin() + IL_003f: castclass Virtuoso.Miranda.Plugins.IConfigurablePlugin + IL_0044: newobj instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_0049: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 297,297 : 40,42 '' + IL_004e: ldloc.2 + IL_004f: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0054: brtrue.s IL_001a + + IL_0056: leave.s IL_0062 + + } // end .try + finally + { + IL_0058: ldloc.2 + IL_0059: brfalse.s IL_0061 + + IL_005b: ldloc.2 + IL_005c: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0061: endfinally + } // end handler + IL_0062: leave.s IL_006b + + .line 303,303 : 17,58 '' + } // end .try + finally + { + IL_0064: ldloc.0 + IL_0065: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_006a: endfinally + .line 305,305 : 9,10 '' + } // end handler + IL_006b: ret + } // end of method ConfigurationDialog::PopulateStandalonePlugins + + .method private hidebysig instance void + PopulateHyphenConfiguration() cil managed + { + // Code size 56 (0x38) + .maxstack 8 + .line 309,309 : 13,62 '' + IL_0000: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0005: callvirt instance bool [mscorlib]System.AppDomain::IsDefaultAppDomain() + IL_000a: brfalse.s IL_0022 + + .line 310,310 : 17,107 '' + IL_000c: ldarg.0 + IL_000d: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0012: call class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Singleton() + IL_0017: newobj instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_001c: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + IL_0021: ret + + .line 312,312 : 17,102 '' + IL_0022: ldarg.0 + IL_0023: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurableEntities + IL_0028: call class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Singleton() + IL_002d: newobj instance void Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor(class Virtuoso.Miranda.Plugins.IConfigurablePlugin) + IL_0032: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 313,313 : 9,10 '' + IL_0037: ret + } // end of method ConfigurationDialog::PopulateHyphenConfiguration + + .method private hidebysig instance void + PopulateCategoryPanel(class [TabStripControlLibrary]RibbonStyle.TabStripPage entityPage, + class Virtuoso.Miranda.Plugins.Configuration.Category category, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin plugin, + int32 index) cil managed + { + // Code size 144 (0x90) + .maxstack 3 + .locals init ([0] class [TabStripControlLibrary]RibbonStyle.TabPanel categoryPanel, + [1] valuetype [System.Drawing]System.Drawing.Point nextLocation, + [2] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + [3] class [TabStripControlLibrary]RibbonStyle.RibbonButton btn, + [4] valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator CS$5$0000) + .line 321,321 : 13,75 '' + IL_0000: ldarg.0 + IL_0001: ldarg.2 + IL_0002: ldarg.s index + IL_0004: call instance class [TabStripControlLibrary]RibbonStyle.TabPanel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreateCategoryPanel(class Virtuoso.Miranda.Plugins.Configuration.Category, + int32) + IL_0009: stloc.0 + .line 322,322 : 13,52 '' + IL_000a: ldarg.1 + IL_000b: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0010: ldloc.0 + IL_0011: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 324,324 : 13,49 '' + IL_0016: ldarg.0 + IL_0017: ldarg.3 + IL_0018: ldarg.2 + IL_0019: call instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanNavigateTo(class Virtuoso.Miranda.Plugins.IConfigurablePlugin, + class Virtuoso.Miranda.Plugins.Configuration.Category) + IL_001e: brfalse.s IL_002c + + .line 325,325 : 17,70 '' + IL_0020: ldarg.0 + IL_0021: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0026: ldarg.1 + IL_0027: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPageSwitcher::set_SelectedTabStripPage(class [TabStripControlLibrary]RibbonStyle.TabStripPage) + .line 327,327 : 13,46 '' + IL_002c: ldloca.s nextLocation + IL_002e: initobj [System.Drawing]System.Drawing.Point + .line 329,329 : 43,57 '' + IL_0034: ldarg.2 + IL_0035: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::get_Items() + IL_003a: callvirt instance valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator class [mscorlib]System.Collections.Generic.List`1::GetEnumerator() + IL_003f: stloc.s CS$5$0000 + .try + { + IL_0041: br.s IL_0076 + + .line 329,329 : 22,39 '' + IL_0043: ldloca.s CS$5$0000 + IL_0045: call instance !0 valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::get_Current() + IL_004a: stloc.2 + .line 331,331 : 17,73 '' + IL_004b: ldarg.0 + IL_004c: ldloc.2 + IL_004d: ldloca.s nextLocation + IL_004f: call instance class [TabStripControlLibrary]RibbonStyle.RibbonButton Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreateButton(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem, + valuetype [System.Drawing]System.Drawing.Point&) + IL_0054: stloc.3 + .line 332,332 : 17,49 '' + IL_0055: ldloc.0 + IL_0056: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_005b: ldloc.3 + IL_005c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 334,334 : 17,41 '' + IL_0061: ldarg.0 + IL_0062: ldloc.2 + IL_0063: call instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanNavigateTo(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem) + IL_0068: brfalse.s IL_0076 + + .line 335,335 : 21,62 '' + IL_006a: ldarg.0 + IL_006b: ldloc.3 + IL_006c: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_0071: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonButton_Click(object, + class [mscorlib]System.EventArgs) + .line 329,329 : 40,42 '' + IL_0076: ldloca.s CS$5$0000 + IL_0078: call instance bool valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator::MoveNext() + IL_007d: brtrue.s IL_0043 + + IL_007f: leave.s IL_008f + + } // end .try + finally + { + IL_0081: ldloca.s CS$5$0000 + IL_0083: constrained. valuetype [mscorlib]System.Collections.Generic.List`1/Enumerator + IL_0089: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_008e: endfinally + .line 337,337 : 9,10 '' + } // end handler + IL_008f: ret + } // end of method ConfigurationDialog::PopulateCategoryPanel + + .method private hidebysig instance class [TabStripControlLibrary]RibbonStyle.RibbonButton + CreateButton(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + valuetype [System.Drawing]System.Drawing.Point& nextLocation) cil managed + { + // Code size 221 (0xdd) + .maxstack 3 + .locals init ([0] class [TabStripControlLibrary]RibbonStyle.RibbonButton btn, + [1] valuetype [System.Drawing]System.Drawing.Size CS$0$0000, + [2] valuetype [System.Drawing]System.Drawing.Size CS$0$0001) + .line 341,341 : 13,51 '' + IL_0000: newobj instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::.ctor() + IL_0005: stloc.0 + .line 342,342 : 13,34 '' + IL_0006: ldloc.0 + IL_0007: ldarg.1 + IL_0008: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Name() + IL_000d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 344,344 : 13,37 '' + IL_0012: ldloc.0 + IL_0013: ldc.i4.1 + IL_0014: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_ShowInfoTips(bool) + .line 345,345 : 13,39 '' + IL_0019: ldloc.0 + IL_001a: ldarg.1 + IL_001b: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Name() + IL_0020: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_InfoTitle(string) + .line 346,346 : 13,48 '' + IL_0025: ldloc.0 + IL_0026: ldarg.1 + IL_0027: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Description() + IL_002c: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_InfoComment(string) + .line 348,348 : 13,36 '' + IL_0031: ldarg.1 + IL_0032: callvirt instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Image() + IL_0037: brtrue.s IL_0044 + + .line 349,349 : 17,72 '' + IL_0039: ldarg.1 + IL_003a: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Configuration() + IL_003f: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_Image(class [System.Drawing]System.Drawing.Image) + .line 351,351 : 13,34 '' + IL_0044: ldloc.0 + IL_0045: ldarg.1 + IL_0046: callvirt instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Image() + IL_004b: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_img(class [System.Drawing]System.Drawing.Image) + .line 352,352 : 13,37 '' + IL_0050: ldloc.0 + IL_0051: ldloc.0 + IL_0052: callvirt instance class [System.Drawing]System.Drawing.Image [TabStripControlLibrary]RibbonStyle.RibbonButton::get_img() + IL_0057: callvirt instance valuetype [System.Drawing]System.Drawing.Size [System.Drawing]System.Drawing.Image::get_Size() + IL_005c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 354,354 : 13,38 '' + IL_0061: ldarg.2 + IL_0062: call instance bool [System.Drawing]System.Drawing.Point::get_IsEmpty() + IL_0067: brfalse.s IL_0084 + + .line 355,355 : 17,62 '' + IL_0069: ldarg.2 + IL_006a: ldloc.0 + IL_006b: callvirt instance valuetype [System.Drawing]System.Drawing.Size [System.Windows.Forms]System.Windows.Forms.Control::get_Size() + IL_0070: stloc.1 + IL_0071: ldloca.s CS$0$0000 + IL_0073: call instance int32 [System.Drawing]System.Drawing.Size::get_Width() + IL_0078: neg + IL_0079: ldc.i4.6 + IL_007a: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_007f: stobj [System.Drawing]System.Drawing.Point + .line 357,357 : 13,59 '' + IL_0084: ldloc.0 + IL_0085: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_RibbonHover() + IL_008a: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_img_on(class [System.Drawing]System.Drawing.Image) + .line 358,358 : 13,62 '' + IL_008f: ldloc.0 + IL_0090: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_RibbonClick() + IL_0095: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonButton::set_img_click(class [System.Drawing]System.Drawing.Image) + .line 360,360 : 13,60 '' + IL_009a: ldarg.2 + IL_009b: ldloc.0 + IL_009c: callvirt instance class [System.Drawing]System.Drawing.Image [TabStripControlLibrary]RibbonStyle.RibbonButton::get_img() + IL_00a1: callvirt instance valuetype [System.Drawing]System.Drawing.Size [System.Drawing]System.Drawing.Image::get_Size() + IL_00a6: stloc.2 + IL_00a7: ldloca.s CS$0$0001 + IL_00a9: call instance int32 [System.Drawing]System.Drawing.Size::get_Width() + IL_00ae: ldc.i4.5 + IL_00af: add + IL_00b0: ldc.i4.0 + IL_00b1: call instance void [System.Drawing]System.Drawing.Point::Offset(int32, + int32) + .line 361,361 : 13,41 '' + IL_00b6: ldloc.0 + IL_00b7: ldarg.2 + IL_00b8: ldobj [System.Drawing]System.Drawing.Point + IL_00bd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 363,363 : 13,28 '' + IL_00c2: ldloc.0 + IL_00c3: ldarg.1 + IL_00c4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Tag(object) + .line 364,364 : 13,45 '' + IL_00c9: ldloc.0 + IL_00ca: ldarg.0 + IL_00cb: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonButton_Click(object, + class [mscorlib]System.EventArgs) + IL_00d1: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_00d6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::add_Click(class [mscorlib]System.EventHandler) + .line 366,366 : 13,24 '' + IL_00db: ldloc.0 + IL_00dc: ret + } // end of method ConfigurationDialog::CreateButton + + .method private hidebysig instance class [TabStripControlLibrary]RibbonStyle.TabPanel + CreateCategoryPanel(class Virtuoso.Miranda.Plugins.Configuration.Category category, + int32 index) cil managed + { + // Code size 158 (0x9e) + .maxstack 5 + .locals init ([0] class [TabStripControlLibrary]RibbonStyle.TabPanel categoryPanel) + .line 371,371 : 13,53 '' + IL_0000: newobj instance void [TabStripControlLibrary]RibbonStyle.TabPanel::.ctor() + IL_0005: stloc.0 + .line 373,373 : 13,84 '' + IL_0006: ldloc.0 + IL_0007: ldc.i4 0xd7 + IL_000c: ldc.i4 0xe3 + IL_0011: ldc.i4 0xf2 + IL_0016: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_001b: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPanel::set_BaseColor(valuetype [System.Drawing]System.Drawing.Color) + .line 374,374 : 13,86 '' + IL_0020: ldloc.0 + IL_0021: ldc.i4 0xe9 + IL_0026: ldc.i4 0xef + IL_002b: ldc.i4 0xf8 + IL_0030: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0035: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPanel::set_BaseColorOn(valuetype [System.Drawing]System.Drawing.Color) + .line 375,375 : 13,70 '' + IL_003a: ldloc.0 + IL_003b: ldc.i4.3 + IL_003c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 376,376 : 13,75 '' + IL_0041: ldloc.0 + IL_0042: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Desktop() + IL_0047: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + .line 377,377 : 13,71 '' + IL_004c: ldloc.0 + IL_004d: ldc.i4.s 101 + IL_004f: ldc.i4.3 + IL_0050: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0055: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 378,378 : 13,41 '' + IL_005a: ldloc.0 + IL_005b: ldc.i4 0xff + IL_0060: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPanel::set_Opacity(int32) + .line 379,379 : 13,82 '' + IL_0065: ldloc.0 + IL_0066: ldc.i4.6 + IL_0067: ldc.i4.3 + IL_0068: ldc.i4.6 + IL_0069: ldc.i4.0 + IL_006a: newobj instance void [System.Windows.Forms]System.Windows.Forms.Padding::.ctor(int32, + int32, + int32, + int32) + IL_006f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Padding(valuetype [System.Windows.Forms]System.Windows.Forms.Padding) + .line 380,380 : 13,43 '' + IL_0074: ldloc.0 + IL_0075: ldc.i4.1 + IL_0076: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 381,381 : 13,69 '' + IL_007b: ldloc.0 + IL_007c: ldc.i4.0 + IL_007d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Panel::set_AutoSizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoSizeMode) + .line 382,382 : 13,37 '' + IL_0082: ldloc.0 + IL_0083: ldc.i4.1 + IL_0084: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPanel::set_Speed(int32) + .line 383,383 : 13,44 '' + IL_0089: ldloc.0 + IL_008a: ldarg.2 + IL_008b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 384,384 : 13,51 '' + IL_0090: ldloc.0 + IL_0091: ldarg.1 + IL_0092: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.Category::get_Name() + IL_0097: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPanel::set_Caption(string) + .line 386,386 : 13,34 '' + IL_009c: ldloc.0 + IL_009d: ret + } // end of method ConfigurationDialog::CreateCategoryPanel + + .method private hidebysig instance class [TabStripControlLibrary]RibbonStyle.TabStripPage + CreateAndRegisterEntityPage(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories, + class Virtuoso.Miranda.Plugins.IConfigurablePlugin entity, + int32 index) cil managed + { + // Code size 286 (0x11e) + .maxstack 5 + .locals init ([0] class [TabStripControlLibrary]RibbonStyle.TabStripPage entityPage, + [1] class [TabStripControlLibrary]RibbonStyle.Tab entityTab) + .line 391,391 : 13,58 '' + IL_0000: newobj instance void [TabStripControlLibrary]RibbonStyle.TabStripPage::.ctor() + IL_0005: stloc.0 + .line 392,392 : 13,81 '' + IL_0006: ldloc.0 + IL_0007: ldc.i4 0xd7 + IL_000c: ldc.i4 0xe3 + IL_0011: ldc.i4 0xf2 + IL_0016: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_001b: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonPanel::set_BaseColor(valuetype [System.Drawing]System.Drawing.Color) + .line 393,393 : 13,83 '' + IL_0020: ldloc.0 + IL_0021: ldc.i4 0xd7 + IL_0026: ldc.i4 0xe3 + IL_002b: ldc.i4 0xf2 + IL_0030: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0035: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonPanel::set_BaseColorOn(valuetype [System.Drawing]System.Drawing.Color) + .line 394,394 : 13,67 '' + IL_003a: ldloc.0 + IL_003b: ldc.i4.5 + IL_003c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 395,395 : 13,38 '' + IL_0041: ldloc.0 + IL_0042: ldc.i4 0xff + IL_0047: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonPanel::set_Opacity(int32) + .line 396,396 : 13,79 '' + IL_004c: ldloc.0 + IL_004d: ldc.i4.0 + IL_004e: ldc.i4.3 + IL_004f: ldc.i4.0 + IL_0050: ldc.i4.0 + IL_0051: newobj instance void [System.Windows.Forms]System.Windows.Forms.Padding::.ctor(int32, + int32, + int32, + int32) + IL_0056: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Padding(valuetype [System.Windows.Forms]System.Windows.Forms.Padding) + .line 397,397 : 13,64 '' + IL_005b: ldloc.0 + IL_005c: ldc.i4 0x310 + IL_0061: ldc.i4.s 99 + IL_0063: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0068: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 398,398 : 13,34 '' + IL_006d: ldloc.0 + IL_006e: ldc.i4.1 + IL_006f: callvirt instance void [TabStripControlLibrary]RibbonStyle.RibbonPanel::set_Speed(int32) + .line 399,399 : 13,41 '' + IL_0074: ldloc.0 + IL_0075: ldarg.3 + IL_0076: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 401,401 : 13,57 '' + IL_007b: ldarg.0 + IL_007c: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0081: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0086: ldloc.0 + IL_0087: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 403,403 : 13,50 '' + IL_008c: ldarg.2 + IL_008d: callvirt instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + IL_0092: newobj instance void [TabStripControlLibrary]RibbonStyle.Tab::.ctor(string) + IL_0097: stloc.1 + .line 404,404 : 13,40 '' + IL_0098: ldloc.1 + IL_0099: ldc.i4.0 + IL_009a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_AutoSize(bool) + .line 405,405 : 13,38 '' + IL_009f: ldloc.1 + IL_00a0: ldc.i4.1 + IL_00a1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripButton::set_Checked(bool) + .line 406,406 : 13,55 '' + IL_00a6: ldloc.1 + IL_00a7: ldc.i4.1 + IL_00a8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripButton::set_CheckState(valuetype [System.Windows.Forms]System.Windows.Forms.CheckState) + .line 407,407 : 13,78 '' + IL_00ad: ldloc.1 + IL_00ae: ldc.i4.s 44 + IL_00b0: ldc.i4.s 90 + IL_00b2: ldc.i4 0x9a + IL_00b7: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_00bc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + .line 408,408 : 13,56 '' + IL_00c1: ldloc.1 + IL_00c2: ldc.i4.6 + IL_00c3: ldc.i4.1 + IL_00c4: ldc.i4.0 + IL_00c5: ldc.i4.2 + IL_00c6: newobj instance void [System.Windows.Forms]System.Windows.Forms.Padding::.ctor(int32, + int32, + int32, + int32) + IL_00cb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Margin(valuetype [System.Windows.Forms]System.Windows.Forms.Padding) + .line 409,409 : 13,47 '' + IL_00d0: ldloc.1 + IL_00d1: ldc.i4.s 73 + IL_00d3: ldc.i4.s 23 + IL_00d5: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00da: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 410,410 : 13,42 '' + IL_00df: ldloc.1 + IL_00e0: ldarg.2 + IL_00e1: callvirt instance string Virtuoso.Miranda.Plugins.IConfigurablePlugin::get_Name() + IL_00e6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Text(string) + .line 411,411 : 13,49 '' + IL_00eb: ldloc.1 + IL_00ec: ldloc.0 + IL_00ed: callvirt instance void [TabStripControlLibrary]RibbonStyle.Tab::set_TabStripPage(class [TabStripControlLibrary]RibbonStyle.TabStripPage) + .line 413,413 : 13,49 '' + IL_00f2: ldarg.2 + IL_00f3: isinst Virtuoso.Miranda.Plugins.IInternalConfigurator + IL_00f8: brfalse.s IL_010a + + .line 414,414 : 17,80 '' + IL_00fa: ldloc.1 + IL_00fb: call class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_16x16_Hyphen() + IL_0100: callvirt instance class [System.Drawing]System.Drawing.Bitmap [System.Drawing]System.Drawing.Icon::ToBitmap() + IL_0105: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Image(class [System.Drawing]System.Drawing.Image) + .line 416,416 : 13,46 '' + IL_010a: ldarg.0 + IL_010b: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0110: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_0115: ldloc.1 + IL_0116: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem) + IL_011b: pop + .line 418,418 : 13,31 '' + IL_011c: ldloc.0 + IL_011d: ret + } // end of method ConfigurationDialog::CreateAndRegisterEntityPage + + .method private hidebysig instance bool + CanDismissActiveControl() cil managed + { + // Code size 76 (0x4c) + .maxstack 2 + .line 427,427 : 13,100 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0006: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_000b: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.Layout.ArrangedElementCollection::get_Count() + IL_0010: ldc.i4.0 + IL_0011: ble.s IL_004a + + IL_0013: ldarg.0 + IL_0014: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0019: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_001e: ldc.i4.0 + IL_001f: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::get_Item(int32) + IL_0024: isinst Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + IL_0029: brfalse.s IL_004a + + .line 428,428 : 17,82 '' + IL_002b: ldarg.0 + IL_002c: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0031: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0036: ldc.i4.0 + IL_0037: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::get_Item(int32) + IL_003c: castclass Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + IL_0041: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnHide() + IL_0046: ldc.i4.0 + IL_0047: ceq + IL_0049: ret + + .line 430,430 : 17,29 '' + IL_004a: ldc.i4.1 + IL_004b: ret + } // end of method ConfigurationDialog::CanDismissActiveControl + + .method private hidebysig instance void + RibbonButton_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 121 (0x79) + .maxstack 2 + .locals init ([0] class [TabStripControlLibrary]RibbonStyle.RibbonButton btn, + [1] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + [2] bool firstTime, + [3] class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl control) + .line 435,435 : 13,53 '' + IL_0000: ldarg.1 + IL_0001: castclass [TabStripControlLibrary]RibbonStyle.RibbonButton + IL_0006: stloc.0 + .line 436,436 : 13,55 '' + IL_0007: ldloc.0 + IL_0008: callvirt instance object [System.Windows.Forms]System.Windows.Forms.Control::get_Tag() + IL_000d: castclass Virtuoso.Miranda.Plugins.Configuration.CategoryItem + IL_0012: stloc.1 + .line 438,438 : 13,55 '' + IL_0013: ldloc.1 + IL_0014: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_ControlInitialized() + IL_0019: ldc.i4.0 + IL_001a: ceq + IL_001c: stloc.2 + .line 439,439 : 13,56 '' + IL_001d: ldloc.1 + IL_001e: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Control() + IL_0023: stloc.3 + .line 441,441 : 13,34 '' + IL_0024: ldloc.3 + IL_0025: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnSelected() + .line 443,443 : 13,61 '' + IL_002a: ldloc.3 + IL_002b: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_HasUI() + IL_0030: brfalse.s IL_0078 + + IL_0032: ldloc.3 + IL_0033: ldloc.2 + IL_0034: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnShow(bool) + IL_0039: brtrue.s IL_0078 + + .line 445,445 : 17,48 '' + IL_003b: ldarg.0 + IL_003c: call instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanDismissActiveControl() + IL_0041: brtrue.s IL_0044 + + .line 446,446 : 21,28 '' + IL_0043: ret + + .line 448,448 : 17,73 '' + IL_0044: ldloc.3 + IL_0045: ldarg.0 + IL_0046: ldfld string Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurationParameter + IL_004b: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::set_ConfigurationParameter(string) + .line 449,449 : 17,47 '' + IL_0050: ldarg.0 + IL_0051: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0056: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_005b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Clear() + .line 451,451 : 17,47 '' + IL_0060: ldloc.3 + IL_0061: ldc.i4.5 + IL_0062: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 452,452 : 17,52 '' + IL_0067: ldarg.0 + IL_0068: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_006d: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0072: ldloc.3 + IL_0073: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 454,454 : 9,10 '' + IL_0078: ret + } // end of method ConfigurationDialog::RibbonButton_Click + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 16,16 : 13,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\ConfigurationDialog.Designer.cs' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_0016 + + IL_0003: ldarg.0 + IL_0004: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::components + IL_0009: brfalse.s IL_0016 + + .line 18,18 : 17,38 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::components + IL_0011: callvirt instance void [mscorlib]System.IDisposable::Dispose() + .line 20,20 : 13,37 '' + IL_0016: ldarg.0 + IL_0017: ldarg.1 + IL_0018: call instance void Virtuoso.Miranda.Plugins.Forms.PluginDialog::Dispose(bool) + .line 21,21 : 9,10 '' + IL_001d: ret + } // end of method ConfigurationDialog::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 1734 (0x6c6) + .maxstack 6 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources) + .line 31,31 : 13,152 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_000f: stloc.0 + .line 32,32 : 13,62 '' + IL_0010: ldarg.0 + IL_0011: newobj instance void [System.Windows.Forms]System.Windows.Forms.Panel::.ctor() + IL_0016: stfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + .line 33,33 : 13,73 '' + IL_001b: ldarg.0 + IL_001c: newobj instance void [TabStripControlLibrary]RibbonStyle.TabPageSwitcher::.ctor() + IL_0021: stfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + .line 34,34 : 13,59 '' + IL_0026: ldarg.0 + IL_0027: newobj instance void [TabStripControlLibrary]RibbonStyle.TabStrip::.ctor() + IL_002c: stfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + .line 35,35 : 13,65 '' + IL_0031: ldarg.0 + IL_0032: newobj instance void [System.Windows.Forms]System.Windows.Forms.Panel::.ctor() + IL_0037: stfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + .line 36,36 : 13,64 '' + IL_003c: ldarg.0 + IL_003d: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0042: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + .line 37,37 : 13,60 '' + IL_0047: ldarg.0 + IL_0048: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_004d: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + .line 38,38 : 13,66 '' + IL_0052: ldarg.0 + IL_0053: newobj instance void [System.Windows.Forms]System.Windows.Forms.Panel::.ctor() + IL_0058: stfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + .line 39,39 : 13,112 '' + IL_005d: ldarg.0 + IL_005e: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor() + IL_0063: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + .line 40,40 : 13,43 '' + IL_0068: ldarg.0 + IL_0069: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_006e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 41,41 : 13,46 '' + IL_0073: ldarg.0 + IL_0074: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_0079: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 42,42 : 13,47 '' + IL_007e: ldarg.0 + IL_007f: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0084: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 43,43 : 13,34 '' + IL_0089: ldarg.0 + IL_008a: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 47,47 : 13,65 '' + IL_008f: ldarg.0 + IL_0090: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_0095: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_009a: ldarg.0 + IL_009b: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_00a0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 48,48 : 13,58 '' + IL_00a5: ldarg.0 + IL_00a6: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_00ab: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_00b0: ldarg.0 + IL_00b1: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_00b6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 49,49 : 13,69 '' + IL_00bb: ldarg.0 + IL_00bc: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_00c1: ldc.i4.1 + IL_00c2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 50,50 : 13,69 '' + IL_00c7: ldarg.0 + IL_00c8: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_00cd: ldc.i4.0 + IL_00ce: ldc.i4.0 + IL_00cf: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_00d4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 51,51 : 13,45 '' + IL_00d9: ldarg.0 + IL_00da: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_00df: ldstr "TopPanel" + IL_00e4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 52,52 : 13,68 '' + IL_00e9: ldarg.0 + IL_00ea: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_00ef: ldc.i4 0x31a + IL_00f4: ldc.i4.s 127 + IL_00f6: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00fb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 53,53 : 13,40 '' + IL_0100: ldarg.0 + IL_0101: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_0106: ldc.i4.0 + IL_0107: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 57,57 : 13,151 '' + IL_010c: ldarg.0 + IL_010d: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0112: ldc.i4 0xbf + IL_0117: ldc.i4 0xdb + IL_011c: ldc.i4 0xff + IL_0121: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0126: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 58,58 : 13,80 '' + IL_012b: ldarg.0 + IL_012c: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0131: ldc.i4.5 + IL_0132: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 59,59 : 13,80 '' + IL_0137: ldarg.0 + IL_0138: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_013d: ldc.i4.0 + IL_013e: ldc.i4.s 26 + IL_0140: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0145: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 60,60 : 13,65 '' + IL_014a: ldarg.0 + IL_014b: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0150: ldstr "RibbonPageSwitcher" + IL_0155: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 61,61 : 13,65 '' + IL_015a: ldarg.0 + IL_015b: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0160: ldnull + IL_0161: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPageSwitcher::set_SelectedTabStripPage(class [TabStripControlLibrary]RibbonStyle.TabStripPage) + .line 62,62 : 13,78 '' + IL_0166: ldarg.0 + IL_0167: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_016c: ldc.i4 0x31a + IL_0171: ldc.i4.s 101 + IL_0173: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0178: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 63,63 : 13,50 '' + IL_017d: ldarg.0 + IL_017e: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_0183: ldc.i4.1 + IL_0184: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 64,64 : 13,65 '' + IL_0189: ldarg.0 + IL_018a: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_018f: ldarg.0 + IL_0190: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0195: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabPageSwitcher::set_TabStrip(class [TabStripControlLibrary]RibbonStyle.TabStrip) + .line 65,65 : 13,65 '' + IL_019a: ldarg.0 + IL_019b: ldfld class [TabStripControlLibrary]RibbonStyle.TabPageSwitcher Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonPageSwitcher + IL_01a0: ldstr "RibbonPageSwitcher" + IL_01a5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 69,69 : 13,47 '' + IL_01aa: ldarg.0 + IL_01ab: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_01b0: ldc.i4.0 + IL_01b1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 70,70 : 13,144 '' + IL_01b6: ldarg.0 + IL_01b7: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_01bc: ldc.i4 0xbf + IL_01c1: ldc.i4 0xdb + IL_01c6: ldc.i4 0xff + IL_01cb: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_01d0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStrip::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 71,71 : 13,89 '' + IL_01d5: ldarg.0 + IL_01d6: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_01db: ldc.i4.0 + IL_01dc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStrip::set_GripStyle(valuetype [System.Windows.Forms]System.Windows.Forms.ToolStripGripStyle) + .line 72,72 : 13,72 '' + IL_01e1: ldarg.0 + IL_01e2: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_01e7: ldc.i4.0 + IL_01e8: ldc.i4.0 + IL_01e9: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_01ee: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 73,73 : 13,51 '' + IL_01f3: ldarg.0 + IL_01f4: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_01f9: ldstr "RibbonStrip" + IL_01fe: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 74,74 : 13,87 '' + IL_0203: ldarg.0 + IL_0204: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0209: ldc.i4.s 60 + IL_020b: ldc.i4.3 + IL_020c: ldc.i4.s 30 + IL_020e: ldc.i4.0 + IL_020f: newobj instance void [System.Windows.Forms]System.Windows.Forms.Padding::.ctor(int32, + int32, + int32, + int32) + IL_0214: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Padding(valuetype [System.Windows.Forms]System.Windows.Forms.Padding) + .line 75,75 : 13,49 '' + IL_0219: ldarg.0 + IL_021a: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_021f: ldnull + IL_0220: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabStrip::set_SelectedTab(class [TabStripControlLibrary]RibbonStyle.Tab) + .line 76,76 : 13,55 '' + IL_0225: ldarg.0 + IL_0226: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_022b: ldc.i4.0 + IL_022c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStrip::set_ShowItemToolTips(bool) + .line 77,77 : 13,70 '' + IL_0231: ldarg.0 + IL_0232: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0237: ldc.i4 0x31a + IL_023c: ldc.i4.s 26 + IL_023e: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0243: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 78,78 : 13,43 '' + IL_0248: ldarg.0 + IL_0249: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_024e: ldc.i4.0 + IL_024f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 79,79 : 13,45 '' + IL_0254: ldarg.0 + IL_0255: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_025a: ldc.i4.0 + IL_025b: callvirt instance void [TabStripControlLibrary]RibbonStyle.TabStrip::set_TabOverlap(int32) + .line 80,80 : 13,49 '' + IL_0260: ldarg.0 + IL_0261: ldfld class [TabStripControlLibrary]RibbonStyle.TabStrip Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonStrip + IL_0266: ldstr "tabStrip1" + IL_026b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 84,84 : 13,144 '' + IL_0270: ldarg.0 + IL_0271: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_0276: ldc.i4 0xbf + IL_027b: ldc.i4 0xdb + IL_0280: ldc.i4 0xff + IL_0285: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_028a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 85,85 : 13,59 '' + IL_028f: ldarg.0 + IL_0290: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_0295: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_029a: ldarg.0 + IL_029b: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_02a0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 86,86 : 13,55 '' + IL_02a5: ldarg.0 + IL_02a6: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_02ab: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_02b0: ldarg.0 + IL_02b1: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_02b6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 87,87 : 13,75 '' + IL_02bb: ldarg.0 + IL_02bc: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_02c1: ldc.i4.2 + IL_02c2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 88,88 : 13,74 '' + IL_02c7: ldarg.0 + IL_02c8: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_02cd: ldc.i4.0 + IL_02ce: ldc.i4 0x211 + IL_02d3: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_02d8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 89,89 : 13,51 '' + IL_02dd: ldarg.0 + IL_02de: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_02e3: ldstr "BottomPanel" + IL_02e8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 90,90 : 13,70 '' + IL_02ed: ldarg.0 + IL_02ee: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_02f3: ldc.i4 0x31a + IL_02f8: ldc.i4.s 39 + IL_02fa: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_02ff: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 91,91 : 13,43 '' + IL_0304: ldarg.0 + IL_0305: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_030a: ldc.i4.1 + IL_030b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 95,95 : 13,84 '' + IL_0310: ldarg.0 + IL_0311: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0316: ldc.i4.2 + IL_0317: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Button::set_DialogResult(valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult) + .line 96,96 : 13,71 '' + IL_031c: ldarg.0 + IL_031d: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0322: ldc.i4.s 93 + IL_0324: ldc.i4.7 + IL_0325: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_032a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 97,97 : 13,47 '' + IL_032f: ldarg.0 + IL_0330: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0335: ldstr "CancelBTN" + IL_033a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 98,98 : 13,67 '' + IL_033f: ldarg.0 + IL_0340: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0345: ldc.i4.s 75 + IL_0347: ldc.i4.s 23 + IL_0349: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_034e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 99,99 : 13,41 '' + IL_0353: ldarg.0 + IL_0354: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0359: ldc.i4.0 + IL_035a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 100,100 : 13,44 '' + IL_035f: ldarg.0 + IL_0360: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0365: ldstr "Cancel" + IL_036a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 101,101 : 13,59 '' + IL_036f: ldarg.0 + IL_0370: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0375: ldc.i4.1 + IL_0376: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + .line 102,102 : 13,83 '' + IL_037b: ldarg.0 + IL_037c: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_0381: ldarg.0 + IL_0382: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN_Click(object, + class [mscorlib]System.EventArgs) + IL_0388: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_038d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::add_Click(class [mscorlib]System.EventHandler) + .line 106,106 : 13,76 '' + IL_0392: ldarg.0 + IL_0393: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_0398: ldc.i4.1 + IL_0399: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Button::set_DialogResult(valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult) + .line 107,107 : 13,67 '' + IL_039e: ldarg.0 + IL_039f: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_03a4: ldc.i4.s 12 + IL_03a6: ldc.i4.7 + IL_03a7: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_03ac: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 108,108 : 13,39 '' + IL_03b1: ldarg.0 + IL_03b2: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_03b7: ldstr "OkBTN" + IL_03bc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 109,109 : 13,63 '' + IL_03c1: ldarg.0 + IL_03c2: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_03c7: ldc.i4.s 75 + IL_03c9: ldc.i4.s 23 + IL_03cb: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_03d0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 110,110 : 13,37 '' + IL_03d5: ldarg.0 + IL_03d6: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_03db: ldc.i4.0 + IL_03dc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 111,111 : 13,36 '' + IL_03e1: ldarg.0 + IL_03e2: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_03e7: ldstr "OK" + IL_03ec: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 112,112 : 13,55 '' + IL_03f1: ldarg.0 + IL_03f2: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_03f7: ldc.i4.1 + IL_03f8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + .line 113,113 : 13,75 '' + IL_03fd: ldarg.0 + IL_03fe: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_0403: ldarg.0 + IL_0404: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN_Click(object, + class [mscorlib]System.EventArgs) + IL_040a: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_040f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::add_Click(class [mscorlib]System.EventHandler) + .line 117,117 : 13,49 '' + IL_0414: ldarg.0 + IL_0415: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_041a: ldc.i4.1 + IL_041b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ScrollableControl::set_AutoScroll(bool) + .line 118,118 : 13,63 '' + IL_0420: ldarg.0 + IL_0421: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0426: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_042b: ldarg.0 + IL_042c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0431: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 119,119 : 13,74 '' + IL_0436: ldarg.0 + IL_0437: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_043c: ldc.i4.5 + IL_043d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 120,120 : 13,75 '' + IL_0442: ldarg.0 + IL_0443: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0448: ldc.i4.0 + IL_0449: ldc.i4.s 127 + IL_044b: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0450: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 121,121 : 13,53 '' + IL_0455: ldarg.0 + IL_0456: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_045b: ldstr "ControlPanel" + IL_0460: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 122,122 : 13,72 '' + IL_0465: ldarg.0 + IL_0466: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_046b: ldc.i4 0x31a + IL_0470: ldc.i4 0x192 + IL_0475: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_047a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 123,123 : 13,44 '' + IL_047f: ldarg.0 + IL_0480: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_0485: ldc.i4.2 + IL_0486: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 127,127 : 13,76 '' + IL_048b: ldarg.0 + IL_048c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0491: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0496: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 128,128 : 13,141 '' + IL_049b: ldarg.0 + IL_049c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_04a1: ldc.i4 0xbf + IL_04a6: ldc.i4 0xdb + IL_04ab: ldc.i4 0xff + IL_04b0: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_04b5: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + .line 129,129 : 13,73 '' + IL_04ba: ldarg.0 + IL_04bb: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_04c0: ldc.i4.1 + IL_04c1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 130,130 : 13,163 '' + IL_04c6: ldarg.0 + IL_04c7: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_04cc: ldstr "Tahoma" + IL_04d1: ldc.r4 8.25 + IL_04d6: ldc.i4.0 + IL_04d7: ldc.i4.3 + IL_04d8: ldc.i4 0xee + IL_04dd: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_04e2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 131,131 : 13,166 '' + IL_04e7: ldarg.0 + IL_04e8: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_04ed: ldstr "Tahoma" + IL_04f2: ldc.r4 9.75 + IL_04f7: ldc.i4.1 + IL_04f8: ldc.i4.3 + IL_04f9: ldc.i4 0xee + IL_04fe: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0503: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + .line 132,132 : 13,95 '' + IL_0508: ldarg.0 + IL_0509: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_050e: ldstr " Select a tab and pick a section to configure..." + IL_0513: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + .line 133,133 : 13,107 '' + IL_0518: ldarg.0 + IL_0519: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_051e: ldloc.0 + IL_051f: ldstr "WelcomePanel.Image" + IL_0524: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0529: castclass [System.Drawing]System.Drawing.Image + IL_052e: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + .line 134,134 : 13,73 '' + IL_0533: ldarg.0 + IL_0534: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0539: ldc.i4.0 + IL_053a: ldc.i4.0 + IL_053b: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0540: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 135,135 : 13,78 '' + IL_0545: ldarg.0 + IL_0546: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_054b: ldc.i4 0x12c + IL_0550: ldc.i4.s 40 + IL_0552: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0557: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 136,136 : 13,53 '' + IL_055c: ldarg.0 + IL_055d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0562: ldstr "WelcomePanel" + IL_0567: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 137,137 : 13,72 '' + IL_056c: ldarg.0 + IL_056d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0572: ldc.i4 0x31a + IL_0577: ldc.i4.s 100 + IL_0579: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_057e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 138,138 : 13,44 '' + IL_0583: ldarg.0 + IL_0584: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::WelcomePanel + IL_0589: ldc.i4.1 + IL_058a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 142,142 : 13,44 '' + IL_058f: ldarg.0 + IL_0590: ldarg.0 + IL_0591: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN + IL_0596: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_AcceptButton(class [System.Windows.Forms]System.Windows.Forms.IButtonControl) + .line 143,143 : 13,74 '' + IL_059b: ldarg.0 + IL_059c: ldc.r4 6. + IL_05a1: ldc.r4 13. + IL_05a6: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_05ab: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + .line 144,144 : 13,74 '' + IL_05b0: ldarg.0 + IL_05b1: ldc.i4.1 + IL_05b2: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + .line 145,145 : 13,65 '' + IL_05b7: ldarg.0 + IL_05b8: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Window() + IL_05bd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 146,146 : 13,48 '' + IL_05c2: ldarg.0 + IL_05c3: ldarg.0 + IL_05c4: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN + IL_05c9: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_CancelButton(class [System.Windows.Forms]System.Windows.Forms.IButtonControl) + .line 147,147 : 13,65 '' + IL_05ce: ldarg.0 + IL_05cf: ldc.i4 0x31a + IL_05d4: ldc.i4 0x238 + IL_05d9: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_05de: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_ClientSize(valuetype [System.Drawing]System.Drawing.Size) + .line 148,148 : 13,50 '' + IL_05e3: ldarg.0 + IL_05e4: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_05e9: ldarg.0 + IL_05ea: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_05ef: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 149,149 : 13,46 '' + IL_05f4: ldarg.0 + IL_05f5: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_05fa: ldarg.0 + IL_05fb: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_0600: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 150,150 : 13,49 '' + IL_0605: ldarg.0 + IL_0606: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_060b: ldarg.0 + IL_060c: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_0611: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 151,151 : 13,150 '' + IL_0616: ldarg.0 + IL_0617: ldstr "Tahoma" + IL_061c: ldc.r4 8.25 + IL_0621: ldc.i4.0 + IL_0622: ldc.i4.3 + IL_0623: ldc.i4 0xee + IL_0628: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_062d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 152,152 : 13,85 '' + IL_0632: ldarg.0 + IL_0633: ldc.i4.3 + IL_0634: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_FormBorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FormBorderStyle) + .line 153,153 : 13,84 '' + IL_0639: ldarg.0 + IL_063a: ldloc.0 + IL_063b: ldstr "$this.Icon" + IL_0640: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0645: castclass [System.Drawing]System.Drawing.Icon + IL_064a: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_Icon(class [System.Drawing]System.Drawing.Icon) + .line 154,154 : 13,38 '' + IL_064f: ldarg.0 + IL_0650: ldc.i4.0 + IL_0651: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MaximizeBox(bool) + .line 155,155 : 13,66 '' + IL_0656: ldarg.0 + IL_0657: ldc.i4 0x320 + IL_065c: ldc.i4 0x258 + IL_0661: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0666: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 156,156 : 13,47 '' + IL_066b: ldarg.0 + IL_066c: ldstr "ConfigurationDialog" + IL_0671: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 157,157 : 13,86 '' + IL_0676: ldarg.0 + IL_0677: ldc.i4.1 + IL_0678: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_StartPosition(valuetype [System.Windows.Forms]System.Windows.Forms.FormStartPosition) + .line 158,158 : 13,55 '' + IL_067d: ldarg.0 + IL_067e: ldstr "Hyphen Configuration Center" + IL_0683: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 159,159 : 13,120 '' + IL_0688: ldarg.0 + IL_0689: ldarg.0 + IL_068a: ldftn instance void Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurationDialog_FormClosing(object, + class [System.Windows.Forms]System.Windows.Forms.FormClosingEventArgs) + IL_0690: newobj instance void [System.Windows.Forms]System.Windows.Forms.FormClosingEventHandler::.ctor(object, + native int) + IL_0695: call instance void [System.Windows.Forms]System.Windows.Forms.Form::add_FormClosing(class [System.Windows.Forms]System.Windows.Forms.FormClosingEventHandler) + .line 160,160 : 13,47 '' + IL_069a: ldarg.0 + IL_069b: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::TopPanel + IL_06a0: ldc.i4.0 + IL_06a1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 161,161 : 13,50 '' + IL_06a6: ldarg.0 + IL_06a7: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::BottomPanel + IL_06ac: ldc.i4.0 + IL_06ad: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 162,162 : 13,51 '' + IL_06b2: ldarg.0 + IL_06b3: ldfld class [System.Windows.Forms]System.Windows.Forms.Panel Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ControlPanel + IL_06b8: ldc.i4.0 + IL_06b9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 163,163 : 13,38 '' + IL_06be: ldarg.0 + IL_06bf: ldc.i4.0 + IL_06c0: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 165,165 : 9,10 '' + IL_06c5: ret + } // end of method ConfigurationDialog::InitializeComponent + +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog + +.class public auto ansi serializable sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.CategoryItem + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested public Command + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method Command::.ctor + + .method public hidebysig newslot virtual + instance void Invoke(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item) runtime managed + { + } // end of method Command::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method Command::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method Command::EndInvoke + + } // end of class Command + + .field private string name + .field private string description + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl control + .field private class [mscorlib]System.Type controlType + .field private class [System.Drawing]System.Drawing.Image image + .field private bool isExpertOption + .method public hidebysig specialname rtspecialname + instance void .ctor(string name, + string description, + class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command command) cil managed + { + // Code size 36 (0x24) + .maxstack 8 + .line 50,51 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\CategoryItem.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor(string, + string) + .line 53,53 : 13,33 '' + IL_0008: ldarg.3 + IL_0009: brtrue.s IL_0016 + + .line 54,54 : 17,60 '' + IL_000b: ldstr "command" + IL_0010: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0015: throw + + .line 56,56 : 13,69 '' + IL_0016: ldarg.0 + IL_0017: ldarg.0 + IL_0018: ldarg.3 + IL_0019: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::.ctor(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem, + class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command) + IL_001e: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + .line 57,57 : 9,10 '' + IL_0023: ret + } // end of method CategoryItem::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string name, + string description, + class [mscorlib]System.Type itemOptionsType) cil managed + { + // Code size 64 (0x40) + .maxstack 3 + .line 59,60 : 9,38 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor(string, + string) + .line 62,62 : 13,41 '' + IL_0008: ldarg.3 + IL_0009: brtrue.s IL_0016 + + .line 63,63 : 17,68 '' + IL_000b: ldstr "itemOptionsType" + IL_0010: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0015: throw + + .line 65,65 : 13,76 '' + IL_0016: ldarg.3 + IL_0017: ldtoken Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + IL_001c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0021: callvirt instance bool [mscorlib]System.Type::IsSubclassOf(class [mscorlib]System.Type) + IL_0026: brtrue.s IL_0038 + + .line 66,66 : 17,127 '' + IL_0028: ldstr "Type must derive from the CategoryItemOptionsContr" + + "ol class." + IL_002d: ldstr "itemOptionsType" + IL_0032: newobj instance void [mscorlib]System.ArgumentException::.ctor(string, + string) + IL_0037: throw + + .line 68,68 : 13,48 '' + IL_0038: ldarg.0 + IL_0039: ldarg.3 + IL_003a: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Configuration.CategoryItem::controlType + .line 69,69 : 9,10 '' + IL_003f: ret + } // end of method CategoryItem::.ctor + + .method private hidebysig specialname rtspecialname + instance void .ctor(string name, + string description) cil managed + { + // Code size 59 (0x3b) + .maxstack 8 + .line 71,71 : 9,62 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 73,73 : 13,44 '' + IL_0006: ldarg.1 + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: brfalse.s IL_0019 + + .line 74,74 : 17,57 '' + IL_000e: ldstr "name" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 76,76 : 13,51 '' + IL_0019: ldarg.2 + IL_001a: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_001f: brfalse.s IL_002c + + .line 77,77 : 17,64 '' + IL_0021: ldstr "description" + IL_0026: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002b: throw + + .line 79,79 : 13,30 '' + IL_002c: ldarg.0 + IL_002d: ldarg.1 + IL_002e: stfld string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::name + .line 80,80 : 13,44 '' + IL_0033: ldarg.0 + IL_0034: ldarg.2 + IL_0035: stfld string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::description + .line 81,81 : 9,10 '' + IL_003a: ret + } // end of method CategoryItem::.ctor + + .method public hidebysig specialname instance string + get_Name() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 89,89 : 19,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::name + IL_0006: ret + } // end of method CategoryItem::get_Name + + .method public hidebysig specialname instance string + get_Description() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 94,94 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::description + IL_0006: ret + } // end of method CategoryItem::get_Description + + .method public hidebysig specialname instance class [System.Drawing]System.Drawing.Image + get_Image() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 99,99 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.CategoryItem::image + IL_0006: ret + } // end of method CategoryItem::get_Image + + .method public hidebysig specialname instance void + set_Image(class [System.Drawing]System.Drawing.Image 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 100,100 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.CategoryItem::image + .line 100,100 : 34,35 '' + IL_0007: ret + } // end of method CategoryItem::set_Image + + .method assembly hidebysig specialname + instance class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + get_Control() cil managed + { + // Code size 50 (0x32) + .maxstack 8 + .line 107,107 : 17,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + IL_0006: brtrue.s IL_002b + + .line 109,109 : 21,96 '' + IL_0008: ldarg.0 + IL_0009: ldarg.0 + IL_000a: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Configuration.CategoryItem::controlType + IL_000f: ldc.i4.1 + IL_0010: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type, + bool) + IL_0015: castclass Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + IL_001a: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + .line 110,110 : 21,46 '' + IL_001f: ldarg.0 + IL_0020: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + IL_0025: ldarg.0 + IL_0026: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::Initialize(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem) + .line 113,113 : 17,32 '' + IL_002b: ldarg.0 + IL_002c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + IL_0031: ret + } // end of method CategoryItem::get_Control + + .method assembly hidebysig specialname + instance bool get_ControlInitialized() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 121,121 : 17,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::control + IL_0006: ldnull + IL_0007: ceq + IL_0009: ldc.i4.0 + IL_000a: ceq + IL_000c: ret + } // end of method CategoryItem::get_ControlInitialized + + .method public hidebysig specialname instance bool + get_IsExpertOption() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 127,127 : 19,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::isExpertOption + IL_0006: ret + } // end of method CategoryItem::get_IsExpertOption + + .method public hidebysig specialname instance void + set_IsExpertOption(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 128,128 : 19,42 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::isExpertOption + .line 128,128 : 43,44 '' + IL_0007: ret + } // end of method CategoryItem::set_IsExpertOption + + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Name() + } // end of property CategoryItem::Name + .property instance string Description() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Description() + } // end of property CategoryItem::Description + .property instance class [System.Drawing]System.Drawing.Image + Image() + { + .get instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Image() + .set instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_Image(class [System.Drawing]System.Drawing.Image) + } // end of property CategoryItem::Image + .property instance class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + Control() + { + .get instance class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Control() + } // end of property CategoryItem::Control + .property instance bool ControlInitialized() + { + .get instance bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_ControlInitialized() + } // end of property CategoryItem::ControlInitialized + .property instance bool IsExpertOption() + { + .get instance bool Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_IsExpertOption() + .set instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_IsExpertOption(bool) + } // end of property CategoryItem::IsExpertOption +} // end of class Virtuoso.Miranda.Plugins.Configuration.CategoryItem + +.class public auto ansi serializable sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 29,29 : 9,52 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\CategoryItemCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + .line 29,29 : 55,56 '' + IL_0007: ret + } // end of method CategoryItemCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader + extends [System.Windows.Forms]System.Windows.Forms.UserControl +{ + .field private class [System]System.ComponentModel.IContainer components + .field private class [System.Windows.Forms]System.Windows.Forms.PictureBox ImagePBOX + .field private class [System.Windows.Forms]System.Windows.Forms.Label DescriptionLABEL + .field private class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel panel1 + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 31,31 : 9,36 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemHeader.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.UserControl::.ctor() + .line 33,33 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::InitializeComponent() + .line 34,34 : 9,10 '' + IL_000c: ret + } // end of method CategoryItemHeader::.ctor + + .method public hidebysig specialname instance class [System.Drawing]System.Drawing.Image + get_Image() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 39,39 : 19,42 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0006: callvirt instance class [System.Drawing]System.Drawing.Image [System.Windows.Forms]System.Windows.Forms.PictureBox::get_Image() + IL_000b: ret + } // end of method CategoryItemHeader::get_Image + + .method public hidebysig specialname instance void + set_Image(class [System.Drawing]System.Drawing.Image 'value') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 40,40 : 19,43 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0006: ldarg.1 + IL_0007: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + .line 40,40 : 44,45 '' + IL_000c: ret + } // end of method CategoryItemHeader::set_Image + + .method public hidebysig specialname instance string + get_HeaderText() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 47,47 : 19,48 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0006: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_000b: ret + } // end of method CategoryItemHeader::get_HeaderText + + .method public hidebysig specialname instance void + set_HeaderText(string 'value') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 48,48 : 19,49 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0006: ldarg.1 + IL_0007: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 48,48 : 50,51 '' + IL_000c: ret + } // end of method CategoryItemHeader::set_HeaderText + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Color + get_Color() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 54,54 : 19,47 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0006: callvirt instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_GradientColor() + IL_000b: ret + } // end of method CategoryItemHeader::get_Color + + .method public hidebysig specialname instance void + set_Color(valuetype [System.Drawing]System.Drawing.Color 'value') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 55,55 : 19,48 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0006: ldarg.1 + IL_0007: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor(valuetype [System.Drawing]System.Drawing.Color) + .line 55,55 : 49,50 '' + IL_000c: ret + } // end of method CategoryItemHeader::set_Color + + .method public hidebysig specialname virtual + instance valuetype [System.Drawing]System.Drawing.Color + get_ForeColor() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 62,62 : 17,51 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0006: callvirt instance valuetype [System.Drawing]System.Drawing.Color [System.Windows.Forms]System.Windows.Forms.Control::get_ForeColor() + IL_000b: ret + } // end of method CategoryItemHeader::get_ForeColor + + .method public hidebysig specialname virtual + instance void set_ForeColor(valuetype [System.Drawing]System.Drawing.Color 'value') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 66,66 : 17,52 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0006: ldarg.1 + IL_0007: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + .line 67,67 : 13,14 '' + IL_000c: ret + } // end of method CategoryItemHeader::set_ForeColor + + .method public hidebysig specialname instance class [System.Drawing]System.Drawing.Font + get_HeaderFont() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 73,73 : 19,48 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0006: callvirt instance class [System.Drawing]System.Drawing.Font [System.Windows.Forms]System.Windows.Forms.Control::get_Font() + IL_000b: ret + } // end of method CategoryItemHeader::get_HeaderFont + + .method public hidebysig specialname instance void + set_HeaderFont(class [System.Drawing]System.Drawing.Font 'value') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 74,74 : 19,49 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0006: ldarg.1 + IL_0007: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 74,74 : 50,51 '' + IL_000c: ret + } // end of method CategoryItemHeader::set_HeaderFont + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 17,17 : 13,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemHeader.Designer.cs' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_0016 + + IL_0003: ldarg.0 + IL_0004: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::components + IL_0009: brfalse.s IL_0016 + + .line 19,19 : 17,38 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::components + IL_0011: callvirt instance void [mscorlib]System.IDisposable::Dispose() + .line 21,21 : 13,37 '' + IL_0016: ldarg.0 + IL_0017: ldarg.1 + IL_0018: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::Dispose(bool) + .line 22,22 : 9,10 '' + IL_001d: ret + } // end of method CategoryItemHeader::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 637 (0x27d) + .maxstack 6 + .line 32,32 : 13,68 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::.ctor() + IL_0006: stfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + .line 33,33 : 13,70 '' + IL_000b: ldarg.0 + IL_000c: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0011: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + .line 34,34 : 13,87 '' + IL_0016: ldarg.0 + IL_0017: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::.ctor() + IL_001c: stfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + .line 35,35 : 13,86 '' + IL_0021: ldarg.0 + IL_0022: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0027: callvirt instance void [System]System.ComponentModel.ISupportInitialize::BeginInit() + .line 36,36 : 13,41 '' + IL_002c: ldarg.0 + IL_002d: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0032: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 37,37 : 13,34 '' + IL_0037: ldarg.0 + IL_0038: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 41,41 : 13,105 '' + IL_003d: ldarg.0 + IL_003e: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0043: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_256_32x32() + IL_0048: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + .line 42,42 : 13,71 '' + IL_004d: ldarg.0 + IL_004e: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0053: ldc.i4.s 10 + IL_0055: ldc.i4.4 + IL_0056: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_005b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 43,43 : 13,47 '' + IL_0060: ldarg.0 + IL_0061: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0066: ldstr "ImagePBOX" + IL_006b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 44,44 : 13,67 '' + IL_0070: ldarg.0 + IL_0071: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0076: ldc.i4.s 32 + IL_0078: ldc.i4.s 32 + IL_007a: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_007f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 45,45 : 13,88 '' + IL_0084: ldarg.0 + IL_0085: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_008a: ldc.i4.2 + IL_008b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_SizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.PictureBoxSizeMode) + .line 46,46 : 13,41 '' + IL_0090: ldarg.0 + IL_0091: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0096: ldc.i4.0 + IL_0097: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabIndex(int32) + .line 47,47 : 13,44 '' + IL_009c: ldarg.0 + IL_009d: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_00a2: ldc.i4.0 + IL_00a3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabStop(bool) + .line 51,51 : 13,51 '' + IL_00a8: ldarg.0 + IL_00a9: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_00ae: ldc.i4.1 + IL_00af: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 52,52 : 13,160 '' + IL_00b4: ldarg.0 + IL_00b5: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_00ba: ldstr "Tahoma" + IL_00bf: ldc.r4 8. + IL_00c4: ldc.i4.1 + IL_00c5: ldc.i4.3 + IL_00c6: ldc.i4 0xee + IL_00cb: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_00d0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 53,53 : 13,74 '' + IL_00d5: ldarg.0 + IL_00d6: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_00db: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Black() + IL_00e0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + .line 54,54 : 13,79 '' + IL_00e5: ldarg.0 + IL_00e6: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_00eb: ldc.i4.s 50 + IL_00ed: ldc.i4.s 12 + IL_00ef: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_00f4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 55,55 : 13,61 '' + IL_00f9: ldarg.0 + IL_00fa: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_00ff: ldstr "DescriptionLABEL" + IL_0104: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 56,56 : 13,73 '' + IL_0109: ldarg.0 + IL_010a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_010f: ldc.i4.0 + IL_0110: ldc.i4.s 16 + IL_0112: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0117: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 57,57 : 13,48 '' + IL_011c: ldarg.0 + IL_011d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_0122: ldc.i4.2 + IL_0123: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 61,61 : 13,54 '' + IL_0128: ldarg.0 + IL_0129: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_012e: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0133: ldarg.0 + IL_0134: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0139: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 62,62 : 13,61 '' + IL_013e: ldarg.0 + IL_013f: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0144: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0149: ldarg.0 + IL_014a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::DescriptionLABEL + IL_014f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 63,63 : 13,68 '' + IL_0154: ldarg.0 + IL_0155: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_015a: ldc.i4.5 + IL_015b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 64,64 : 13,141 '' + IL_0160: ldarg.0 + IL_0161: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0166: ldc.i4 0xff + IL_016b: ldc.i4 0x80 + IL_0170: ldc.i4.0 + IL_0171: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0176: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor(valuetype [System.Drawing]System.Drawing.Color) + .line 65,65 : 13,67 '' + IL_017b: ldarg.0 + IL_017c: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0181: ldc.i4.0 + IL_0182: ldc.i4.0 + IL_0183: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0188: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 66,66 : 13,41 '' + IL_018d: ldarg.0 + IL_018e: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0193: ldstr "panel1" + IL_0198: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 67,67 : 13,41 '' + IL_019d: ldarg.0 + IL_019e: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_01a3: ldc.r4 -90. + IL_01a8: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_Rotation(float32) + .line 68,68 : 13,65 '' + IL_01ad: ldarg.0 + IL_01ae: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_01b3: ldc.i4 0x2fd + IL_01b8: ldc.i4.s 40 + IL_01ba: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_01bf: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 69,69 : 13,38 '' + IL_01c4: ldarg.0 + IL_01c5: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_01ca: ldc.i4.3 + IL_01cb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 73,73 : 13,74 '' + IL_01d0: ldarg.0 + IL_01d1: ldc.r4 6. + IL_01d6: ldc.r4 13. + IL_01db: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_01e0: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + .line 74,74 : 13,74 '' + IL_01e5: ldarg.0 + IL_01e6: ldc.i4.1 + IL_01e7: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + .line 75,75 : 13,63 '' + IL_01ec: ldarg.0 + IL_01ed: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_01f2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 76,76 : 13,44 '' + IL_01f7: ldarg.0 + IL_01f8: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_01fd: ldarg.0 + IL_01fe: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0203: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 77,77 : 13,150 '' + IL_0208: ldarg.0 + IL_0209: ldstr "Tahoma" + IL_020e: ldc.r4 8.25 + IL_0213: ldc.i4.0 + IL_0214: ldc.i4.3 + IL_0215: ldc.i4 0xee + IL_021a: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_021f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 78,78 : 13,65 '' + IL_0224: ldarg.0 + IL_0225: ldc.i4 0x12c + IL_022a: ldc.i4.s 40 + IL_022c: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0231: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 79,79 : 13,46 '' + IL_0236: ldarg.0 + IL_0237: ldstr "CategoryItemHeader" + IL_023c: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 80,80 : 13,58 '' + IL_0241: ldarg.0 + IL_0242: ldc.i4 0x2fd + IL_0247: ldc.i4.s 40 + IL_0249: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_024e: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 81,81 : 13,84 '' + IL_0253: ldarg.0 + IL_0254: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::ImagePBOX + IL_0259: callvirt instance void [System]System.ComponentModel.ISupportInitialize::EndInit() + .line 82,82 : 13,45 '' + IL_025e: ldarg.0 + IL_025f: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0264: ldc.i4.0 + IL_0265: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 83,83 : 13,41 '' + IL_026a: ldarg.0 + IL_026b: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::panel1 + IL_0270: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + .line 84,84 : 13,38 '' + IL_0275: ldarg.0 + IL_0276: ldc.i4.0 + IL_0277: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 86,86 : 9,10 '' + IL_027c: ret + } // end of method CategoryItemHeader::InitializeComponent + + .property instance class [System.Drawing]System.Drawing.Image + Image() + { + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + .get instance class [System.Drawing]System.Drawing.Image Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_Image() + } // end of property CategoryItemHeader::Image + .property instance string HeaderText() + { + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.LocalizableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.DefaultValueAttribute::.ctor(string) = ( 01 00 06 48 65 61 64 65 72 00 00 ) // ...Header.. + .custom instance void [System]System.ComponentModel.EditorAttribute::.ctor(string, + class [mscorlib]System.Type) = ( 01 00 80 84 53 79 73 74 65 6D 2E 43 6F 6D 70 6F // ....System.Compo + 6E 65 6E 74 4D 6F 64 65 6C 2E 44 65 73 69 67 6E // nentModel.Design + 2E 4D 75 6C 74 69 6C 69 6E 65 53 74 72 69 6E 67 // .MultilineString + 45 64 69 74 6F 72 2C 20 53 79 73 74 65 6D 2E 44 // Editor, System.D + 65 73 69 67 6E 2C 20 56 65 72 73 69 6F 6E 3D 32 // esign, Version=2 + 2E 30 2E 30 2E 30 2C 20 43 75 6C 74 75 72 65 3D // .0.0.0, Culture= + 6E 65 75 74 72 61 6C 2C 20 50 75 62 6C 69 63 4B // neutral, PublicK + 65 79 54 6F 6B 65 6E 3D 62 30 33 66 35 66 37 66 // eyToken=b03f5f7f + 31 31 64 35 30 61 33 61 75 53 79 73 74 65 6D 2E // 11d50a3auSystem. + 44 72 61 77 69 6E 67 2E 44 65 73 69 67 6E 2E 55 // Drawing.Design.U + 49 54 79 70 65 45 64 69 74 6F 72 2C 20 53 79 73 // ITypeEditor, Sys + 74 65 6D 2E 44 72 61 77 69 6E 67 2C 20 56 65 72 // tem.Drawing, Ver + 73 69 6F 6E 3D 32 2E 30 2E 30 2E 30 2C 20 43 75 // sion=2.0.0.0, Cu + 6C 74 75 72 65 3D 6E 65 75 74 72 61 6C 2C 20 50 // lture=neutral, P + 75 62 6C 69 63 4B 65 79 54 6F 6B 65 6E 3D 62 30 // ublicKeyToken=b0 + 33 66 35 66 37 66 31 31 64 35 30 61 33 61 00 00 ) // 3f5f7f11d50a3a.. + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + .get instance string Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_HeaderText() + } // end of property CategoryItemHeader::HeaderText + .property instance valuetype [System.Drawing]System.Drawing.Color + Color() + { + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .get instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_Color() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + } // end of property CategoryItemHeader::Color + .property instance valuetype [System.Drawing]System.Drawing.Color + ForeColor() + { + .get instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_ForeColor() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + } // end of property CategoryItemHeader::ForeColor + .property instance class [System.Drawing]System.Drawing.Font + HeaderFont() + { + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .get instance class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_HeaderFont() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + } // end of property CategoryItemHeader::HeaderFont +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl + extends Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl +{ + .field private class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command Command + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item, + class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command command) cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .line 34,34 : 9,91 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemCommandControl.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::.ctor() + .line 36,36 : 13,33 '' + IL_0006: ldarg.2 + IL_0007: brtrue.s IL_0014 + + .line 37,37 : 17,60 '' + IL_0009: ldstr "command" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 39,39 : 13,36 '' + IL_0014: ldarg.0 + IL_0015: ldarg.2 + IL_0016: stfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::Command + .line 40,40 : 9,10 '' + IL_001b: ret + } // end of method CategoryItemCommandControl::.ctor + + .method famorassem hidebysig virtual instance void + OnSelected() cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 48,48 : 13,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::Command + IL_0006: ldarg.0 + IL_0007: call instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItem Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_ParentItem() + IL_000c: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem/Command::Invoke(class Virtuoso.Miranda.Plugins.Configuration.CategoryItem) + .line 49,49 : 9,10 '' + IL_0011: ret + } // end of method CategoryItemCommandControl::OnSelected + + .method famorassem hidebysig specialname virtual + instance bool get_HasUI() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 55,55 : 17,30 '' + IL_0000: ldc.i4.0 + IL_0001: ret + } // end of method CategoryItemCommandControl::get_HasUI + + .property instance bool HasUI() + { + .get instance bool Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::get_HasUI() + } // end of property CategoryItemCommandControl::HasUI +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl + +.class public auto ansi serializable sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Category + extends [mscorlib]System.Object +{ + .field private string name + .field private string description + .field private class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection items + .method public hidebysig specialname rtspecialname + instance void .ctor(string name, + string description) cil managed + { + // Code size 70 (0x46) + .maxstack 2 + .line 39,39 : 9,57 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Category.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 41,41 : 13,44 '' + IL_0006: ldarg.1 + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: brfalse.s IL_0019 + + .line 42,42 : 17,57 '' + IL_000e: ldstr "name" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 44,44 : 13,51 '' + IL_0019: ldarg.2 + IL_001a: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_001f: brfalse.s IL_002c + + .line 45,45 : 17,64 '' + IL_0021: ldstr "description" + IL_0026: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002b: throw + + .line 47,47 : 13,55 '' + IL_002c: ldarg.0 + IL_002d: newobj instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection::.ctor() + IL_0032: stfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::items + .line 48,48 : 13,30 '' + IL_0037: ldarg.0 + IL_0038: ldarg.1 + IL_0039: stfld string Virtuoso.Miranda.Plugins.Configuration.Category::name + .line 49,49 : 13,44 '' + IL_003e: ldarg.0 + IL_003f: ldarg.2 + IL_0040: stfld string Virtuoso.Miranda.Plugins.Configuration.Category::description + .line 50,50 : 9,10 '' + IL_0045: ret + } // end of method Category::.ctor + + .method public hidebysig specialname instance string + get_Description() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 58,58 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Configuration.Category::description + IL_0006: ret + } // end of method Category::get_Description + + .method public hidebysig specialname instance string + get_Name() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 63,63 : 19,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Configuration.Category::name + IL_0006: ret + } // end of method Category::get_Name + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection + get_Items() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 68,68 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::items + IL_0006: ret + } // end of method Category::get_Items + + .property instance string Description() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.Category::get_Description() + } // end of property Category::Description + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.Category::get_Name() + } // end of property Category::Name + .property instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection + Items() + { + .get instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::get_Items() + } // end of property Category::Items +} // end of class Virtuoso.Miranda.Plugins.Configuration.Category + +.class public auto ansi serializable sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.CategoryCollection + extends class [mscorlib]System.Collections.Generic.List`1 +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 29,29 : 9,46 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\CategoryCollection.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + .line 29,29 : 49,50 '' + IL_0007: ret + } // end of method CategoryCollection::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection + extends [System.Windows.Forms]System.Windows.Forms.UserControl +{ + .field private class [System]System.ComponentModel.IContainer components + .field private class [System.Windows.Forms]System.Windows.Forms.Label SectionLABEL + .field private class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel panel1 + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 31,31 : 9,37 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemSection.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.UserControl::.ctor() + .line 33,33 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::InitializeComponent() + .line 34,34 : 9,10 '' + IL_000c: ret + } // end of method CategoryItemSection::.ctor + + .method public hidebysig specialname instance string + get_SectionName() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 40,40 : 19,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_0006: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_000b: ret + } // end of method CategoryItemSection::get_SectionName + + .method public hidebysig specialname instance void + set_SectionName(string 'value') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 41,41 : 19,45 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_0006: ldarg.1 + IL_0007: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 41,41 : 46,47 '' + IL_000c: ret + } // end of method CategoryItemSection::set_SectionName + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Color + get_Color() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 47,47 : 19,47 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0006: callvirt instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_GradientColor() + IL_000b: ret + } // end of method CategoryItemSection::get_Color + + .method public hidebysig specialname instance void + set_Color(valuetype [System.Drawing]System.Drawing.Color 'value') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 48,48 : 19,48 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0006: ldarg.1 + IL_0007: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor(valuetype [System.Drawing]System.Drawing.Color) + .line 48,48 : 49,50 '' + IL_000c: ret + } // end of method CategoryItemSection::set_Color + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 17,17 : 13,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\Forms\\Controls\\CategoryItemSection.Designer.cs' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_0016 + + IL_0003: ldarg.0 + IL_0004: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::components + IL_0009: brfalse.s IL_0016 + + .line 19,19 : 17,38 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::components + IL_0011: callvirt instance void [mscorlib]System.IDisposable::Dispose() + .line 21,21 : 13,37 '' + IL_0016: ldarg.0 + IL_0017: ldarg.1 + IL_0018: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::Dispose(bool) + .line 22,22 : 9,10 '' + IL_001d: ret + } // end of method CategoryItemSection::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 455 (0x1c7) + .maxstack 6 + .line 32,32 : 13,87 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::.ctor() + IL_0006: stfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + .line 33,33 : 13,66 '' + IL_000b: ldarg.0 + IL_000c: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0011: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + .line 34,34 : 13,41 '' + IL_0016: ldarg.0 + IL_0017: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_001c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 35,35 : 13,34 '' + IL_0021: ldarg.0 + IL_0022: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 39,39 : 13,57 '' + IL_0027: ldarg.0 + IL_0028: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_002d: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0032: ldarg.0 + IL_0033: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_0038: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 40,40 : 13,68 '' + IL_003d: ldarg.0 + IL_003e: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0043: ldc.i4.5 + IL_0044: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 41,41 : 13,143 '' + IL_0049: ldarg.0 + IL_004a: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_004f: ldc.i4 0xff + IL_0054: ldc.i4 0xe0 + IL_0059: ldc.i4 0xc0 + IL_005e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0063: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor(valuetype [System.Drawing]System.Drawing.Color) + .line 42,42 : 13,67 '' + IL_0068: ldarg.0 + IL_0069: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_006e: ldc.i4.0 + IL_006f: ldc.i4.0 + IL_0070: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0075: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 43,43 : 13,41 '' + IL_007a: ldarg.0 + IL_007b: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0080: ldstr "panel1" + IL_0085: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 44,44 : 13,40 '' + IL_008a: ldarg.0 + IL_008b: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_0090: ldc.r4 90. + IL_0095: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_Rotation(float32) + .line 45,45 : 13,65 '' + IL_009a: ldarg.0 + IL_009b: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_00a0: ldc.i4 0x2fd + IL_00a5: ldc.i4.s 20 + IL_00a7: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00ac: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 46,46 : 13,38 '' + IL_00b1: ldarg.0 + IL_00b2: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_00b7: ldc.i4.1 + IL_00b8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 50,50 : 13,47 '' + IL_00bd: ldarg.0 + IL_00be: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_00c3: ldc.i4.1 + IL_00c4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 51,51 : 13,80 '' + IL_00c9: ldarg.0 + IL_00ca: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_00cf: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_MenuText() + IL_00d4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + .line 52,52 : 13,73 '' + IL_00d9: ldarg.0 + IL_00da: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_00df: ldc.i4.8 + IL_00e0: ldc.i4.4 + IL_00e1: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_00e6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 53,53 : 13,53 '' + IL_00eb: ldarg.0 + IL_00ec: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_00f1: ldstr "SectionLABEL" + IL_00f6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 54,54 : 13,69 '' + IL_00fb: ldarg.0 + IL_00fc: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_0101: ldc.i4.0 + IL_0102: ldc.i4.s 13 + IL_0104: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0109: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 55,55 : 13,44 '' + IL_010e: ldarg.0 + IL_010f: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::SectionLABEL + IL_0114: ldc.i4.0 + IL_0115: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 59,59 : 13,74 '' + IL_011a: ldarg.0 + IL_011b: ldc.r4 7. + IL_0120: ldc.r4 13. + IL_0125: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_012a: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + .line 60,60 : 13,74 '' + IL_012f: ldarg.0 + IL_0130: ldc.i4.1 + IL_0131: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + .line 61,61 : 13,63 '' + IL_0136: ldarg.0 + IL_0137: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_013c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 62,62 : 13,44 '' + IL_0141: ldarg.0 + IL_0142: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0147: ldarg.0 + IL_0148: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_014d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 63,63 : 13,147 '' + IL_0152: ldarg.0 + IL_0153: ldstr "Tahoma" + IL_0158: ldc.r4 8.25 + IL_015d: ldc.i4.1 + IL_015e: ldc.i4.3 + IL_015f: ldc.i4 0xee + IL_0164: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0169: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 64,64 : 13,57 '' + IL_016e: ldarg.0 + IL_016f: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Black() + IL_0174: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + .line 65,65 : 13,65 '' + IL_0179: ldarg.0 + IL_017a: ldc.i4 0x12c + IL_017f: ldc.i4.s 20 + IL_0181: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0186: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 66,66 : 13,47 '' + IL_018b: ldarg.0 + IL_018c: ldstr "CategoryItemSection" + IL_0191: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 67,67 : 13,58 '' + IL_0196: ldarg.0 + IL_0197: ldc.i4 0x2fd + IL_019c: ldc.i4.s 20 + IL_019e: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_01a3: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 68,68 : 13,45 '' + IL_01a8: ldarg.0 + IL_01a9: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_01ae: ldc.i4.0 + IL_01af: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 69,69 : 13,41 '' + IL_01b4: ldarg.0 + IL_01b5: ldfld class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::panel1 + IL_01ba: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + .line 70,70 : 13,38 '' + IL_01bf: ldarg.0 + IL_01c0: ldc.i4.0 + IL_01c1: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 72,72 : 9,10 '' + IL_01c6: ret + } // end of method CategoryItemSection::InitializeComponent + + .property instance string SectionName() + { + .custom instance void [System]System.ComponentModel.DefaultValueAttribute::.ctor(string) = ( 01 00 07 53 65 63 74 69 6F 6E 00 00 ) // ...Section.. + .custom instance void [System]System.ComponentModel.LocalizableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.EditorAttribute::.ctor(string, + class [mscorlib]System.Type) = ( 01 00 80 84 53 79 73 74 65 6D 2E 43 6F 6D 70 6F // ....System.Compo + 6E 65 6E 74 4D 6F 64 65 6C 2E 44 65 73 69 67 6E // nentModel.Design + 2E 4D 75 6C 74 69 6C 69 6E 65 53 74 72 69 6E 67 // .MultilineString + 45 64 69 74 6F 72 2C 20 53 79 73 74 65 6D 2E 44 // Editor, System.D + 65 73 69 67 6E 2C 20 56 65 72 73 69 6F 6E 3D 32 // esign, Version=2 + 2E 30 2E 30 2E 30 2C 20 43 75 6C 74 75 72 65 3D // .0.0.0, Culture= + 6E 65 75 74 72 61 6C 2C 20 50 75 62 6C 69 63 4B // neutral, PublicK + 65 79 54 6F 6B 65 6E 3D 62 30 33 66 35 66 37 66 // eyToken=b03f5f7f + 31 31 64 35 30 61 33 61 75 53 79 73 74 65 6D 2E // 11d50a3auSystem. + 44 72 61 77 69 6E 67 2E 44 65 73 69 67 6E 2E 55 // Drawing.Design.U + 49 54 79 70 65 45 64 69 74 6F 72 2C 20 53 79 73 // ITypeEditor, Sys + 74 65 6D 2E 44 72 61 77 69 6E 67 2C 20 56 65 72 // tem.Drawing, Ver + 73 69 6F 6E 3D 32 2E 30 2E 30 2E 30 2C 20 43 75 // sion=2.0.0.0, Cu + 6C 74 75 72 65 3D 6E 65 75 74 72 61 6C 2C 20 50 // lture=neutral, P + 75 62 6C 69 63 4B 65 79 54 6F 6B 65 6E 3D 62 30 // ublicKeyToken=b0 + 33 66 35 66 37 66 31 31 64 35 30 61 33 61 00 00 ) // 3f5f7f11d50a3a.. + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_SectionName(string) + .get instance string Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::get_SectionName() + } // end of property CategoryItemSection::SectionName + .property instance valuetype [System.Drawing]System.Drawing.Color + Color() + { + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .get instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::get_Color() + .set instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_Color(valuetype [System.Drawing]System.Drawing.Color) + } // end of property CategoryItemSection::Color +} // end of class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Configuration.IEncryption +{ + .method public hidebysig newslot abstract virtual + instance uint8[] Encrypt(uint8[] data) cil managed + { + } // end of method IEncryption::Encrypt + + .method public hidebysig newslot abstract virtual + instance uint8[] Decrypt(uint8[] data) cil managed + { + } // end of method IEncryption::Decrypt + +} // end of class Virtuoso.Miranda.Plugins.Configuration.IEncryption + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Configuration.IStorage + implements [mscorlib]System.IDisposable +{ + .method public hidebysig newslot abstract virtual + instance class [mscorlib]System.IO.Stream + OpenRead(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method IStorage::OpenRead + + .method public hidebysig newslot abstract virtual + instance class [mscorlib]System.IO.Stream + OpenWrite(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method IStorage::OpenWrite + + .method public hidebysig newslot abstract virtual + instance bool Exists(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method IStorage::Exists + +} // end of class Virtuoso.Miranda.Plugins.Configuration.IStorage + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.StorageBase + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Configuration.IStorage, + [mscorlib]System.IDisposable +{ + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 30,30 : 9,32 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\StorageBase.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 30,30 : 35,36 '' + IL_0006: ret + } // end of method StorageBase::.ctor + + .method family hidebysig newslot virtual + instance string GetFileName(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 139 (0x8b) + .maxstack 4 + .locals init ([0] string versionSuffix, + [1] string profileBoundSuffix) + .line 38,38 : 13,36 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 39,39 : 17,63 '' + IL_0003: ldstr "configType" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 41,42 : 13,59 '' + IL_000e: ldarg.2 + IL_000f: brfalse.s IL_001f + + IL_0011: ldarg.2 + IL_0012: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Version() + IL_0017: ldnull + IL_0018: call bool [mscorlib]System.Version::op_Inequality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_001d: brtrue.s IL_0026 + + IL_001f: ldsfld string [mscorlib]System.String::Empty + IL_0024: br.s IL_0031 + + IL_0026: ldarg.2 + IL_0027: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Version() + IL_002c: callvirt instance string [mscorlib]System.Object::ToString() + IL_0031: stloc.0 + .line 44,44 : 13,54 '' + IL_0032: ldsfld string [mscorlib]System.String::Empty + IL_0037: stloc.1 + .line 46,46 : 13,57 '' + IL_0038: ldarg.2 + IL_0039: brfalse.s IL_0065 + + IL_003b: ldarg.2 + IL_003c: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_ProfileBound() + IL_0041: brfalse.s IL_0065 + + .line 48,48 : 17,49 '' + IL_0043: call bool Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Initialized() + IL_0048: brtrue.s IL_0050 + + .line 49,49 : 21,59 '' + IL_004a: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_004f: throw + + .line 51,51 : 17,123 '' + IL_0050: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0055: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaDatabase() + IL_005a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::get_ProfileName() + IL_005f: call string [mscorlib]System.IO.Path::GetFileNameWithoutExtension(string) + IL_0064: stloc.1 + .line 54,54 : 13,132 '' + IL_0065: ldstr "{0}_{1}_{2}" + IL_006a: ldarg.1 + IL_006b: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0070: ldloc.0 + IL_0071: ldloc.1 + IL_0072: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_0077: ldc.i4.s 46 + IL_0079: ldc.i4.s 45 + IL_007b: callvirt instance string [mscorlib]System.String::Replace(char, + char) + IL_0080: ldstr ".dat" + IL_0085: call string [mscorlib]System.String::Concat(string, + string) + IL_008a: ret + } // end of method StorageBase::GetFileName + + .method public hidebysig newslot abstract virtual + instance class [mscorlib]System.IO.Stream + OpenRead(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method StorageBase::OpenRead + + .method public hidebysig newslot abstract virtual + instance class [mscorlib]System.IO.Stream + OpenWrite(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method StorageBase::OpenWrite + + .method public hidebysig newslot abstract virtual + instance bool Exists(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + } // end of method StorageBase::Exists + + .method public hidebysig newslot abstract virtual + instance void Dispose() cil managed + { + } // end of method StorageBase::Dispose + +} // end of class Virtuoso.Miranda.Plugins.Configuration.StorageBase + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage + extends Virtuoso.Miranda.Plugins.Configuration.StorageBase +{ + .field private class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Store + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 38,38 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\IsolatedStorage.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Configuration.StorageBase::.ctor() + .line 40,40 : 13,67 '' + IL_0006: ldarg.0 + IL_0007: call class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile::GetUserStoreForAssembly() + IL_000c: stfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + .line 41,41 : 9,10 '' + IL_0011: ret + } // end of method IsolatedStorage::.ctor + + .method public hidebysig virtual instance class [mscorlib]System.IO.Stream + OpenRead(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 35 (0x23) + .maxstack 8 + .line 49,49 : 13,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0006: brtrue.s IL_000e + + .line 50,50 : 17,55 '' + IL_0008: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_000d: throw + + .line 52,52 : 13,106 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: ldarg.2 + IL_0011: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.StorageBase::GetFileName(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0016: ldc.i4.3 + IL_0017: ldarg.0 + IL_0018: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_001d: newobj instance void [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFileStream::.ctor(string, + valuetype [mscorlib]System.IO.FileMode, + class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile) + IL_0022: ret + } // end of method IsolatedStorage::OpenRead + + .method public hidebysig virtual instance class [mscorlib]System.IO.Stream + OpenWrite(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 35 (0x23) + .maxstack 8 + .line 57,57 : 13,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0006: brtrue.s IL_000e + + .line 58,58 : 17,55 '' + IL_0008: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_000d: throw + + .line 60,60 : 13,108 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: ldarg.2 + IL_0011: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.StorageBase::GetFileName(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0016: ldc.i4.2 + IL_0017: ldarg.0 + IL_0018: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_001d: newobj instance void [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFileStream::.ctor(string, + valuetype [mscorlib]System.IO.FileMode, + class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile) + IL_0022: ret + } // end of method IsolatedStorage::OpenWrite + + .method public hidebysig virtual instance bool + Exists(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 28 (0x1c) + .maxstack 8 + .line 65,65 : 13,85 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: ldarg.2 + IL_0009: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.StorageBase::GetFileName(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_000e: callvirt instance string[] [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile::GetFileNames(string) + IL_0013: ldlen + IL_0014: conv.i4 + IL_0015: ldc.i4.0 + IL_0016: ceq + IL_0018: ldc.i4.0 + IL_0019: ceq + IL_001b: ret + } // end of method IsolatedStorage::Exists + + .method public hidebysig virtual instance void + Dispose() cil managed + { + // Code size 27 (0x1b) + .maxstack 8 + .line 70,70 : 13,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_0006: brfalse.s IL_0013 + + .line 71,71 : 17,33 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + IL_000e: callvirt instance void [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile::Dispose() + .line 73,73 : 13,26 '' + IL_0013: ldarg.0 + IL_0014: ldnull + IL_0015: stfld class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageFile Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Store + .line 74,74 : 9,10 '' + IL_001a: ret + } // end of method IsolatedStorage::Dispose + +} // end of class Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.PortableEncryption + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Configuration.IEncryption +{ + .field private static initonly uint8[] KeyGeneratorSalt + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 36,36 : 9,39 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\PortableEncryption.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 36,36 : 42,43 '' + IL_0006: ret + } // end of method PortableEncryption::.ctor + + .method public hidebysig newslot virtual + instance uint8[] Encrypt(uint8[] data) cil managed + { + // Code size 69 (0x45) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Security.Cryptography.ICryptoTransform transform, + [1] class [mscorlib]System.IO.MemoryStream 'stream', + [2] class [mscorlib]System.Security.Cryptography.CryptoStream crypto, + [3] uint8[] CS$1$0000) + .line 44,44 : 13,60 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance class [mscorlib]System.Security.Cryptography.ICryptoTransform Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::CreateEncryptor() + IL_0006: stloc.0 + .line 46,46 : 20,71 '' + IL_0007: ldarg.1 + IL_0008: ldlen + IL_0009: conv.i4 + IL_000a: newobj instance void [mscorlib]System.IO.MemoryStream::.ctor(int32) + IL_000f: stloc.1 + .line 48,48 : 24,105 '' + .try + { + IL_0010: ldloc.1 + IL_0011: ldloc.0 + IL_0012: ldc.i4.1 + IL_0013: newobj instance void [mscorlib]System.Security.Cryptography.CryptoStream::.ctor(class [mscorlib]System.IO.Stream, + class [mscorlib]System.Security.Cryptography.ICryptoTransform, + valuetype [mscorlib]System.Security.Cryptography.CryptoStreamMode) + IL_0018: stloc.2 + .line 49,49 : 21,56 '' + .try + { + IL_0019: ldloc.2 + IL_001a: ldarg.1 + IL_001b: ldc.i4.0 + IL_001c: ldarg.1 + IL_001d: ldlen + IL_001e: conv.i4 + IL_001f: callvirt instance void [mscorlib]System.IO.Stream::Write(uint8[], + int32, + int32) + IL_0024: leave.s IL_0030 + + } // end .try + finally + { + IL_0026: ldloc.2 + IL_0027: brfalse.s IL_002f + + IL_0029: ldloc.2 + IL_002a: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_002f: endfinally + .line 51,51 : 17,41 '' + } // end handler + IL_0030: ldloc.1 + IL_0031: callvirt instance uint8[] [mscorlib]System.IO.MemoryStream::ToArray() + IL_0036: stloc.3 + IL_0037: leave.s IL_0043 + + } // end .try + finally + { + IL_0039: ldloc.1 + IL_003a: brfalse.s IL_0042 + + IL_003c: ldloc.1 + IL_003d: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0042: endfinally + .line 53,53 : 9,10 '' + } // end handler + IL_0043: ldloc.3 + IL_0044: ret + } // end of method PortableEncryption::Encrypt + + .method public hidebysig newslot virtual + instance uint8[] Decrypt(uint8[] data) cil managed + { + // Code size 123 (0x7b) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Security.Cryptography.ICryptoTransform transform, + [1] class [mscorlib]System.IO.MemoryStream inStream, + [2] class [mscorlib]System.IO.MemoryStream outStream, + [3] class [mscorlib]System.Security.Cryptography.CryptoStream crypto, + [4] int32 count, + [5] uint8[] buffer, + [6] uint8[] CS$1$0000) + .line 57,57 : 13,60 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance class [mscorlib]System.Security.Cryptography.ICryptoTransform Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::CreateDecryptor() + IL_0006: stloc.0 + .line 59,59 : 20,67 '' + IL_0007: ldarg.1 + IL_0008: newobj instance void [mscorlib]System.IO.MemoryStream::.ctor(uint8[]) + IL_000d: stloc.1 + .line 59,59 : 68,109 '' + .try + { + IL_000e: ldarg.1 + IL_000f: ldlen + IL_0010: conv.i4 + IL_0011: newobj instance void [mscorlib]System.IO.MemoryStream::.ctor(int32) + IL_0016: stloc.2 + .line 61,61 : 24,106 '' + .try + { + IL_0017: ldloc.1 + IL_0018: ldloc.0 + IL_0019: ldc.i4.0 + IL_001a: newobj instance void [mscorlib]System.Security.Cryptography.CryptoStream::.ctor(class [mscorlib]System.IO.Stream, + class [mscorlib]System.Security.Cryptography.ICryptoTransform, + valuetype [mscorlib]System.Security.Cryptography.CryptoStreamMode) + IL_001f: stloc.3 + .line 63,63 : 21,35 '' + .try + { + IL_0020: ldc.i4.0 + IL_0021: stloc.s count + .line 64,64 : 21,52 '' + IL_0023: ldc.i4 0x800 + IL_0028: newarr [mscorlib]System.Byte + IL_002d: stloc.s buffer + IL_002f: br.s IL_003c + + .line 67,67 : 25,59 '' + IL_0031: ldloc.2 + IL_0032: ldloc.s buffer + IL_0034: ldc.i4.0 + IL_0035: ldloc.s count + IL_0037: callvirt instance void [mscorlib]System.IO.Stream::Write(uint8[], + int32, + int32) + .line 66,66 : 21,81 '' + IL_003c: ldloc.3 + IL_003d: ldloc.s buffer + IL_003f: ldc.i4.0 + IL_0040: ldloc.s buffer + IL_0042: ldlen + IL_0043: conv.i4 + IL_0044: callvirt instance int32 [mscorlib]System.IO.Stream::Read(uint8[], + int32, + int32) + IL_0049: dup + IL_004a: stloc.s count + IL_004c: brtrue.s IL_0031 + + IL_004e: leave.s IL_005a + + } // end .try + finally + { + IL_0050: ldloc.3 + IL_0051: brfalse.s IL_0059 + + IL_0053: ldloc.3 + IL_0054: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0059: endfinally + .line 70,70 : 17,44 '' + } // end handler + IL_005a: ldloc.2 + IL_005b: callvirt instance uint8[] [mscorlib]System.IO.MemoryStream::ToArray() + IL_0060: stloc.s CS$1$0000 + IL_0062: leave.s IL_0078 + + } // end .try + finally + { + IL_0064: ldloc.2 + IL_0065: brfalse.s IL_006d + + IL_0067: ldloc.2 + IL_0068: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_006d: endfinally + } // end handler + } // end .try + finally + { + IL_006e: ldloc.1 + IL_006f: brfalse.s IL_0077 + + IL_0071: ldloc.1 + IL_0072: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0077: endfinally + .line 72,72 : 9,10 '' + } // end handler + IL_0078: ldloc.s CS$1$0000 + IL_007a: ret + } // end of method PortableEncryption::Decrypt + + .method family hidebysig newslot virtual + instance class [mscorlib]System.Security.Cryptography.ICryptoTransform + CreateEncryptor() cil managed + { + // Code size 34 (0x22) + .maxstack 4 + .locals init ([0] string key, + [1] class [mscorlib]System.Security.Cryptography.TripleDES tripleDes, + [2] uint8[] keyBytes, + [3] uint8[] ivBytes) + .line 80,80 : 13,46 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::PromptForKey(bool) + IL_0007: stloc.0 + .line 82,82 : 13,54 '' + IL_0008: call class [mscorlib]System.Security.Cryptography.TripleDES [mscorlib]System.Security.Cryptography.TripleDES::Create() + IL_000d: stloc.1 + .line 85,85 : 13,71 '' + IL_000e: ldloc.1 + IL_000f: ldloc.0 + IL_0010: ldloca.s keyBytes + IL_0012: ldloca.s ivBytes + IL_0014: call void Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::GetSecretBytes(class [mscorlib]System.Security.Cryptography.SymmetricAlgorithm, + string, + uint8[]&, + uint8[]&) + .line 87,87 : 13,65 '' + IL_0019: ldloc.1 + IL_001a: ldloc.2 + IL_001b: ldloc.3 + IL_001c: callvirt instance class [mscorlib]System.Security.Cryptography.ICryptoTransform [mscorlib]System.Security.Cryptography.SymmetricAlgorithm::CreateEncryptor(uint8[], + uint8[]) + IL_0021: ret + } // end of method PortableEncryption::CreateEncryptor + + .method family hidebysig newslot virtual + instance class [mscorlib]System.Security.Cryptography.ICryptoTransform + CreateDecryptor() cil managed + { + // Code size 34 (0x22) + .maxstack 4 + .locals init ([0] string key, + [1] class [mscorlib]System.Security.Cryptography.TripleDES tripleDes, + [2] uint8[] keyBytes, + [3] uint8[] ivBytes) + .line 92,92 : 13,45 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::PromptForKey(bool) + IL_0007: stloc.0 + .line 94,94 : 13,54 '' + IL_0008: call class [mscorlib]System.Security.Cryptography.TripleDES [mscorlib]System.Security.Cryptography.TripleDES::Create() + IL_000d: stloc.1 + .line 97,97 : 13,71 '' + IL_000e: ldloc.1 + IL_000f: ldloc.0 + IL_0010: ldloca.s keyBytes + IL_0012: ldloca.s ivBytes + IL_0014: call void Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::GetSecretBytes(class [mscorlib]System.Security.Cryptography.SymmetricAlgorithm, + string, + uint8[]&, + uint8[]&) + .line 99,99 : 13,65 '' + IL_0019: ldloc.1 + IL_001a: ldloc.2 + IL_001b: ldloc.3 + IL_001c: callvirt instance class [mscorlib]System.Security.Cryptography.ICryptoTransform [mscorlib]System.Security.Cryptography.SymmetricAlgorithm::CreateDecryptor(uint8[], + uint8[]) + IL_0021: ret + } // end of method PortableEncryption::CreateDecryptor + + .method family hidebysig static void GetSecretBytes(class [mscorlib]System.Security.Cryptography.SymmetricAlgorithm 'algorithm', + string password, + [out] uint8[]& keyBytes, + [out] uint8[]& ivBytes) cil managed + { + // Code size 69 (0x45) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Security.Cryptography.Rfc2898DeriveBytes keyGenerator) + .line 104,104 : 13,102 '' + IL_0000: ldarg.1 + IL_0001: ldsfld uint8[] Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::KeyGeneratorSalt + IL_0006: ldc.i4.s 20 + IL_0008: newobj instance void [mscorlib]System.Security.Cryptography.Rfc2898DeriveBytes::.ctor(string, + uint8[], + int32) + IL_000d: stloc.0 + .line 105,105 : 13,86 '' + IL_000e: ldarg.2 + IL_000f: ldloc.0 + IL_0010: ldarg.0 + IL_0011: callvirt instance class [mscorlib]System.Security.Cryptography.KeySizes[] [mscorlib]System.Security.Cryptography.SymmetricAlgorithm::get_LegalKeySizes() + IL_0016: ldc.i4.0 + IL_0017: ldelem.ref + IL_0018: callvirt instance int32 [mscorlib]System.Security.Cryptography.KeySizes::get_MaxSize() + IL_001d: ldc.i4.8 + IL_001e: div + IL_001f: callvirt instance uint8[] [mscorlib]System.Security.Cryptography.DeriveBytes::GetBytes(int32) + IL_0024: stind.ref + .line 107,107 : 13,46 '' + IL_0025: ldloc.0 + IL_0026: ldc.i4.s 10 + IL_0028: callvirt instance void [mscorlib]System.Security.Cryptography.Rfc2898DeriveBytes::set_IterationCount(int32) + .line 108,108 : 13,87 '' + IL_002d: ldarg.3 + IL_002e: ldloc.0 + IL_002f: ldarg.0 + IL_0030: callvirt instance class [mscorlib]System.Security.Cryptography.KeySizes[] [mscorlib]System.Security.Cryptography.SymmetricAlgorithm::get_LegalBlockSizes() + IL_0035: ldc.i4.0 + IL_0036: ldelem.ref + IL_0037: callvirt instance int32 [mscorlib]System.Security.Cryptography.KeySizes::get_MaxSize() + IL_003c: ldc.i4.8 + IL_003d: div + IL_003e: callvirt instance uint8[] [mscorlib]System.Security.Cryptography.DeriveBytes::GetBytes(int32) + IL_0043: stind.ref + .line 109,109 : 9,10 '' + IL_0044: ret + } // end of method PortableEncryption::GetSecretBytes + + .method family hidebysig newslot abstract virtual + instance string PromptForKey(bool decrypting) cil managed + { + } // end of method PortableEncryption::PromptForKey + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 30,30 : 9,114 '' + IL_0000: ldc.i4.s 10 + IL_0002: newarr [mscorlib]System.Byte + IL_0007: dup + IL_0008: ldtoken field valuetype '{FD0927AC-A943-4855-87EE-E6F69D6BD04C}'/'__StaticArrayInitTypeSize=10' '{FD0927AC-A943-4855-87EE-E6F69D6BD04C}'::'$$method0x6000651-1' + IL_000d: call void [mscorlib]System.Runtime.CompilerServices.RuntimeHelpers::InitializeArray(class [mscorlib]System.Array, + valuetype [mscorlib]System.RuntimeFieldHandle) + IL_0012: stsfld uint8[] Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::KeyGeneratorSalt + IL_0017: ret + } // end of method PortableEncryption::.cctor + +} // end of class Virtuoso.Miranda.Plugins.Configuration.PortableEncryption + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.PortableStorage + extends Virtuoso.Miranda.Plugins.Configuration.StorageBase +{ + .method private hidebysig instance string + GetPath(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 46 (0x2e) + .maxstack 4 + .locals init ([0] string configDirectory) + .line 32,32 : 13,106 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\PortableStorage.cs' + IL_0000: call string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaFolderPath() + IL_0005: ldstr "Configuration" + IL_000a: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_000f: stloc.0 + .line 34,34 : 13,52 '' + IL_0010: ldloc.0 + IL_0011: call bool [mscorlib]System.IO.Directory::Exists(string) + IL_0016: brtrue.s IL_001f + + .line 35,35 : 17,60 '' + IL_0018: ldloc.0 + IL_0019: call class [mscorlib]System.IO.DirectoryInfo [mscorlib]System.IO.Directory::CreateDirectory(string) + IL_001e: pop + .line 37,37 : 13,84 '' + IL_001f: ldloc.0 + IL_0020: ldarg.0 + IL_0021: ldarg.1 + IL_0022: ldarg.2 + IL_0023: callvirt instance string Virtuoso.Miranda.Plugins.Configuration.StorageBase::GetFileName(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0028: call string [mscorlib]System.IO.Path::Combine(string, + string) + IL_002d: ret + } // end of method PortableStorage::GetPath + + .method public hidebysig virtual instance class [mscorlib]System.IO.Stream + OpenRead(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 46,46 : 13,64 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance string Virtuoso.Miranda.Plugins.Configuration.PortableStorage::GetPath(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0008: call class [mscorlib]System.IO.FileStream [mscorlib]System.IO.File::OpenRead(string) + IL_000d: ret + } // end of method PortableStorage::OpenRead + + .method public hidebysig virtual instance class [mscorlib]System.IO.Stream + OpenWrite(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 51,51 : 13,65 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance string Virtuoso.Miranda.Plugins.Configuration.PortableStorage::GetPath(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0008: call class [mscorlib]System.IO.FileStream [mscorlib]System.IO.File::OpenWrite(string) + IL_000d: ret + } // end of method PortableStorage::OpenWrite + + .method public hidebysig virtual instance bool + Exists(class [mscorlib]System.Type configType, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 56,56 : 13,62 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance string Virtuoso.Miranda.Plugins.Configuration.PortableStorage::GetPath(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0008: call bool [mscorlib]System.IO.File::Exists(string) + IL_000d: ret + } // end of method PortableStorage::Exists + + .method public hidebysig virtual instance void + Dispose() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 59,59 : 42,43 '' + IL_0000: ret + } // end of method PortableStorage::Dispose + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Configuration.StorageBase::.ctor() + IL_0006: ret + } // end of method PortableStorage::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Configuration.PortableStorage + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Configuration.WindowsEncryption + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.Configuration.IEncryption +{ + .method public hidebysig newslot virtual final + instance uint8[] Encrypt(uint8[] data) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 29,29 : 13,87 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\WindowsEncryption.cs' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: ldc.i4.0 + IL_0003: call uint8[] [System.Security]System.Security.Cryptography.ProtectedData::Protect(uint8[], + uint8[], + valuetype [System.Security]System.Security.Cryptography.DataProtectionScope) + IL_0008: ret + } // end of method WindowsEncryption::Encrypt + + .method public hidebysig newslot virtual final + instance uint8[] Decrypt(uint8[] data) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 34,34 : 13,89 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: ldc.i4.0 + IL_0003: call uint8[] [System.Security]System.Security.Cryptography.ProtectedData::Unprotect(uint8[], + uint8[], + valuetype [System.Security]System.Security.Cryptography.DataProtectionScope) + IL_0008: ret + } // end of method WindowsEncryption::Decrypt + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method WindowsEncryption::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Configuration.WindowsEncryption + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.DefaultExceptionHandler + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.IExceptionHandler, + Virtuoso.Miranda.Plugins.IExceptionReporter +{ + .field private class Virtuoso.Miranda.Plugins.MirandaPlugin plugin + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.MirandaPlugin + get_Plugin() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 37,37 : 19,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\DefaultExceptionHandler.cs' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0006: ret + } // end of method DefaultExceptionHandler::get_Plugin + + .method private hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 44,44 : 9,62 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 46,46 : 13,34 '' + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: stfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + .line 47,47 : 9,10 '' + IL_000d: ret + } // end of method DefaultExceptionHandler::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.DefaultExceptionHandler + Create() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 51,51 : 13,33 '' + IL_0000: ldnull + IL_0001: call class Virtuoso.Miranda.Plugins.DefaultExceptionHandler Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0006: ret + } // end of method DefaultExceptionHandler::Create + + .method public hidebysig static class Virtuoso.Miranda.Plugins.DefaultExceptionHandler + Create(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin) cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 56,56 : 13,56 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.DefaultExceptionHandler::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin) + IL_0006: ret + } // end of method DefaultExceptionHandler::Create + + .method public hidebysig newslot virtual final + instance void HandleException(class [mscorlib]System.Exception e, + class Virtuoso.Miranda.Plugins.PluginDescriptor descriptor) cil managed + { + // Code size 54 (0x36) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.IExceptionReporter reporter) + .line 65,65 : 13,146 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0006: isinst Virtuoso.Miranda.Plugins.IExceptionReporter + IL_000b: dup + IL_000c: brtrue.s IL_001b + + IL_000e: pop + IL_000f: ldarg.0 + IL_0010: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0015: brfalse.s IL_001a + + IL_0017: ldarg.0 + IL_0018: br.s IL_001b + + IL_001a: ldnull + IL_001b: stloc.0 + .line 66,66 : 13,132 '' + IL_001c: ldarg.1 + IL_001d: ldloc.0 + IL_001e: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_ModuleError() + IL_0023: ldarg.0 + IL_0024: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0029: call string [mscorlib]System.String::Format(string, + object) + IL_002e: ldc.i4.0 + IL_002f: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal(class [mscorlib]System.Exception, + class Virtuoso.Miranda.Plugins.IExceptionReporter, + string, + bool) + IL_0034: pop + .line 67,67 : 9,10 '' + IL_0035: ret + } // end of method DefaultExceptionHandler::HandleException + + .method private hidebysig newslot virtual final + instance void Virtuoso.Miranda.Plugins.IExceptionReporter.ReportException(class [mscorlib]System.Exception e) cil managed + { + .override Virtuoso.Miranda.Plugins.IExceptionReporter::ReportException + // Code size 136 (0x88) + .maxstack 5 + .locals init ([0] class [System]System.Diagnostics.ProcessStartInfo startInfo) + .line 73,73 : 17,69 '' + .try + { + IL_0000: newobj instance void [System]System.Diagnostics.ProcessStartInfo::.ctor() + IL_0005: stloc.0 + .line 74,74 : 17,50 '' + IL_0006: ldloc.0 + IL_0007: ldc.i4.1 + IL_0008: callvirt instance void [System]System.Diagnostics.ProcessStartInfo::set_UseShellExecute(bool) + .line 76,76 : 17,48 '' + IL_000d: ldarg.0 + IL_000e: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0013: isinst Virtuoso.Hyphen.Mini.StandalonePlugin + IL_0018: brfalse.s IL_0052 + + .line 78,78 : 21,217 '' + IL_001a: ldloc.0 + IL_001b: ldstr "mailto:{0}\?subject={1}&body={2}" + IL_0020: ldarg.0 + IL_0021: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0026: castclass Virtuoso.Hyphen.Mini.StandalonePlugin + IL_002b: callvirt instance string Virtuoso.Hyphen.Mini.StandalonePlugin::get_AuthorEmail() + IL_0030: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Formatable1_Text_PluginCrashed() + IL_0035: ldarg.0 + IL_0036: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_003b: call string [mscorlib]System.String::Format(string, + object) + IL_0040: ldarg.1 + IL_0041: callvirt instance string [mscorlib]System.Object::ToString() + IL_0046: call string [mscorlib]System.String::Format(string, + object, + object, + object) + IL_004b: callvirt instance void [System]System.Diagnostics.ProcessStartInfo::set_FileName(string) + IL_0050: br.s IL_0068 + + .line 82,82 : 21,69 '' + IL_0052: ldloc.0 + IL_0053: ldarg.0 + IL_0054: ldfld class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::plugin + IL_0059: callvirt instance class [System]System.Uri Virtuoso.Miranda.Plugins.MirandaPlugin::get_HomePage() + IL_005e: callvirt instance string [mscorlib]System.Object::ToString() + IL_0063: callvirt instance void [System]System.Diagnostics.ProcessStartInfo::set_FileName(string) + .line 85,85 : 17,42 '' + IL_0068: ldloc.0 + IL_0069: call class [System]System.Diagnostics.Process [System]System.Diagnostics.Process::Start(class [System]System.Diagnostics.ProcessStartInfo) + IL_006e: pop + IL_006f: leave.s IL_0087 + + .line 87,87 : 13,18 '' + } // end .try + catch [mscorlib]System.Object + { + IL_0071: pop + .line 89,89 : 17,164 '' + IL_0072: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_UnableToReportError() + IL_0077: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_Warning() + IL_007c: ldc.i4.0 + IL_007d: ldc.i4.s 48 + IL_007f: call valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.MessageBox::Show(string, + string, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxButtons, + valuetype [System.Windows.Forms]System.Windows.Forms.MessageBoxIcon) + IL_0084: pop + IL_0085: leave.s IL_0087 + + .line 91,91 : 9,10 '' + } // end handler + IL_0087: ret + } // end of method DefaultExceptionHandler::Virtuoso.Miranda.Plugins.IExceptionReporter.ReportException + + .property instance class Virtuoso.Miranda.Plugins.MirandaPlugin + Plugin() + { + .get instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.DefaultExceptionHandler::get_Plugin() + } // end of property DefaultExceptionHandler::Plugin +} // end of class Virtuoso.Miranda.Plugins.DefaultExceptionHandler + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton + extends [System.Windows.Forms]System.Windows.Forms.Button +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 65 (0x41) + .maxstack 2 + .line 29,29 : 9,31 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\CommandButton.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + .line 31,31 : 13,44 '' + IL_0006: ldarg.0 + IL_0007: ldc.i4.2 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_FlatStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FlatStyle) + .line 32,32 : 13,69 '' + IL_000d: ldarg.0 + IL_000e: ldc.i4.s 16 + IL_0010: call instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_ImageAlign(valuetype [System.Drawing]System.Drawing.ContentAlignment) + .line 33,33 : 13,53 '' + IL_0015: ldarg.0 + IL_0016: ldc.i4.s 16 + IL_0018: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_TextAlign(valuetype [System.Drawing]System.Drawing.ContentAlignment) + .line 34,34 : 13,67 '' + IL_001d: ldarg.0 + IL_001e: ldc.i4.4 + IL_001f: call instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_TextImageRelation(valuetype [System.Windows.Forms]System.Windows.Forms.TextImageRelation) + .line 35,35 : 13,43 '' + IL_0024: ldarg.0 + IL_0025: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_002a: ldc.i4.3 + IL_002b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_BorderSize(int32) + .line 36,36 : 13,77 '' + IL_0030: ldarg.0 + IL_0031: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_0036: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_GradientActiveCaption() + IL_003b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_BorderColor(valuetype [System.Drawing]System.Drawing.Color) + .line 37,37 : 9,10 '' + IL_0040: ret + } // end of method CommandButton::.ctor + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 81 (0x51) + .maxstack 2 + .line 41,41 : 13,34 '' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 45,45 : 13,83 '' + IL_0006: ldarg.0 + IL_0007: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_000c: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Control() + IL_0011: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_BorderColor(valuetype [System.Drawing]System.Drawing.Color) + .line 46,46 : 13,48 '' + IL_0016: ldarg.0 + IL_0017: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_001c: ldc.i4.2 + IL_001d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_BorderSize(int32) + .line 47,47 : 13,95 '' + IL_0022: ldarg.0 + IL_0023: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_0028: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_ButtonShadow() + IL_002d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_MouseDownBackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 48,48 : 13,98 '' + IL_0032: ldarg.0 + IL_0033: call instance class [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance [System.Windows.Forms]System.Windows.Forms.ButtonBase::get_FlatAppearance() + IL_0038: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_ButtonHighlight() + IL_003d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.FlatButtonAppearance::set_MouseOverBackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 49,49 : 13,66 '' + IL_0042: ldarg.0 + IL_0043: ldc.i4.0 + IL_0044: call instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_FlatStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FlatStyle) + .line 50,50 : 13,38 '' + IL_0049: ldarg.0 + IL_004a: ldc.i4.0 + IL_004b: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 52,52 : 9,10 '' + IL_0050: ret + } // end of method CommandButton::InitializeComponent + +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView + extends [System.Windows.Forms]System.Windows.Forms.ListView +{ + .field private class [System.Windows.Forms]System.Windows.Forms.ImageList ContactImages + .field private class [System]System.ComponentModel.IContainer components + .field private class [mscorlib]System.EventHandler`1 FilterContact + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 39,39 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\ContactListView.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.ListView::.ctor() + .line 41,41 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::InitializeComponent() + .line 42,42 : 9,10 '' + IL_000c: ret + } // end of method ContactListView::.ctor + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 149 (0x95) + .maxstack 3 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources) + .line 46,46 : 13,69 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void [System]System.ComponentModel.Container::.ctor() + IL_0006: stfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::components + .line 47,47 : 13,148 '' + IL_000b: ldtoken Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView + IL_0010: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0015: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_001a: stloc.0 + .line 48,48 : 13,86 '' + IL_001b: ldarg.0 + IL_001c: ldarg.0 + IL_001d: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::components + IL_0022: newobj instance void [System.Windows.Forms]System.Windows.Forms.ImageList::.ctor(class [System]System.ComponentModel.IContainer) + IL_0027: stfld class [System.Windows.Forms]System.Windows.Forms.ImageList Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::ContactImages + .line 49,49 : 13,34 '' + IL_002c: ldarg.0 + IL_002d: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 53,53 : 13,139 '' + IL_0032: ldarg.0 + IL_0033: ldfld class [System.Windows.Forms]System.Windows.Forms.ImageList Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::ContactImages + IL_0038: ldloc.0 + IL_0039: ldstr "ContactImages.ImageStream" + IL_003e: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0043: castclass [System.Windows.Forms]System.Windows.Forms.ImageListStreamer + IL_0048: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ImageList::set_ImageStream(class [System.Windows.Forms]System.Windows.Forms.ImageListStreamer) + .line 54,54 : 13,84 '' + IL_004d: ldarg.0 + IL_004e: ldfld class [System.Windows.Forms]System.Windows.Forms.ImageList Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::ContactImages + IL_0053: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0058: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ImageList::set_TransparentColor(valuetype [System.Drawing]System.Drawing.Color) + .line 55,55 : 13,64 '' + IL_005d: ldarg.0 + IL_005e: ldfld class [System.Windows.Forms]System.Windows.Forms.ImageList Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::ContactImages + IL_0063: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ImageList/ImageCollection [System.Windows.Forms]System.Windows.Forms.ImageList::get_Images() + IL_0068: ldc.i4.0 + IL_0069: ldstr "Contact" + IL_006e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ImageList/ImageCollection::SetKeyName(int32, + string) + .line 59,59 : 13,54 '' + IL_0073: ldarg.0 + IL_0074: ldarg.0 + IL_0075: ldfld class [System.Windows.Forms]System.Windows.Forms.ImageList Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::ContactImages + IL_007a: call instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_SmallImageList(class [System.Windows.Forms]System.Windows.Forms.ImageList) + .line 60,60 : 13,69 '' + IL_007f: ldarg.0 + IL_0080: ldc.i4.1 + IL_0081: call instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_Sorting(valuetype [System.Windows.Forms]System.Windows.Forms.SortOrder) + .line 61,61 : 13,56 '' + IL_0086: ldarg.0 + IL_0087: ldc.i4.3 + IL_0088: call instance void [System.Windows.Forms]System.Windows.Forms.ListView::set_View(valuetype [System.Windows.Forms]System.Windows.Forms.View) + .line 62,62 : 13,38 '' + IL_008d: ldarg.0 + IL_008e: ldc.i4.0 + IL_008f: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 64,64 : 9,10 '' + IL_0094: ret + } // end of method ContactListView::InitializeComponent + + .method public hidebysig specialname instance void + add_FilterContact(class [mscorlib]System.EventHandler`1 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler`1 V_0, + class [mscorlib]System.EventHandler`1 V_1, + class [mscorlib]System.EventHandler`1 V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass class [mscorlib]System.EventHandler`1 + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange>(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method ContactListView::add_FilterContact + + .method public hidebysig specialname instance void + remove_FilterContact(class [mscorlib]System.EventHandler`1 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler`1 V_0, + class [mscorlib]System.EventHandler`1 V_1, + class [mscorlib]System.EventHandler`1 V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass class [mscorlib]System.EventHandler`1 + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange>(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method ContactListView::remove_FilterContact + + .method family hidebysig newslot virtual + instance object CreateItemTag(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 78,78 : 13,28 '' + IL_0000: ldarg.1 + IL_0001: ret + } // end of method ContactListView::CreateItemTag + + .method family hidebysig newslot virtual + instance string CreateItemText(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + object tag) cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 83,83 : 13,39 '' + IL_0000: ldarg.1 + IL_0001: callvirt instance string [mscorlib]System.Object::ToString() + IL_0006: ret + } // end of method ContactListView::CreateItemText + + .method family hidebysig newslot virtual + instance int32 GetImageIndex(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + object tag) cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 88,88 : 13,22 '' + IL_0000: ldc.i4.0 + IL_0001: ret + } // end of method ContactListView::GetImageIndex + + .method public hidebysig newslot virtual + instance void LoadContacts() cil managed + { + // Code size 66 (0x42) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 contacts, + [1] class Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs e, + [2] int32 i) + .line 97,97 : 13,114 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaDatabase() + IL_000a: ldc.i4.0 + IL_000b: callvirt instance class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1 Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContacts(bool) + IL_0010: stloc.0 + .line 98,98 : 13,27 '' + IL_0011: ldarg.0 + IL_0012: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_0017: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::Clear() + .line 100,100 : 13,69 '' + IL_001c: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::.ctor() + IL_0021: stloc.1 + .line 102,102 : 18,28 '' + IL_0022: ldc.i4.0 + IL_0023: stloc.2 + IL_0024: br.s IL_0038 + + .line 103,103 : 17,47 '' + IL_0026: ldarg.0 + IL_0027: ldloc.0 + IL_0028: ldloc.2 + IL_0029: callvirt instance !0 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Item(int32) + IL_002e: ldloc.1 + IL_002f: call instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::InsertContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs) + .line 102,102 : 49,52 '' + IL_0034: ldloc.2 + IL_0035: ldc.i4.1 + IL_0036: add + IL_0037: stloc.2 + .line 102,102 : 29,47 '' + IL_0038: ldloc.2 + IL_0039: ldloc.0 + IL_003a: callvirt instance int32 class [mscorlib]System.Collections.ObjectModel.ReadOnlyCollection`1::get_Count() + IL_003f: blt.s IL_0026 + + .line 104,104 : 9,10 '' + IL_0041: ret + } // end of method ContactListView::LoadContacts + + .method public hidebysig newslot virtual + instance void InsertContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 108,108 : 13,42 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::InsertContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs) + .line 109,109 : 9,10 '' + IL_0008: ret + } // end of method ContactListView::InsertContact + + .method private hidebysig instance void + InsertContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact, + class Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs e) cil managed + { + // Code size 121 (0x79) + .maxstack 4 + .locals init ([0] object tag, + [1] class [System.Windows.Forms]System.Windows.Forms.ListViewItem item) + .line 113,113 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0014 + + .line 114,114 : 17,60 '' + IL_0009: ldstr "contact" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 116,116 : 13,52 '' + IL_0014: ldarg.2 + IL_0015: brfalse.s IL_0043 + + IL_0017: ldarg.0 + IL_0018: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_001d: brfalse.s IL_0043 + + .line 118,118 : 17,37 '' + IL_001f: ldarg.2 + IL_0020: ldarg.1 + IL_0021: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::set_Contact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + .line 119,119 : 17,32 '' + IL_0026: ldarg.2 + IL_0027: ldc.i4.0 + IL_0028: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::set_Skip(bool) + .line 121,121 : 17,40 '' + IL_002d: ldarg.0 + IL_002e: ldfld class [mscorlib]System.EventHandler`1 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FilterContact + IL_0033: ldarg.0 + IL_0034: ldarg.2 + IL_0035: callvirt instance void class [mscorlib]System.EventHandler`1::Invoke(object, + !0) + .line 123,123 : 17,28 '' + IL_003a: ldarg.2 + IL_003b: callvirt instance bool Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::get_Skip() + IL_0040: brfalse.s IL_0043 + + .line 124,124 : 21,28 '' + IL_0042: ret + + .line 127,127 : 13,49 '' + IL_0043: ldarg.0 + IL_0044: ldarg.1 + IL_0045: callvirt instance object Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemTag(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_004a: stloc.0 + .line 129,129 : 13,29 '' + IL_004b: ldloc.0 + IL_004c: brfalse.s IL_0078 + + .line 131,131 : 17,113 '' + IL_004e: ldarg.0 + IL_004f: ldarg.1 + IL_0050: ldloc.0 + IL_0051: callvirt instance string Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemText(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + object) + IL_0056: ldarg.0 + IL_0057: ldarg.1 + IL_0058: ldloc.0 + IL_0059: callvirt instance int32 Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::GetImageIndex(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + object) + IL_005e: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::.ctor(string, + int32) + IL_0063: stloc.1 + .line 132,132 : 17,32 '' + IL_0064: ldloc.1 + IL_0065: ldloc.0 + IL_0066: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListViewItem::set_Tag(object) + .line 134,134 : 17,33 '' + IL_006b: ldarg.0 + IL_006c: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_0071: ldloc.1 + IL_0072: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::Add(class [System.Windows.Forms]System.Windows.Forms.ListViewItem) + IL_0077: pop + .line 136,136 : 9,10 '' + IL_0078: ret + } // end of method ContactListView::InsertContact + + .method public hidebysig newslot virtual + instance bool RemoveContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 81 (0x51) + .maxstack 3 + .locals init ([0] int32 index, + [1] int32 i) + .line 140,140 : 13,28 '' + IL_0000: ldc.i4.m1 + IL_0001: stloc.0 + .line 142,142 : 18,28 '' + IL_0002: ldc.i4.0 + IL_0003: stloc.1 + IL_0004: br.s IL_002b + + .line 143,143 : 17,65 '' + IL_0006: ldarg.0 + IL_0007: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_000c: ldloc.1 + IL_000d: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::get_Item(int32) + IL_0012: callvirt instance object [System.Windows.Forms]System.Windows.Forms.ListViewItem::get_Tag() + IL_0017: ldarg.0 + IL_0018: ldarg.1 + IL_0019: callvirt instance object Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemTag(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_001e: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_0023: brfalse.s IL_0027 + + .line 144,144 : 21,31 '' + IL_0025: ldloc.1 + IL_0026: stloc.0 + .line 142,142 : 61,64 '' + IL_0027: ldloc.1 + IL_0028: ldc.i4.1 + IL_0029: add + IL_002a: stloc.1 + .line 142,142 : 29,59 '' + IL_002b: ldloc.0 + IL_002c: ldc.i4.m1 + IL_002d: bne.un.s IL_003d + + IL_002f: ldloc.1 + IL_0030: ldarg.0 + IL_0031: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_0036: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::get_Count() + IL_003b: blt.s IL_0006 + + .line 146,146 : 13,29 '' + IL_003d: ldloc.0 + IL_003e: ldc.i4.m1 + IL_003f: beq.s IL_004f + + .line 148,148 : 17,39 '' + IL_0041: ldarg.0 + IL_0042: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_0047: ldloc.0 + IL_0048: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::RemoveAt(int32) + .line 149,149 : 17,29 '' + IL_004d: ldc.i4.1 + IL_004e: ret + + .line 152,152 : 17,30 '' + IL_004f: ldc.i4.0 + IL_0050: ret + } // end of method ContactListView::RemoveContact + + .method public hidebysig newslot virtual + instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem + FindContactItem(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 102 (0x66) + .maxstack 5 + .locals init ([0] object tag, + [1] class [System.Windows.Forms]System.Windows.Forms.ListViewItem item) + .line 157,157 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0014 + + .line 158,158 : 17,60 '' + IL_0009: ldstr "contact" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 160,160 : 13,49 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: callvirt instance object Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemTag(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_001b: stloc.0 + .line 162,162 : 13,38 '' + IL_001c: ldnull + IL_001d: stloc.1 + .line 164,164 : 13,33 '' + IL_001e: ldarg.0 + IL_001f: call instance class [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection [System.Windows.Forms]System.Windows.Forms.ListView::get_Items() + IL_0024: callvirt instance int32 [System.Windows.Forms]System.Windows.Forms.ListView/ListViewItemCollection::get_Count() + IL_0029: ldc.i4.0 + IL_002a: ble.s IL_003e + + .line 165,165 : 17,88 '' + IL_002c: ldarg.0 + IL_002d: ldarg.0 + IL_002e: ldarg.1 + IL_002f: ldloc.0 + IL_0030: callvirt instance string Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemText(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + object) + IL_0035: ldc.i4.0 + IL_0036: ldc.i4.0 + IL_0037: ldc.i4.0 + IL_0038: call instance class [System.Windows.Forms]System.Windows.Forms.ListViewItem [System.Windows.Forms]System.Windows.Forms.ListView::FindItemWithText(string, + bool, + int32, + bool) + IL_003d: stloc.1 + .line 167,167 : 13,30 '' + IL_003e: ldloc.1 + IL_003f: brtrue.s IL_0043 + + .line 168,168 : 17,29 '' + IL_0041: ldnull + IL_0042: ret + + .line 170,170 : 13,96 '' + IL_0043: ldloc.1 + IL_0044: callvirt instance object [System.Windows.Forms]System.Windows.Forms.ListViewItem::get_Tag() + IL_0049: ldloc.0 + IL_004a: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_004f: brtrue.s IL_0062 + + IL_0051: ldloc.0 + IL_0052: brfalse.s IL_0064 + + IL_0054: ldloc.0 + IL_0055: ldloc.1 + IL_0056: callvirt instance object [System.Windows.Forms]System.Windows.Forms.ListViewItem::get_Tag() + IL_005b: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_0060: brfalse.s IL_0064 + + .line 171,171 : 17,29 '' + IL_0062: ldloc.1 + IL_0063: ret + + .line 173,173 : 17,29 '' + IL_0064: ldnull + IL_0065: ret + } // end of method ContactListView::FindContactItem + + .event class [mscorlib]System.EventHandler`1 FilterContact + { + .removeon instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::remove_FilterContact(class [mscorlib]System.EventHandler`1) + .addon instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::add_FilterContact(class [mscorlib]System.EventHandler`1) + } // end of event ContactListView::FilterContact +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs + extends [mscorlib]System.EventArgs +{ + .field private class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact + .field private bool skip + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 181,181 : 9,40 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.EventArgs::.ctor() + .line 181,181 : 43,44 '' + IL_0006: ret + } // end of method ContactFilterEventArgs::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_Contact() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 186,186 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::contact + IL_0006: ret + } // end of method ContactFilterEventArgs::get_Contact + + .method assembly hidebysig specialname + instance void set_Contact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 187,187 : 28,44 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::contact + .line 187,187 : 45,46 '' + IL_0007: ret + } // end of method ContactFilterEventArgs::set_Contact + + .method public hidebysig specialname instance bool + get_Skip() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 193,193 : 19,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::skip + IL_0006: ret + } // end of method ContactFilterEventArgs::get_Skip + + .method public hidebysig specialname instance void + set_Skip(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 194,194 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::skip + .line 194,194 : 33,34 '' + IL_0007: ret + } // end of method ContactFilterEventArgs::set_Skip + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + Contact() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::get_Contact() + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::set_Contact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + } // end of property ContactFilterEventArgs::Contact + .property instance bool Skip() + { + .get instance bool Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::get_Skip() + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::set_Skip(bool) + } // end of property ContactFilterEventArgs::Skip +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox + extends [System.Windows.Forms]System.Windows.Forms.TextBox +{ + .field private static literal int32 WM_SETFOCUS = int32(0x00000007) + .field private static literal int32 WM_KILLFOCUS = int32(0x00000008) + .field private static literal int32 WM_ERASEBKGND = int32(0x0000000E) + .field private static literal int32 WM_PAINT = int32(0x0000000F) + .field private bool _focusSelect + .field private bool _drawPrompt + .field private string _bannerText + .field private valuetype [System.Drawing]System.Drawing.Color _bannerColor + .field private class [System.Drawing]System.Drawing.Font _bannerFont + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 55 (0x37) + .maxstack 8 + .line 26,26 : 9,42 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\CueBannerTextBox.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_focusSelect + .line 27,27 : 9,41 '' + IL_0007: ldarg.0 + IL_0008: ldc.i4.1 + IL_0009: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_drawPrompt + .line 28,28 : 9,51 '' + IL_000e: ldarg.0 + IL_000f: ldsfld string [mscorlib]System.String::Empty + IL_0014: stfld string Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerText + .line 29,29 : 9,60 '' + IL_0019: ldarg.0 + IL_001a: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_GrayText() + IL_001f: stfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerColor + .line 36,36 : 9,34 '' + IL_0024: ldarg.0 + IL_0025: call instance void [System.Windows.Forms]System.Windows.Forms.TextBox::.ctor() + .line 39,39 : 13,41 '' + IL_002a: ldarg.0 + IL_002b: ldarg.0 + IL_002c: callvirt instance class [System.Drawing]System.Drawing.Font [System.Windows.Forms]System.Windows.Forms.Control::get_Font() + IL_0031: call instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerFont(class [System.Drawing]System.Drawing.Font) + .line 40,40 : 9,10 '' + IL_0036: ret + } // end of method CueBannerTextBox::.ctor + + .method public hidebysig specialname instance string + get_BannerText() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 48,48 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerText + IL_0006: ret + } // end of method CueBannerTextBox::get_BannerText + + .method public hidebysig specialname instance void + set_BannerText(string 'value') cil managed + { + // Code size 29 (0x1d) + .maxstack 8 + .line 49,49 : 19,37 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000a + + .line 49,49 : 38,59 '' + IL_0003: ldsfld string [mscorlib]System.String::Empty + IL_0008: starg.s 'value' + .line 49,49 : 60,87 '' + IL_000a: ldarg.0 + IL_000b: ldarg.1 + IL_000c: callvirt instance string [mscorlib]System.String::Trim() + IL_0011: stfld string Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerText + .line 49,49 : 88,106 '' + IL_0016: ldarg.0 + IL_0017: call instance void [System.Windows.Forms]System.Windows.Forms.Control::Invalidate() + .line 49,49 : 107,108 '' + IL_001c: ret + } // end of method CueBannerTextBox::set_BannerText + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Color + get_BannerForeColor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 58,58 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerColor + IL_0006: ret + } // end of method CueBannerTextBox::get_BannerForeColor + + .method public hidebysig specialname instance void + set_BannerForeColor(valuetype [System.Drawing]System.Drawing.Color 'value') cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 59,59 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerColor + .line 59,59 : 41,59 '' + IL_0007: ldarg.0 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Control::Invalidate() + .line 59,59 : 60,61 '' + IL_000d: ret + } // end of method CueBannerTextBox::set_BannerForeColor + + .method public hidebysig specialname instance class [System.Drawing]System.Drawing.Font + get_BannerFont() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 68,68 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerFont + IL_0006: ret + } // end of method CueBannerTextBox::get_BannerFont + + .method public hidebysig specialname instance void + set_BannerFont(class [System.Drawing]System.Drawing.Font 'value') cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 69,69 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerFont + .line 69,69 : 40,58 '' + IL_0007: ldarg.0 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Control::Invalidate() + .line 69,69 : 59,60 '' + IL_000d: ret + } // end of method CueBannerTextBox::set_BannerFont + + .method public hidebysig specialname instance bool + get_FocusSelect() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 78,78 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_focusSelect + IL_0006: ret + } // end of method CueBannerTextBox::get_FocusSelect + + .method public hidebysig specialname instance void + set_FocusSelect(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 79,79 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_focusSelect + .line 79,79 : 41,42 '' + IL_0007: ret + } // end of method CueBannerTextBox::set_FocusSelect + + .method family hidebysig virtual instance void + OnEnter(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 36 (0x24) + .maxstack 8 + .line 88,88 : 13,54 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_0006: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_000b: ldc.i4.0 + IL_000c: ble.s IL_001c + + IL_000e: ldarg.0 + IL_000f: ldfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_focusSelect + IL_0014: brfalse.s IL_001c + + .line 89,89 : 17,34 '' + IL_0016: ldarg.0 + IL_0017: call instance void [System.Windows.Forms]System.Windows.Forms.TextBoxBase::SelectAll() + .line 91,91 : 13,29 '' + IL_001c: ldarg.0 + IL_001d: ldarg.1 + IL_001e: call instance void [System.Windows.Forms]System.Windows.Forms.Control::OnEnter(class [mscorlib]System.EventArgs) + .line 92,92 : 9,10 '' + IL_0023: ret + } // end of method CueBannerTextBox::OnEnter + + .method family hidebysig virtual instance void + OnTextAlignChanged(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 100,100 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void [System.Windows.Forms]System.Windows.Forms.TextBox::OnTextAlignChanged(class [mscorlib]System.EventArgs) + .line 101,101 : 13,31 '' + IL_0007: ldarg.0 + IL_0008: call instance void [System.Windows.Forms]System.Windows.Forms.Control::Invalidate() + .line 102,102 : 9,10 '' + IL_000d: ret + } // end of method CueBannerTextBox::OnTextAlignChanged + + .method family hidebysig virtual instance void + OnPaint(class [System.Windows.Forms]System.Windows.Forms.PaintEventArgs e) cil managed + { + // Code size 41 (0x29) + .maxstack 8 + .line 111,111 : 13,29 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void [System.Windows.Forms]System.Windows.Forms.Control::OnPaint(class [System.Windows.Forms]System.Windows.Forms.PaintEventArgs) + .line 114,114 : 13,54 '' + IL_0007: ldarg.0 + IL_0008: ldfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_drawPrompt + IL_000d: brfalse.s IL_0028 + + IL_000f: ldarg.0 + IL_0010: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_0015: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_001a: brtrue.s IL_0028 + + .line 115,115 : 17,44 '' + IL_001c: ldarg.0 + IL_001d: ldarg.1 + IL_001e: callvirt instance class [System.Drawing]System.Drawing.Graphics [System.Windows.Forms]System.Windows.Forms.PaintEventArgs::get_Graphics() + IL_0023: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::DrawTextPrompt(class [System.Drawing]System.Drawing.Graphics) + .line 116,116 : 9,10 '' + IL_0028: ret + } // end of method CueBannerTextBox::OnPaint + + .method family hidebysig virtual instance void + WndProc(valuetype [System.Windows.Forms]System.Windows.Forms.Message& m) cil managed + { + // Code size 95 (0x5f) + .maxstack 2 + .locals init ([0] int32 CS$0$0000) + .line 128,128 : 13,27 '' + IL_0000: ldarg.1 + IL_0001: call instance int32 [System.Windows.Forms]System.Windows.Forms.Message::get_Msg() + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: ldc.i4.7 + IL_0009: sub + IL_000a: switch ( + IL_0019, + IL_0022) + IL_0017: br.s IL_0029 + + .line 131,131 : 21,41 '' + IL_0019: ldarg.0 + IL_001a: ldc.i4.0 + IL_001b: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_drawPrompt + .line 132,132 : 21,27 '' + IL_0020: br.s IL_0029 + + .line 135,135 : 21,40 '' + IL_0022: ldarg.0 + IL_0023: ldc.i4.1 + IL_0024: stfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_drawPrompt + .line 139,139 : 13,33 '' + IL_0029: ldarg.0 + IL_002a: ldarg.1 + IL_002b: call instance void [System.Windows.Forms]System.Windows.Forms.TextBox::WndProc(valuetype [System.Windows.Forms]System.Windows.Forms.Message&) + .line 142,142 : 13,118 '' + IL_0030: ldarg.1 + IL_0031: call instance int32 [System.Windows.Forms]System.Windows.Forms.Message::get_Msg() + IL_0036: ldc.i4.s 15 + IL_0038: bne.un.s IL_005e + + IL_003a: ldarg.0 + IL_003b: ldfld bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_drawPrompt + IL_0040: brfalse.s IL_005e + + IL_0042: ldarg.0 + IL_0043: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_0048: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_004d: brtrue.s IL_005e + + IL_004f: ldarg.0 + IL_0050: ldc.i4.2 + IL_0051: call instance bool [System.Windows.Forms]System.Windows.Forms.Control::GetStyle(valuetype [System.Windows.Forms]System.Windows.Forms.ControlStyles) + IL_0056: brtrue.s IL_005e + + .line 143,143 : 17,34 '' + IL_0058: ldarg.0 + IL_0059: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::DrawTextPrompt() + .line 144,144 : 9,10 '' + IL_005e: ret + } // end of method CueBannerTextBox::WndProc + + .method family hidebysig newslot virtual + instance void DrawTextPrompt() cil managed + { + // Code size 27 (0x1b) + .maxstack 2 + .locals init ([0] class [System.Drawing]System.Drawing.Graphics g) + .line 152,152 : 20,54 '' + IL_0000: ldarg.0 + IL_0001: call instance class [System.Drawing]System.Drawing.Graphics [System.Windows.Forms]System.Windows.Forms.Control::CreateGraphics() + IL_0006: stloc.0 + .line 154,154 : 17,35 '' + .try + { + IL_0007: ldarg.0 + IL_0008: ldloc.0 + IL_0009: callvirt instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::DrawTextPrompt(class [System.Drawing]System.Drawing.Graphics) + IL_000e: leave.s IL_001a + + } // end .try + finally + { + IL_0010: ldloc.0 + IL_0011: brfalse.s IL_0019 + + IL_0013: ldloc.0 + IL_0014: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0019: endfinally + .line 156,156 : 9,10 '' + } // end handler + IL_001a: ret + } // end of method CueBannerTextBox::DrawTextPrompt + + .method family hidebysig newslot virtual + instance void DrawTextPrompt(class [System.Drawing]System.Drawing.Graphics g) cil managed + { + // Code size 114 (0x72) + .maxstack 7 + .locals init ([0] valuetype [System.Windows.Forms]System.Windows.Forms.TextFormatFlags 'flags', + [1] valuetype [System.Drawing]System.Drawing.Rectangle rect, + [2] valuetype [System.Windows.Forms]System.Windows.Forms.HorizontalAlignment CS$0$0000) + .line 164,164 : 13,115 '' + IL_0000: ldc.i4 0x10008000 + IL_0005: stloc.0 + .line 165,165 : 13,51 '' + IL_0006: ldarg.0 + IL_0007: call instance valuetype [System.Drawing]System.Drawing.Rectangle [System.Windows.Forms]System.Windows.Forms.Control::get_ClientRectangle() + IL_000c: stloc.1 + .line 169,169 : 13,36 '' + IL_000d: ldarg.0 + IL_000e: call instance valuetype [System.Windows.Forms]System.Windows.Forms.HorizontalAlignment [System.Windows.Forms]System.Windows.Forms.TextBox::get_TextAlign() + IL_0013: stloc.2 + IL_0014: ldloc.2 + IL_0015: switch ( + IL_0037, + IL_0044, + IL_0028) + IL_0026: br.s IL_0051 + + .line 172,172 : 21,70 '' + IL_0028: ldloc.0 + IL_0029: ldc.i4.1 + IL_002a: or + IL_002b: stloc.0 + .line 173,173 : 21,39 '' + IL_002c: ldloca.s rect + IL_002e: ldc.i4.0 + IL_002f: ldc.i4.1 + IL_0030: call instance void [System.Drawing]System.Drawing.Rectangle::Offset(int32, + int32) + .line 174,174 : 21,27 '' + IL_0035: br.s IL_0051 + + .line 176,176 : 21,58 '' + IL_0037: ldloc.0 + IL_0038: stloc.0 + .line 177,177 : 21,39 '' + IL_0039: ldloca.s rect + IL_003b: ldc.i4.1 + IL_003c: ldc.i4.1 + IL_003d: call instance void [System.Drawing]System.Drawing.Rectangle::Offset(int32, + int32) + .line 178,178 : 21,27 '' + IL_0042: br.s IL_0051 + + .line 180,180 : 21,59 '' + IL_0044: ldloc.0 + IL_0045: ldc.i4.2 + IL_0046: or + IL_0047: stloc.0 + .line 181,181 : 21,39 '' + IL_0048: ldloca.s rect + IL_004a: ldc.i4.0 + IL_004b: ldc.i4.1 + IL_004c: call instance void [System.Drawing]System.Drawing.Rectangle::Offset(int32, + int32) + .line 186,186 : 13,107 '' + IL_0051: ldarg.1 + IL_0052: ldarg.0 + IL_0053: ldfld string Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerText + IL_0058: ldarg.0 + IL_0059: ldfld class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerFont + IL_005e: ldloc.1 + IL_005f: ldarg.0 + IL_0060: ldfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::_bannerColor + IL_0065: ldarg.0 + IL_0066: callvirt instance valuetype [System.Drawing]System.Drawing.Color [System.Windows.Forms]System.Windows.Forms.Control::get_BackColor() + IL_006b: ldloc.0 + IL_006c: call void [System.Windows.Forms]System.Windows.Forms.TextRenderer::DrawText(class [System.Drawing]System.Drawing.IDeviceContext, + string, + class [System.Drawing]System.Drawing.Font, + valuetype [System.Drawing]System.Drawing.Rectangle, + valuetype [System.Drawing]System.Drawing.Color, + valuetype [System.Drawing]System.Drawing.Color, + valuetype [System.Windows.Forms]System.Windows.Forms.TextFormatFlags) + .line 187,187 : 9,10 '' + IL_0071: ret + } // end of method CueBannerTextBox::DrawTextPrompt + + .property instance string BannerText() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 00 00 00 00 00 00 ) + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.DescriptionAttribute::.ctor(string) = ( 01 00 46 54 68 65 20 70 72 6F 6D 70 74 20 74 65 // ..FThe prompt te + 78 74 20 74 6F 20 64 69 73 70 6C 61 79 20 77 68 // xt to display wh + 65 6E 20 74 68 65 72 65 20 69 73 20 6E 6F 74 68 // en there is noth + 69 6E 67 20 69 6E 20 74 68 65 20 54 65 78 74 20 // ing in the Text + 70 72 6F 70 65 72 74 79 2E 00 00 ) // property... + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerText(string) + .get instance string Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_BannerText() + } // end of property CueBannerTextBox::BannerText + .property instance valuetype [System.Drawing]System.Drawing.Color + BannerForeColor() + { + .custom instance void [System]System.ComponentModel.DescriptionAttribute::.ctor(string) = ( 01 00 34 54 68 65 20 46 6F 72 65 43 6F 6C 6F 72 // ..4The ForeColor + 20 74 6F 20 75 73 65 20 77 68 65 6E 20 64 69 73 // to use when dis + 70 6C 61 79 69 6E 67 20 74 68 65 20 50 72 6F 6D // playing the Prom + 70 74 54 65 78 74 2E 00 00 ) // ptText... + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 00 00 00 00 00 00 ) + .get instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_BannerForeColor() + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerForeColor(valuetype [System.Drawing]System.Drawing.Color) + } // end of property CueBannerTextBox::BannerForeColor + .property instance class [System.Drawing]System.Drawing.Font + BannerFont() + { + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 0A 41 70 70 65 61 72 61 6E 63 65 00 00 ) // ...Appearance.. + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 00 00 00 00 00 00 ) + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.DescriptionAttribute::.ctor(string) = ( 01 00 2F 54 68 65 20 46 6F 6E 74 20 74 6F 20 75 // ../The Font to u + 73 65 20 77 68 65 6E 20 64 69 73 70 6C 61 79 69 // se when displayi + 6E 67 20 74 68 65 20 50 72 6F 6D 70 74 54 65 78 // ng the PromptTex + 74 2E 00 00 ) // t... + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerFont(class [System.Drawing]System.Drawing.Font) + .get instance class [System.Drawing]System.Drawing.Font Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_BannerFont() + } // end of property CueBannerTextBox::BannerFont + .property instance bool FocusSelect() + { + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 01 00 00 ) + .custom instance void [System]System.ComponentModel.DescriptionAttribute::.ctor(string) = ( 01 00 3E 41 75 74 6F 6D 61 74 69 63 61 6C 6C 79 // ..>Automatically + 20 73 65 6C 65 63 74 20 74 68 65 20 74 65 78 74 // select the text + 20 77 68 65 6E 20 63 6F 6E 74 72 6F 6C 20 72 65 // when control re + 63 65 69 76 65 73 20 74 68 65 20 66 6F 63 75 73 // ceives the focus + 2E 00 00 ) // ... + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 00 00 00 00 00 00 ) + .custom instance void [System]System.ComponentModel.CategoryAttribute::.ctor(string) = ( 01 00 08 42 65 68 61 76 69 6F 72 00 00 ) // ...Behavior.. + .get instance bool Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_FocusSelect() + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_FocusSelect(bool) + } // end of property CueBannerTextBox::FocusSelect +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel + extends [System.Windows.Forms]System.Windows.Forms.Panel +{ + .custom instance void [System.Drawing]System.Drawing.ToolboxBitmapAttribute::.ctor(class [mscorlib]System.Type) = ( 01 00 73 53 79 73 74 65 6D 2E 57 69 6E 64 6F 77 // ..sSystem.Window + 73 2E 46 6F 72 6D 73 2E 50 61 6E 65 6C 2C 20 53 // s.Forms.Panel, S + 79 73 74 65 6D 2E 57 69 6E 64 6F 77 73 2E 46 6F // ystem.Windows.Fo + 72 6D 73 2C 20 56 65 72 73 69 6F 6E 3D 32 2E 30 // rms, Version=2.0 + 2E 30 2E 30 2C 20 43 75 6C 74 75 72 65 3D 6E 65 // .0.0, Culture=ne + 75 74 72 61 6C 2C 20 50 75 62 6C 69 63 4B 65 79 // utral, PublicKey + 54 6F 6B 65 6E 3D 62 37 37 61 35 63 35 36 31 39 // Token=b77a5c5619 + 33 34 65 30 38 39 00 00 ) // 34e089.. + .field private valuetype [System.Drawing]System.Drawing.Color gradientColor + .field private float32 rotation + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 30,30 : 9,31 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\GradientPanel.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Panel::.ctor() + .line 30,30 : 34,35 '' + IL_0006: ret + } // end of method GradientPanel::.ctor + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Color + get_GradientColor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 35,35 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::gradientColor + IL_0006: ret + } // end of method GradientPanel::get_GradientColor + + .method public hidebysig specialname instance void + set_GradientColor(valuetype [System.Drawing]System.Drawing.Color 'value') cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 36,36 : 19,41 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::gradientColor + .line 36,36 : 42,52 '' + IL_0007: ldarg.0 + IL_0008: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::Refresh() + .line 36,36 : 53,54 '' + IL_000d: ret + } // end of method GradientPanel::set_GradientColor + + .method public hidebysig specialname instance float32 + get_Rotation() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 42,42 : 19,35 '' + IL_0000: ldarg.0 + IL_0001: ldfld float32 Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::rotation + IL_0006: ret + } // end of method GradientPanel::get_Rotation + + .method public hidebysig specialname instance void + set_Rotation(float32 'value') cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 43,43 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld float32 Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::rotation + .line 43,43 : 37,47 '' + IL_0007: ldarg.0 + IL_0008: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::Refresh() + .line 43,43 : 48,49 '' + IL_000d: ret + } // end of method GradientPanel::set_Rotation + + .method family hidebysig virtual instance void + OnPaint(class [System.Windows.Forms]System.Windows.Forms.PaintEventArgs e) cil managed + { + // Code size 85 (0x55) + .maxstack 4 + .locals init ([0] class [System.Drawing]System.Drawing.Drawing2D.LinearGradientBrush brush, + [1] valuetype [System.Drawing]System.Drawing.Rectangle CS$0$0000) + .line 48,48 : 13,41 '' + IL_0000: ldarg.1 + IL_0001: callvirt instance valuetype [System.Drawing]System.Drawing.Rectangle [System.Windows.Forms]System.Windows.Forms.PaintEventArgs::get_ClipRectangle() + IL_0006: stloc.1 + IL_0007: ldloca.s CS$0$0000 + IL_0009: call instance bool [System.Drawing]System.Drawing.Rectangle::get_IsEmpty() + IL_000e: brfalse.s IL_0011 + + .line 48,48 : 42,49 '' + IL_0010: ret + + .line 50,50 : 20,124 '' + IL_0011: ldarg.0 + IL_0012: call instance valuetype [System.Drawing]System.Drawing.Rectangle [System.Windows.Forms]System.Windows.Forms.Control::get_ClientRectangle() + IL_0017: ldarg.0 + IL_0018: callvirt instance valuetype [System.Drawing]System.Drawing.Color [System.Windows.Forms]System.Windows.Forms.Control::get_BackColor() + IL_001d: ldarg.0 + IL_001e: call instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_GradientColor() + IL_0023: ldarg.0 + IL_0024: call instance float32 Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_Rotation() + IL_0029: newobj instance void [System.Drawing]System.Drawing.Drawing2D.LinearGradientBrush::.ctor(valuetype [System.Drawing]System.Drawing.Rectangle, + valuetype [System.Drawing]System.Drawing.Color, + valuetype [System.Drawing]System.Drawing.Color, + float32) + IL_002e: stloc.0 + .line 51,51 : 17,66 '' + .try + { + IL_002f: ldarg.1 + IL_0030: callvirt instance class [System.Drawing]System.Drawing.Graphics [System.Windows.Forms]System.Windows.Forms.PaintEventArgs::get_Graphics() + IL_0035: ldloc.0 + IL_0036: ldarg.0 + IL_0037: call instance valuetype [System.Drawing]System.Drawing.Rectangle [System.Windows.Forms]System.Windows.Forms.Control::get_ClientRectangle() + IL_003c: callvirt instance void [System.Drawing]System.Drawing.Graphics::FillRectangle(class [System.Drawing]System.Drawing.Brush, + valuetype [System.Drawing]System.Drawing.Rectangle) + IL_0041: leave.s IL_004d + + } // end .try + finally + { + IL_0043: ldloc.0 + IL_0044: brfalse.s IL_004c + + IL_0046: ldloc.0 + IL_0047: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_004c: endfinally + .line 53,53 : 13,29 '' + } // end handler + IL_004d: ldarg.0 + IL_004e: ldarg.1 + IL_004f: call instance void [System.Windows.Forms]System.Windows.Forms.Control::OnPaint(class [System.Windows.Forms]System.Windows.Forms.PaintEventArgs) + .line 54,54 : 9,10 '' + IL_0054: ret + } // end of method GradientPanel::OnPaint + + .property instance valuetype [System.Drawing]System.Drawing.Color + GradientColor() + { + .get instance valuetype [System.Drawing]System.Drawing.Color Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_GradientColor() + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor(valuetype [System.Drawing]System.Drawing.Color) + } // end of property GradientPanel::GradientColor + .property instance float32 Rotation() + { + .set instance void Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_Rotation(float32) + .get instance float32 Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_Rotation() + } // end of property GradientPanel::Rotation +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem + extends [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem +{ + .field private static initonly class [mscorlib]System.Random HandleGenerator + .field private int32 handle + .field private string service + .field private string popUpMenu + .method public hidebysig specialname rtspecialname + instance void .ctor(string text, + string popUpMenu, + string service, + class [System.Drawing]System.Drawing.Image image) cil managed + { + // Code size 125 (0x7d) + .maxstack 4 + .locals init ([0] int32 CS$0$0000, + [1] int32 CS$0$0001) + .line 40,40 : 9,95 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\ManagedMainMenuItem.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::.ctor() + .line 42,42 : 13,44 '' + IL_0006: ldarg.1 + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: brfalse.s IL_0019 + + .line 42,42 : 45,85 '' + IL_000e: ldstr "text" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 43,43 : 13,47 '' + IL_0019: ldarg.3 + IL_001a: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_001f: brfalse.s IL_002c + + .line 43,43 : 48,91 '' + IL_0021: ldstr "service" + IL_0026: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002b: throw + + .line 45,45 : 13,70 '' + IL_002c: ldarg.0 + IL_002d: ldarg.0 + IL_002e: ldsfld class [mscorlib]System.Random Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::HandleGenerator + IL_0033: callvirt instance int32 [mscorlib]System.Random::Next() + IL_0038: dup + IL_0039: stloc.0 + IL_003a: stfld int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::handle + IL_003f: ldloc.0 + IL_0040: stloc.1 + IL_0041: ldloca.s CS$0$0001 + IL_0043: call instance string [mscorlib]System.Int32::ToString() + IL_0048: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Name(string) + .line 47,47 : 13,30 '' + IL_004d: ldarg.0 + IL_004e: ldarg.1 + IL_004f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Text(string) + .line 48,48 : 13,40 '' + IL_0054: ldarg.0 + IL_0055: ldarg.2 + IL_0056: stfld string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::popUpMenu + .line 49,49 : 13,36 '' + IL_005b: ldarg.0 + IL_005c: ldarg.3 + IL_005d: stfld string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::service + .line 50,50 : 13,32 '' + IL_0062: ldarg.0 + IL_0063: ldarg.s image + IL_0065: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Image(class [System.Drawing]System.Drawing.Image) + .line 52,52 : 13,71 '' + IL_006a: ldarg.0 + IL_006b: ldarg.0 + IL_006c: ldftn instance void Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::ManagedMainMenuItem_Click(object, + class [mscorlib]System.EventArgs) + IL_0072: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0077: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::add_Click(class [mscorlib]System.EventHandler) + .line 53,53 : 9,10 '' + IL_007c: ret + } // end of method ManagedMainMenuItem::.ctor + + .method public hidebysig specialname instance string + get_PopUpMenu() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 61,61 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::popUpMenu + IL_0006: ret + } // end of method ManagedMainMenuItem::get_PopUpMenu + + .method public hidebysig specialname instance string + get_Service() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 66,66 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::service + IL_0006: ret + } // end of method ManagedMainMenuItem::get_Service + + .method public hidebysig specialname instance int32 + get_Handle() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 71,71 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::handle + IL_0006: ret + } // end of method ManagedMainMenuItem::get_Handle + + .method private hidebysig instance void + ManagedMainMenuItem_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 80,80 : 13,57 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldarg.0 + IL_0006: ldfld string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::service + IL_000b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string) + IL_0010: pop + .line 81,81 : 9,10 '' + IL_0011: ret + } // end of method ManagedMainMenuItem::ManagedMainMenuItem_Click + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 31,31 : 9,71 '' + IL_0000: newobj instance void [mscorlib]System.Random::.ctor() + IL_0005: stsfld class [mscorlib]System.Random Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::HandleGenerator + IL_000a: ret + } // end of method ManagedMainMenuItem::.cctor + + .property instance string PopUpMenu() + { + .get instance string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_PopUpMenu() + } // end of property ManagedMainMenuItem::PopUpMenu + .property instance string Service() + { + .get instance string Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_Service() + } // end of property ManagedMainMenuItem::Service + .property instance int32 Handle() + { + .get instance int32 Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_Handle() + } // end of property ManagedMainMenuItem::Handle +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu + extends [System.Windows.Forms]System.Windows.Forms.ContextMenuStrip +{ + .field private class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem ManagePluginsITEM + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 40,40 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\TrayContextMenu.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.ContextMenuStrip::.ctor() + .line 42,42 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::InitializeComponent() + .line 43,43 : 9,10 '' + IL_000c: ret + } // end of method TrayContextMenu::.ctor + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 193 (0xc1) + .maxstack 4 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources, + [1] class [System.Windows.Forms]System.Windows.Forms.ToolStripItem[] CS$0$0000) + .line 51,51 : 13,148 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_000f: stloc.0 + .line 52,52 : 13,83 '' + IL_0010: ldarg.0 + IL_0011: newobj instance void [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem::.ctor() + IL_0016: stfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + .line 53,53 : 13,34 '' + IL_001b: ldarg.0 + IL_001c: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 57,57 : 13,117 '' + IL_0021: ldarg.0 + IL_0022: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_0027: ldloc.0 + IL_0028: ldstr "ManagePluginsITEM.Image" + IL_002d: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0032: castclass [System.Drawing]System.Drawing.Image + IL_0037: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Image(class [System.Drawing]System.Drawing.Image) + .line 58,58 : 13,63 '' + IL_003c: ldarg.0 + IL_003d: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_0042: ldstr "ManagePluginsITEM" + IL_0047: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Name(string) + .line 59,59 : 13,76 '' + IL_004c: ldarg.0 + IL_004d: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_0052: ldc.i4.s 111 + IL_0054: ldc.i4.s 22 + IL_0056: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_005b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 60,60 : 13,53 '' + IL_0060: ldarg.0 + IL_0061: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_0066: ldstr "Options" + IL_006b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::set_Text(string) + .line 61,61 : 13,99 '' + IL_0070: ldarg.0 + IL_0071: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_0076: ldarg.0 + IL_0077: ldftn instance void Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM_Click(object, + class [mscorlib]System.EventArgs) + IL_007d: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0082: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItem::add_Click(class [mscorlib]System.EventHandler) + .line 65,66 : 13,38 '' + IL_0087: ldarg.0 + IL_0088: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection [System.Windows.Forms]System.Windows.Forms.ToolStrip::get_Items() + IL_008d: ldc.i4.1 + IL_008e: newarr [System.Windows.Forms]System.Windows.Forms.ToolStripItem + IL_0093: stloc.1 + IL_0094: ldloc.1 + IL_0095: ldc.i4.0 + IL_0096: ldarg.0 + IL_0097: ldfld class [System.Windows.Forms]System.Windows.Forms.ToolStripMenuItem Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM + IL_009c: stelem.ref + IL_009d: ldloc.1 + IL_009e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ToolStripItemCollection::AddRange(class [System.Windows.Forms]System.Windows.Forms.ToolStripItem[]) + .line 67,67 : 13,79 '' + IL_00a3: ldarg.0 + IL_00a4: ldc.i4.1 + IL_00a5: call instance void [System.Windows.Forms]System.Windows.Forms.ToolStrip::set_RenderMode(valuetype [System.Windows.Forms]System.Windows.Forms.ToolStripRenderMode) + .line 68,68 : 13,58 '' + IL_00aa: ldarg.0 + IL_00ab: ldc.i4.s 112 + IL_00ad: ldc.i4.s 26 + IL_00af: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00b4: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 69,69 : 13,38 '' + IL_00b9: ldarg.0 + IL_00ba: ldc.i4.0 + IL_00bb: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 71,71 : 9,10 '' + IL_00c0: ret + } // end of method TrayContextMenu::InitializeComponent + + .method private hidebysig instance void + ManagePluginsITEM_Click(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 79,79 : 13,50 '' + IL_0000: call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance() + IL_0005: callvirt instance void Virtuoso.Hyphen.Loader::ManagePlugins() + .line 80,80 : 9,10 '' + IL_000a: ret + } // end of method TrayContextMenu::ManagePluginsITEM_Click + +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager + extends [mscorlib]System.Object + implements [mscorlib]System.IDisposable +{ + .field private initonly class [System.Windows.Forms]System.Windows.Forms.NotifyIcon TrayIcon + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 78 (0x4e) + .maxstack 2 + .line 39,39 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\Controls\\TrayMenuManager.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 41,41 : 13,41 '' + IL_0006: ldarg.0 + IL_0007: newobj instance void [System.Windows.Forms]System.Windows.Forms.NotifyIcon::.ctor() + IL_000c: stfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + .line 43,43 : 13,69 '' + IL_0011: ldarg.0 + IL_0012: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_0017: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_ToolTip_HyphenTrayIcon() + IL_001c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.NotifyIcon::set_Text(string) + .line 44,44 : 13,37 '' + IL_0021: ldarg.0 + IL_0022: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_0027: ldc.i4.1 + IL_0028: callvirt instance void [System.Windows.Forms]System.Windows.Forms.NotifyIcon::set_Visible(bool) + .line 45,45 : 13,63 '' + IL_002d: ldarg.0 + IL_002e: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_0033: call class [System.Drawing]System.Drawing.Icon Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_16x16_Hyphen() + IL_0038: callvirt instance void [System.Windows.Forms]System.Windows.Forms.NotifyIcon::set_Icon(class [System.Drawing]System.Drawing.Icon) + .line 46,46 : 13,63 '' + IL_003d: ldarg.0 + IL_003e: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_0043: newobj instance void Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::.ctor() + IL_0048: callvirt instance void [System.Windows.Forms]System.Windows.Forms.NotifyIcon::set_ContextMenuStrip(class [System.Windows.Forms]System.Windows.Forms.ContextMenuStrip) + .line 47,47 : 9,10 '' + IL_004d: ret + } // end of method TrayMenuManager::.ctor + + .method public hidebysig newslot virtual final + instance void Dispose() cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 55,55 : 13,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_0006: brfalse.s IL_0013 + + .line 56,56 : 17,36 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [System.Windows.Forms]System.Windows.Forms.NotifyIcon Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::TrayIcon + IL_000e: callvirt instance void [System]System.ComponentModel.Component::Dispose() + .line 57,57 : 9,10 '' + IL_0013: ret + } // end of method TrayMenuManager::Dispose + +} // end of class Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog + extends [System.Windows.Forms]System.Windows.Forms.Form +{ + .class auto ansi sealed nested public WorkerDelegate + extends [mscorlib]System.MulticastDelegate + { + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method WorkerDelegate::.ctor + + .method public hidebysig newslot virtual + instance void Invoke() runtime managed + { + } // end of method WorkerDelegate::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method WorkerDelegate::BeginInvoke + + .method public hidebysig newslot virtual + instance void EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method WorkerDelegate::EndInvoke + + } // end of class WorkerDelegate + + .field private class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate Worker + .field private class [System]System.ComponentModel.IContainer components + .field private class [System]System.ComponentModel.BackgroundWorker FusionWorker + .field private class [System.Windows.Forms]System.Windows.Forms.PictureBox BackgroundPBOX + .field private static class [mscorlib]System.Threading.ParameterizedThreadStart 'CS$<>9__CachedAnonymousMethodDelegate1' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate del) cil managed + { + // Code size 38 (0x26) + .maxstack 8 + .line 47,47 : 9,56 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\FusionProgressDialog.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Form::.ctor() + .line 49,49 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::InitializeComponent() + .line 51,51 : 13,26 '' + IL_000c: ldarg.0 + IL_000d: ldarg.1 + IL_000e: stfld class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::Worker + .line 52,52 : 13,49 '' + IL_0013: ldarg.0 + IL_0014: ldarg.0 + IL_0015: ldftn instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionProgressDialog_Shown(object, + class [mscorlib]System.EventArgs) + IL_001b: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_0020: call instance void [System.Windows.Forms]System.Windows.Forms.Form::add_Shown(class [mscorlib]System.EventHandler) + .line 53,53 : 9,10 '' + IL_0025: ret + } // end of method FusionProgressDialog::.ctor + + .method public hidebysig static void ShowDialog(class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate del) cil managed + { + // Code size 50 (0x32) + .maxstack 8 + .line 57,57 : 13,29 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 58,58 : 17,56 '' + IL_0003: ldstr "del" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 60,64 : 13,21 '' + IL_000e: ldsfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0013: brtrue.s IL_0026 + + IL_0015: ldnull + IL_0016: ldftn void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::'b__0'(object) + IL_001c: newobj instance void [mscorlib]System.Threading.ParameterizedThreadStart::.ctor(object, + native int) + IL_0021: stsfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0026: ldsfld class [mscorlib]System.Threading.ParameterizedThreadStart Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_002b: ldarg.0 + IL_002c: call void Virtuoso.Miranda.Plugins.Forms.PluginDialog::ExecuteOnSTAThread(class [mscorlib]System.Threading.ParameterizedThreadStart, + object) + .line 65,65 : 9,10 '' + IL_0031: ret + } // end of method FusionProgressDialog::ShowDialog + + .method private hidebysig instance void + FusionProgressDialog_Shown(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 73,73 : 13,43 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System]System.ComponentModel.BackgroundWorker Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker + IL_0006: callvirt instance void [System]System.ComponentModel.BackgroundWorker::RunWorkerAsync() + .line 74,74 : 9,10 '' + IL_000b: ret + } // end of method FusionProgressDialog::FusionProgressDialog_Shown + + .method private hidebysig instance void + FusionWorker_DoWork(object sender, + class [System]System.ComponentModel.DoWorkEventArgs e) cil managed + { + // Code size 20 (0x14) + .maxstack 8 + .line 78,78 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::Worker + IL_0006: brfalse.s IL_0013 + + .line 79,79 : 17,26 '' + IL_0008: ldarg.0 + IL_0009: ldfld class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::Worker + IL_000e: callvirt instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate::Invoke() + .line 80,80 : 9,10 '' + IL_0013: ret + } // end of method FusionProgressDialog::FusionWorker_DoWork + + .method private hidebysig instance void + FusionWorker_RunWorkerCompleted(object sender, + class [System]System.ComponentModel.RunWorkerCompletedEventArgs e) cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 84,84 : 13,21 '' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Close() + .line 85,85 : 9,10 '' + IL_0006: ret + } // end of method FusionProgressDialog::FusionWorker_RunWorkerCompleted + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 16,16 : 13,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\FusionProgressDialog.Designer.cs' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_0016 + + IL_0003: ldarg.0 + IL_0004: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::components + IL_0009: brfalse.s IL_0016 + + .line 18,18 : 17,38 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::components + IL_0011: callvirt instance void [mscorlib]System.IDisposable::Dispose() + .line 20,20 : 13,37 '' + IL_0016: ldarg.0 + IL_0017: ldarg.1 + IL_0018: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Dispose(bool) + .line 21,21 : 9,10 '' + IL_001d: ret + } // end of method FusionProgressDialog::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 449 (0x1c1) + .maxstack 6 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources) + .line 31,31 : 13,153 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_000f: stloc.0 + .line 32,32 : 13,78 '' + IL_0010: ldarg.0 + IL_0011: newobj instance void [System]System.ComponentModel.BackgroundWorker::.ctor() + IL_0016: stfld class [System]System.ComponentModel.BackgroundWorker Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker + .line 33,33 : 13,73 '' + IL_001b: ldarg.0 + IL_001c: newobj instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::.ctor() + IL_0021: stfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + .line 34,34 : 13,91 '' + IL_0026: ldarg.0 + IL_0027: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_002c: callvirt instance void [System]System.ComponentModel.ISupportInitialize::BeginInit() + .line 35,35 : 13,34 '' + IL_0031: ldarg.0 + IL_0032: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 39,39 : 13,112 '' + IL_0037: ldarg.0 + IL_0038: ldfld class [System]System.ComponentModel.BackgroundWorker Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker + IL_003d: ldarg.0 + IL_003e: ldftn instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker_DoWork(object, + class [System]System.ComponentModel.DoWorkEventArgs) + IL_0044: newobj instance void [System]System.ComponentModel.DoWorkEventHandler::.ctor(object, + native int) + IL_0049: callvirt instance void [System]System.ComponentModel.BackgroundWorker::add_DoWork(class [System]System.ComponentModel.DoWorkEventHandler) + .line 40,40 : 13,148 '' + IL_004e: ldarg.0 + IL_004f: ldfld class [System]System.ComponentModel.BackgroundWorker Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker + IL_0054: ldarg.0 + IL_0055: ldftn instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker_RunWorkerCompleted(object, + class [System]System.ComponentModel.RunWorkerCompletedEventArgs) + IL_005b: newobj instance void [System]System.ComponentModel.RunWorkerCompletedEventHandler::.ctor(object, + native int) + IL_0060: callvirt instance void [System]System.ComponentModel.BackgroundWorker::add_RunWorkerCompleted(class [System]System.ComponentModel.RunWorkerCompletedEventHandler) + .line 44,44 : 13,111 '' + IL_0065: ldarg.0 + IL_0066: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_006b: ldloc.0 + IL_006c: ldstr "BackgroundPBOX.Image" + IL_0071: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0076: castclass [System.Drawing]System.Drawing.Image + IL_007b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + .line 45,45 : 13,75 '' + IL_0080: ldarg.0 + IL_0081: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_0086: ldc.i4.0 + IL_0087: ldc.i4.0 + IL_0088: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_008d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 46,46 : 13,57 '' + IL_0092: ldarg.0 + IL_0093: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_0098: ldstr "BackgroundPBOX" + IL_009d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 47,47 : 13,74 '' + IL_00a2: ldarg.0 + IL_00a3: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_00a8: ldc.i4 0xc8 + IL_00ad: ldc.i4.s 100 + IL_00af: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00b4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 48,48 : 13,93 '' + IL_00b9: ldarg.0 + IL_00ba: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_00bf: ldc.i4.2 + IL_00c0: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_SizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.PictureBoxSizeMode) + .line 49,49 : 13,46 '' + IL_00c5: ldarg.0 + IL_00c6: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_00cb: ldc.i4.2 + IL_00cc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabIndex(int32) + .line 50,50 : 13,49 '' + IL_00d1: ldarg.0 + IL_00d2: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_00d7: ldc.i4.0 + IL_00d8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabStop(bool) + .line 54,54 : 13,74 '' + IL_00dd: ldarg.0 + IL_00de: ldc.r4 6. + IL_00e3: ldc.r4 13. + IL_00e8: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_00ed: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + .line 55,55 : 13,74 '' + IL_00f2: ldarg.0 + IL_00f3: ldc.i4.1 + IL_00f4: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + .line 56,56 : 13,66 '' + IL_00f9: ldarg.0 + IL_00fa: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_LightSteelBlue() + IL_00ff: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 57,57 : 13,65 '' + IL_0104: ldarg.0 + IL_0105: ldc.i4 0xc8 + IL_010a: ldc.i4.s 100 + IL_010c: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0111: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_ClientSize(valuetype [System.Drawing]System.Drawing.Size) + .line 58,58 : 13,37 '' + IL_0116: ldarg.0 + IL_0117: ldc.i4.0 + IL_0118: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_ControlBox(bool) + .line 59,59 : 13,52 '' + IL_011d: ldarg.0 + IL_011e: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0123: ldarg.0 + IL_0124: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_0129: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 60,60 : 13,67 '' + IL_012e: ldarg.0 + IL_012f: call class [System.Windows.Forms]System.Windows.Forms.Cursor [System.Windows.Forms]System.Windows.Forms.Cursors::get_WaitCursor() + IL_0134: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Cursor(class [System.Windows.Forms]System.Windows.Forms.Cursor) + .line 61,61 : 13,147 '' + IL_0139: ldarg.0 + IL_013a: ldstr "Tahoma" + IL_013f: ldc.r4 8. + IL_0144: ldc.i4.0 + IL_0145: ldc.i4.3 + IL_0146: ldc.i4 0xee + IL_014b: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0150: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 62,62 : 13,78 '' + IL_0155: ldarg.0 + IL_0156: ldc.i4.0 + IL_0157: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_FormBorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FormBorderStyle) + .line 63,63 : 13,38 '' + IL_015c: ldarg.0 + IL_015d: ldc.i4.0 + IL_015e: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MaximizeBox(bool) + .line 64,64 : 13,38 '' + IL_0163: ldarg.0 + IL_0164: ldc.i4.0 + IL_0165: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MinimizeBox(bool) + .line 65,65 : 13,48 '' + IL_016a: ldarg.0 + IL_016b: ldstr "FusionProgressDialog" + IL_0170: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 66,66 : 13,33 '' + IL_0175: ldarg.0 + IL_0176: ldc.r8 0.75 + IL_017f: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_Opacity(float64) + .line 67,67 : 13,40 '' + IL_0184: ldarg.0 + IL_0185: ldc.i4.0 + IL_0186: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_ShowInTaskbar(bool) + .line 68,68 : 13,86 '' + IL_018b: ldarg.0 + IL_018c: ldc.i4.1 + IL_018d: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_StartPosition(valuetype [System.Windows.Forms]System.Windows.Forms.FormStartPosition) + .line 69,69 : 13,43 '' + IL_0192: ldarg.0 + IL_0193: ldstr "Loading plugins" + IL_0198: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 70,70 : 13,72 '' + IL_019d: ldarg.0 + IL_019e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_LightSteelBlue() + IL_01a3: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_TransparencyKey(valuetype [System.Drawing]System.Drawing.Color) + .line 71,71 : 13,89 '' + IL_01a8: ldarg.0 + IL_01a9: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::BackgroundPBOX + IL_01ae: callvirt instance void [System]System.ComponentModel.ISupportInitialize::EndInit() + .line 72,72 : 13,38 '' + IL_01b3: ldarg.0 + IL_01b4: ldc.i4.0 + IL_01b5: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 73,73 : 13,34 '' + IL_01ba: ldarg.0 + IL_01bb: call instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + .line 75,75 : 9,10 '' + IL_01c0: ret + } // end of method FusionProgressDialog::InitializeComponent + + .method private hidebysig static void 'b__0'(object delegateObj) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 32 (0x20) + .maxstack 1 + .locals init ([0] class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog dlg) + .line 62,62 : 24,104 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\FusionProgressDialog.cs' + IL_0000: ldarg.0 + IL_0001: castclass Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate + IL_0006: newobj instance void Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::.ctor(class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog/WorkerDelegate) + IL_000b: stloc.0 + .line 63,63 : 21,38 '' + .try + { + IL_000c: ldloc.0 + IL_000d: callvirt instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.Form::ShowDialog() + IL_0012: pop + IL_0013: leave.s IL_001f + + } // end .try + finally + { + IL_0015: ldloc.0 + IL_0016: brfalse.s IL_001e + + IL_0018: ldloc.0 + IL_0019: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_001e: endfinally + } // end handler + IL_001f: ret + } // end of method FusionProgressDialog::'b__0' + +} // end of class Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.InformationDialog + extends [System.Windows.Forms]System.Windows.Forms.Form +{ + .field public static literal string NewLineToken = "[n]" + .field private class [System]System.ComponentModel.IContainer components + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader DialogHeader + .field private class [System.Windows.Forms]System.Windows.Forms.Label InformationLABEL + .field private class [System.Windows.Forms]System.Windows.Forms.Label CaptionLABEL + .field private class [System.Windows.Forms]System.Windows.Forms.Button OkBTN + .field private class [System.Windows.Forms]System.Windows.Forms.PictureBox BackgroundPBOX + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 33,33 : 9,36 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\InformationDialog.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [System.Windows.Forms]System.Windows.Forms.Form::.ctor() + .line 35,35 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Miranda.Plugins.Forms.InformationDialog::InitializeComponent() + .line 36,36 : 9,10 '' + IL_000c: ret + } // end of method InformationDialog::.ctor + + .method public hidebysig static void PresentModal(string caption, + string information, + class [System.Drawing]System.Drawing.Image icon) cil managed + { + // Code size 127 (0x7f) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Forms.InformationDialog dlg, + [1] string CS$0$0000) + .line 40,40 : 13,47 '' + IL_0000: ldarg.0 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 41,41 : 17,60 '' + IL_0008: ldstr "caption" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 43,43 : 13,51 '' + IL_0013: ldarg.1 + IL_0014: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0019: brfalse.s IL_0026 + + .line 44,44 : 17,64 '' + IL_001b: ldstr "information" + IL_0020: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0025: throw + + .line 46,46 : 20,67 '' + IL_0026: newobj instance void Virtuoso.Miranda.Plugins.Forms.InformationDialog::.ctor() + IL_002b: stloc.0 + .line 48,48 : 17,66 '' + .try + { + IL_002c: ldloc.0 + IL_002d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0032: ldloc.0 + IL_0033: ldarg.0 + IL_0034: dup + IL_0035: stloc.1 + IL_0036: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + IL_003b: ldloc.1 + IL_003c: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + .line 49,49 : 17,100 '' + IL_0041: ldloc.0 + IL_0042: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_0047: ldarg.1 + IL_0048: ldstr "[n]" + IL_004d: call string [mscorlib]System.Environment::get_NewLine() + IL_0052: callvirt instance string [mscorlib]System.String::Replace(string, + string) + IL_0057: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 51,51 : 17,34 '' + IL_005c: ldarg.2 + IL_005d: brfalse.s IL_006b + + .line 52,52 : 21,51 '' + IL_005f: ldloc.0 + IL_0060: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0065: ldarg.2 + IL_0066: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + .line 54,54 : 17,34 '' + IL_006b: ldloc.0 + IL_006c: callvirt instance valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult [System.Windows.Forms]System.Windows.Forms.Form::ShowDialog() + IL_0071: pop + IL_0072: leave.s IL_007e + + } // end .try + finally + { + IL_0074: ldloc.0 + IL_0075: brfalse.s IL_007d + + IL_0077: ldloc.0 + IL_0078: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_007d: endfinally + .line 56,56 : 9,10 '' + } // end handler + IL_007e: ret + } // end of method InformationDialog::PresentModal + + .method private hidebysig instance void + InformationDialog_Shown(object sender, + class [mscorlib]System.EventArgs e) cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 60,60 : 13,42 '' + IL_0000: call class [System]System.Media.SystemSound [System]System.Media.SystemSounds::get_Asterisk() + IL_0005: callvirt instance void [System]System.Media.SystemSound::Play() + .line 61,61 : 9,10 '' + IL_000a: ret + } // end of method InformationDialog::InformationDialog_Shown + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 16,16 : 13,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\InformationDialog.Designer.cs' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_0016 + + IL_0003: ldarg.0 + IL_0004: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.InformationDialog::components + IL_0009: brfalse.s IL_0016 + + .line 18,18 : 17,38 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Miranda.Plugins.Forms.InformationDialog::components + IL_0011: callvirt instance void [mscorlib]System.IDisposable::Dispose() + .line 20,20 : 13,37 '' + IL_0016: ldarg.0 + IL_0017: ldarg.1 + IL_0018: call instance void [System.Windows.Forms]System.Windows.Forms.Form::Dispose(bool) + .line 21,21 : 9,10 '' + IL_001d: ret + } // end of method InformationDialog::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 1184 (0x4a0) + .maxstack 6 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources) + .line 31,31 : 13,150 '' + IL_0000: ldtoken Virtuoso.Miranda.Plugins.Forms.InformationDialog + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_000f: stloc.0 + .line 32,32 : 13,70 '' + IL_0010: ldarg.0 + IL_0011: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0016: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + .line 33,33 : 13,60 '' + IL_001b: ldarg.0 + IL_001c: newobj instance void [System.Windows.Forms]System.Windows.Forms.Button::.ctor() + IL_0021: stfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + .line 34,34 : 13,112 '' + IL_0026: ldarg.0 + IL_0027: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor() + IL_002c: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + .line 35,35 : 13,66 '' + IL_0031: ldarg.0 + IL_0032: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0037: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + .line 36,36 : 13,73 '' + IL_003c: ldarg.0 + IL_003d: newobj instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::.ctor() + IL_0042: stfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + .line 37,37 : 13,47 '' + IL_0047: ldarg.0 + IL_0048: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_004d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 38,38 : 13,91 '' + IL_0052: ldarg.0 + IL_0053: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_0058: callvirt instance void [System]System.ComponentModel.ISupportInitialize::BeginInit() + .line 39,39 : 13,34 '' + IL_005d: ldarg.0 + IL_005e: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 43,43 : 13,80 '' + IL_0063: ldarg.0 + IL_0064: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_0069: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_006e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 44,44 : 13,86 '' + IL_0073: ldarg.0 + IL_0074: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_0079: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_WindowText() + IL_007e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + .line 45,45 : 13,78 '' + IL_0083: ldarg.0 + IL_0084: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_0089: ldc.i4.s 9 + IL_008b: ldc.i4.s 56 + IL_008d: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0092: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 46,46 : 13,61 '' + IL_0097: ldarg.0 + IL_0098: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_009d: ldstr "InformationLABEL" + IL_00a2: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 47,47 : 13,76 '' + IL_00a7: ldarg.0 + IL_00a8: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_00ad: ldc.i4 0x1ae + IL_00b2: ldc.i4 0x9b + IL_00b7: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_00bc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 48,48 : 13,48 '' + IL_00c1: ldarg.0 + IL_00c2: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_00c7: ldc.i4.2 + IL_00c8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 49,49 : 13,56 '' + IL_00cd: ldarg.0 + IL_00ce: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_00d3: ldstr "Information" + IL_00d8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 53,53 : 13,80 '' + IL_00dd: ldarg.0 + IL_00de: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_00e3: ldc.i4.2 + IL_00e4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Button::set_DialogResult(valuetype [System.Windows.Forms]System.Windows.Forms.DialogResult) + .line 54,54 : 13,69 '' + IL_00e9: ldarg.0 + IL_00ea: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_00ef: ldc.i4.s 12 + IL_00f1: ldc.i4 0xdc + IL_00f6: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_00fb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 55,55 : 13,39 '' + IL_0100: ldarg.0 + IL_0101: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_0106: ldstr "OkBTN" + IL_010b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 56,56 : 13,63 '' + IL_0110: ldarg.0 + IL_0111: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_0116: ldc.i4.s 75 + IL_0118: ldc.i4.s 23 + IL_011a: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_011f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 57,57 : 13,37 '' + IL_0124: ldarg.0 + IL_0125: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_012a: ldc.i4.0 + IL_012b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 58,58 : 13,36 '' + IL_0130: ldarg.0 + IL_0131: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_0136: ldstr "OK" + IL_013b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 59,59 : 13,55 '' + IL_0140: ldarg.0 + IL_0141: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_0146: ldc.i4.1 + IL_0147: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ButtonBase::set_UseVisualStyleBackColor(bool) + .line 63,63 : 13,76 '' + IL_014c: ldarg.0 + IL_014d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0152: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0157: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 64,64 : 13,81 '' + IL_015c: ldarg.0 + IL_015d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0162: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_ActiveCaption() + IL_0167: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + .line 65,65 : 13,63 '' + IL_016c: ldarg.0 + IL_016d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0172: callvirt instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0177: ldarg.0 + IL_0178: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_017d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 66,66 : 13,73 '' + IL_0182: ldarg.0 + IL_0183: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0188: ldc.i4.1 + IL_0189: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 67,67 : 13,163 '' + IL_018e: ldarg.0 + IL_018f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0194: ldstr "Tahoma" + IL_0199: ldc.r4 8.25 + IL_019e: ldc.i4.0 + IL_019f: ldc.i4.3 + IL_01a0: ldc.i4 0xee + IL_01a5: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_01aa: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 68,68 : 13,163 '' + IL_01af: ldarg.0 + IL_01b0: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_01b5: ldstr "Tahoma" + IL_01ba: ldc.r4 8. + IL_01bf: ldc.i4.1 + IL_01c0: ldc.i4.3 + IL_01c1: ldc.i4 0xee + IL_01c6: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_01cb: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + .line 69,69 : 13,54 '' + IL_01d0: ldarg.0 + IL_01d1: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_01d6: ldstr "Caption" + IL_01db: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + .line 70,70 : 13,108 '' + IL_01e0: ldarg.0 + IL_01e1: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_01e6: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_232_32x32() + IL_01eb: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + .line 71,71 : 13,73 '' + IL_01f0: ldarg.0 + IL_01f1: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_01f6: ldc.i4.0 + IL_01f7: ldc.i4.0 + IL_01f8: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_01fd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 72,72 : 13,78 '' + IL_0202: ldarg.0 + IL_0203: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0208: ldc.i4 0x12c + IL_020d: ldc.i4.s 40 + IL_020f: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0214: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 73,73 : 13,53 '' + IL_0219: ldarg.0 + IL_021a: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_021f: ldstr "DialogHeader" + IL_0224: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 74,74 : 13,71 '' + IL_0229: ldarg.0 + IL_022a: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_022f: ldc.i4 0x1c3 + IL_0234: ldc.i4.s 53 + IL_0236: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_023b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 75,75 : 13,44 '' + IL_0240: ldarg.0 + IL_0241: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0246: ldc.i4.1 + IL_0247: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 79,79 : 13,47 '' + IL_024c: ldarg.0 + IL_024d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_0252: ldc.i4.1 + IL_0253: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 80,80 : 13,76 '' + IL_0258: ldarg.0 + IL_0259: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_025e: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0263: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 81,81 : 13,160 '' + IL_0268: ldarg.0 + IL_0269: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_026e: ldstr "Tahoma" + IL_0273: ldc.r4 8.25 + IL_0278: ldc.i4.1 + IL_0279: ldc.i4.3 + IL_027a: ldc.i4 0xee + IL_027f: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0284: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 82,82 : 13,75 '' + IL_0289: ldarg.0 + IL_028a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_028f: ldc.i4.s 12 + IL_0291: ldc.i4.s 23 + IL_0293: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0298: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 83,83 : 13,53 '' + IL_029d: ldarg.0 + IL_029e: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_02a3: ldstr "CaptionLABEL" + IL_02a8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 84,84 : 13,70 '' + IL_02ad: ldarg.0 + IL_02ae: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_02b3: ldc.i4.s 59 + IL_02b5: ldc.i4.s 13 + IL_02b7: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_02bc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 85,85 : 13,44 '' + IL_02c1: ldarg.0 + IL_02c2: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_02c7: ldc.i4.0 + IL_02c8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 86,86 : 13,50 '' + IL_02cd: ldarg.0 + IL_02ce: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::CaptionLABEL + IL_02d3: ldstr "(caption)" + IL_02d8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 90,90 : 13,166 '' + IL_02dd: ldarg.0 + IL_02de: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_02e3: ldc.i4.s 10 + IL_02e5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Anchor(valuetype [System.Windows.Forms]System.Windows.Forms.AnchorStyles) + .line 91,91 : 13,111 '' + IL_02ea: ldarg.0 + IL_02eb: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_02f0: ldloc.0 + IL_02f1: ldstr "BackgroundPBOX.Image" + IL_02f6: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_02fb: castclass [System.Drawing]System.Drawing.Image + IL_0300: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + .line 92,92 : 13,79 '' + IL_0305: ldarg.0 + IL_0306: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_030b: ldc.i4 0x14a + IL_0310: ldc.i4.s 127 + IL_0312: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0317: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 93,93 : 13,57 '' + IL_031c: ldarg.0 + IL_031d: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_0322: ldstr "BackgroundPBOX" + IL_0327: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 94,94 : 13,74 '' + IL_032c: ldarg.0 + IL_032d: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_0332: ldc.i4.s 120 + IL_0334: ldc.i4 0x81 + IL_0339: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_033e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 95,95 : 13,93 '' + IL_0343: ldarg.0 + IL_0344: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_0349: ldc.i4.2 + IL_034a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_SizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.PictureBoxSizeMode) + .line 96,96 : 13,46 '' + IL_034f: ldarg.0 + IL_0350: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_0355: ldc.i4.3 + IL_0356: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabIndex(int32) + .line 97,97 : 13,49 '' + IL_035b: ldarg.0 + IL_035c: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_0361: ldc.i4.0 + IL_0362: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabStop(bool) + .line 98,98 : 13,49 '' + IL_0367: ldarg.0 + IL_0368: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_036d: ldc.i4.0 + IL_036e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Visible(bool) + .line 102,102 : 13,74 '' + IL_0373: ldarg.0 + IL_0374: ldc.r4 6. + IL_0379: ldc.r4 13. + IL_037e: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_0383: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + .line 103,103 : 13,74 '' + IL_0388: ldarg.0 + IL_0389: ldc.i4.1 + IL_038a: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + .line 104,104 : 13,65 '' + IL_038f: ldarg.0 + IL_0390: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.SystemColors::get_Window() + IL_0395: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 105,105 : 13,65 '' + IL_039a: ldarg.0 + IL_039b: ldc.i4 0x1c3 + IL_03a0: ldc.i4 0xff + IL_03a5: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_03aa: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_ClientSize(valuetype [System.Drawing]System.Drawing.Size) + .line 106,106 : 13,52 '' + IL_03af: ldarg.0 + IL_03b0: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03b5: ldarg.0 + IL_03b6: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_03bb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 107,107 : 13,43 '' + IL_03c0: ldarg.0 + IL_03c1: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03c6: ldarg.0 + IL_03c7: ldfld class [System.Windows.Forms]System.Windows.Forms.Button Virtuoso.Miranda.Plugins.Forms.InformationDialog::OkBTN + IL_03cc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 108,108 : 13,54 '' + IL_03d1: ldarg.0 + IL_03d2: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03d7: ldarg.0 + IL_03d8: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationLABEL + IL_03dd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 109,109 : 13,50 '' + IL_03e2: ldarg.0 + IL_03e3: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_03e8: ldarg.0 + IL_03e9: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_03ee: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 110,110 : 13,147 '' + IL_03f3: ldarg.0 + IL_03f4: ldstr "Tahoma" + IL_03f9: ldc.r4 8. + IL_03fe: ldc.i4.0 + IL_03ff: ldc.i4.3 + IL_0400: ldc.i4 0xee + IL_0405: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_040a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 111,111 : 13,85 '' + IL_040f: ldarg.0 + IL_0410: ldc.i4.3 + IL_0411: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_FormBorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.FormBorderStyle) + .line 112,112 : 13,84 '' + IL_0416: ldarg.0 + IL_0417: ldloc.0 + IL_0418: ldstr "$this.Icon" + IL_041d: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0422: castclass [System.Drawing]System.Drawing.Icon + IL_0427: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_Icon(class [System.Drawing]System.Drawing.Icon) + .line 113,113 : 13,38 '' + IL_042c: ldarg.0 + IL_042d: ldc.i4.0 + IL_042e: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MaximizeBox(bool) + .line 114,114 : 13,38 '' + IL_0433: ldarg.0 + IL_0434: ldc.i4.0 + IL_0435: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_MinimizeBox(bool) + .line 115,115 : 13,45 '' + IL_043a: ldarg.0 + IL_043b: ldstr "InformationDialog" + IL_0440: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 116,116 : 13,86 '' + IL_0445: ldarg.0 + IL_0446: ldc.i4.1 + IL_0447: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_StartPosition(valuetype [System.Windows.Forms]System.Windows.Forms.FormStartPosition) + .line 117,117 : 13,39 '' + IL_044c: ldarg.0 + IL_044d: ldstr "Information" + IL_0452: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 118,118 : 13,33 '' + IL_0457: ldarg.0 + IL_0458: ldc.i4.1 + IL_0459: call instance void [System.Windows.Forms]System.Windows.Forms.Form::set_TopMost(bool) + .line 119,119 : 13,81 '' + IL_045e: ldarg.0 + IL_045f: ldarg.0 + IL_0460: ldftn instance void Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationDialog_Shown(object, + class [mscorlib]System.EventArgs) + IL_0466: newobj instance void [mscorlib]System.EventHandler::.ctor(object, + native int) + IL_046b: call instance void [System.Windows.Forms]System.Windows.Forms.Form::add_Shown(class [mscorlib]System.EventHandler) + .line 120,120 : 13,51 '' + IL_0470: ldarg.0 + IL_0471: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0476: ldc.i4.0 + IL_0477: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 121,121 : 13,47 '' + IL_047c: ldarg.0 + IL_047d: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Miranda.Plugins.Forms.InformationDialog::DialogHeader + IL_0482: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + .line 122,122 : 13,89 '' + IL_0487: ldarg.0 + IL_0488: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Miranda.Plugins.Forms.InformationDialog::BackgroundPBOX + IL_048d: callvirt instance void [System]System.ComponentModel.ISupportInitialize::EndInit() + .line 123,123 : 13,38 '' + IL_0492: ldarg.0 + IL_0493: ldc.i4.0 + IL_0494: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 124,124 : 13,34 '' + IL_0499: ldarg.0 + IL_049a: call instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + .line 126,126 : 9,10 '' + IL_049f: ret + } // end of method InformationDialog::InitializeComponent + +} // end of class Virtuoso.Miranda.Plugins.Forms.InformationDialog + +.class interface public abstract auto ansi Virtuoso.Miranda.Plugins.Forms.ISynchronizedSubscriber +{ + .method public hidebysig newslot specialname abstract virtual + instance class [mscorlib]System.Threading.SynchronizationContext + get_SyncContext() cil managed + { + } // end of method ISynchronizedSubscriber::get_SyncContext + + .property instance class [mscorlib]System.Threading.SynchronizationContext + SyncContext() + { + .get instance class [mscorlib]System.Threading.SynchronizationContext Virtuoso.Miranda.Plugins.Forms.ISynchronizedSubscriber::get_SyncContext() + } // end of property ISynchronizedSubscriber::SyncContext +} // end of class Virtuoso.Miranda.Plugins.Forms.ISynchronizedSubscriber + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags None = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags TranslateNonReadOnlyEditControls = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags NoTitleTranslation = int32(0x00000002) +} // end of class Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Forms.LocalizableDialog + extends Virtuoso.Miranda.Plugins.Forms.SingletonDialog +{ + .field private static literal string MS_LANGPACK_TRANSLATEDIALOG = "LangPack/TranslateDialog" + .field private valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags translateFlags + .field private initonly class Virtuoso.Miranda.Plugins.Collections.ControlCollection nonLocalizableControls + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.ControlCollection + get_NonLocalizableControls() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 50,50 : 19,49 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Forms\\LocalizableDialog.cs' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.ControlCollection Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::nonLocalizableControls + IL_0006: ret + } // end of method LocalizableDialog::get_NonLocalizableControls + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags + get_TranslateFlags() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 55,55 : 19,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::translateFlags + IL_0006: ret + } // end of method LocalizableDialog::get_TranslateFlags + + .method public hidebysig specialname instance void + set_TranslateFlags(valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 56,56 : 19,42 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::translateFlags + .line 56,56 : 43,44 '' + IL_0007: ret + } // end of method LocalizableDialog::set_TranslateFlags + + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 63,63 : 9,78 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldc.i4.0 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags) + .line 63,63 : 81,82 '' + IL_0008: ret + } // end of method LocalizableDialog::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags 'flags') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 65,65 : 9,84 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldarg.1 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags) + .line 65,65 : 87,88 '' + IL_0008: ret + } // end of method LocalizableDialog::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(string dialogName, + valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags 'flags') cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 67,67 : 9,102 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Forms.SingletonDialog::.ctor(string) + .line 69,69 : 13,36 '' + IL_0007: ldarg.0 + IL_0008: ldarg.2 + IL_0009: stfld valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::translateFlags + .line 70,70 : 13,74 '' + IL_000e: ldarg.0 + IL_000f: newobj instance void Virtuoso.Miranda.Plugins.Collections.ControlCollection::.ctor() + IL_0014: stfld class Virtuoso.Miranda.Plugins.Collections.ControlCollection Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::nonLocalizableControls + .line 71,71 : 9,10 '' + IL_0019: ret + } // end of method LocalizableDialog::.ctor + + .method family hidebysig virtual instance void + OnLoad(class [mscorlib]System.EventArgs e) cil managed + { + // Code size 160 (0xa0) + .maxstack 2 + .locals init ([0] class [System.Windows.Forms]System.Windows.Forms.Control control, + [1] class [System.Windows.Forms]System.Windows.Forms.TextBoxBase editCtrl, + [2] class [mscorlib]System.Collections.IEnumerator CS$5$0000, + [3] class [mscorlib]System.IDisposable CS$0$0001) + .line 79,79 : 13,29 '' + IL_0000: ldarg.0 + IL_0001: call instance bool [System]System.ComponentModel.Component::get_DesignMode() + IL_0006: brtrue IL_0098 + + .line 81,81 : 17,123 '' + IL_000b: ldarg.0 + IL_000c: ldfld valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::translateFlags + IL_0011: ldc.i4.2 + IL_0012: and + IL_0013: ldc.i4.2 + IL_0014: beq.s IL_0027 + + .line 82,82 : 21,63 '' + IL_0016: ldarg.0 + IL_0017: ldarg.0 + IL_0018: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_001d: call string Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack::TranslateString(string) + IL_0022: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 84,84 : 45,53 '' + IL_0027: ldarg.0 + IL_0028: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_002d: callvirt instance class [mscorlib]System.Collections.IEnumerator [System.Windows.Forms]System.Windows.Forms.Layout.ArrangedElementCollection::GetEnumerator() + IL_0032: stloc.2 + .try + { + IL_0033: br.s IL_007d + + .line 84,84 : 26,41 '' + IL_0035: ldloc.2 + IL_0036: callvirt instance object [mscorlib]System.Collections.IEnumerator::get_Current() + IL_003b: castclass [System.Windows.Forms]System.Windows.Forms.Control + IL_0040: stloc.0 + .line 86,86 : 21,67 '' + IL_0041: ldloc.0 + IL_0042: isinst [System.Windows.Forms]System.Windows.Forms.TextBoxBase + IL_0047: stloc.1 + .line 88,88 : 21,67 '' + IL_0048: ldarg.0 + IL_0049: ldfld class Virtuoso.Miranda.Plugins.Collections.ControlCollection Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::nonLocalizableControls + IL_004e: ldloc.0 + IL_004f: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Contains(!0) + IL_0054: brtrue.s IL_007d + + .line 90,90 : 25,201 '' + IL_0056: ldloc.1 + IL_0057: brfalse.s IL_006c + + IL_0059: ldloc.1 + IL_005a: callvirt instance bool [System.Windows.Forms]System.Windows.Forms.TextBoxBase::get_ReadOnly() + IL_005f: brtrue.s IL_006c + + IL_0061: ldarg.0 + IL_0062: ldfld valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::translateFlags + IL_0067: ldc.i4.1 + IL_0068: and + IL_0069: ldc.i4.1 + IL_006a: bne.un.s IL_007d + + .line 93,93 : 25,83 '' + IL_006c: ldloc.0 + IL_006d: ldloc.0 + IL_006e: callvirt instance string [System.Windows.Forms]System.Windows.Forms.Control::get_Text() + IL_0073: call string Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack::TranslateString(string) + IL_0078: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 84,84 : 42,44 '' + IL_007d: ldloc.2 + IL_007e: callvirt instance bool [mscorlib]System.Collections.IEnumerator::MoveNext() + IL_0083: brtrue.s IL_0035 + + IL_0085: leave.s IL_0098 + + } // end .try + finally + { + IL_0087: ldloc.2 + IL_0088: isinst [mscorlib]System.IDisposable + IL_008d: stloc.3 + IL_008e: ldloc.3 + IL_008f: brfalse.s IL_0097 + + IL_0091: ldloc.3 + IL_0092: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0097: endfinally + .line 98,98 : 13,28 '' + } // end handler + IL_0098: ldarg.0 + IL_0099: ldarg.1 + IL_009a: call instance void [System.Windows.Forms]System.Windows.Forms.Form::OnLoad(class [mscorlib]System.EventArgs) + .line 99,99 : 9,10 '' + IL_009f: ret + } // end of method LocalizableDialog::OnLoad + + .property instance class Virtuoso.Miranda.Plugins.Collections.ControlCollection + NonLocalizableControls() + { + .custom instance void [System]System.ComponentModel.BrowsableAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .get instance class Virtuoso.Miranda.Plugins.Collections.ControlCollection Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::get_NonLocalizableControls() + } // end of property LocalizableDialog::NonLocalizableControls + .property instance valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags + TranslateFlags() + { + .set instance void Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::set_TranslateFlags(valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags) + .get instance valuetype Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::get_TranslateFlags() + } // end of property LocalizableDialog::TranslateFlags +} // end of class Virtuoso.Miranda.Plugins.Forms.LocalizableDialog + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute + extends [mscorlib]System.Attribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 00 01 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ........T..Allow + 4D 75 6C 74 69 70 6C 65 00 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 00 ) // rited. + .field private string friendlyName + .method public hidebysig specialname rtspecialname + instance void .ctor(string name) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 37,37 : 9,59 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\EnumValueFriendlyNameAttribute.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + .line 39,39 : 13,38 '' + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: stfld string Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::friendlyName + .line 40,40 : 9,10 '' + IL_000d: ret + } // end of method EnumValueFriendlyNameAttribute::.ctor + + .method public hidebysig specialname instance string + get_FriendlyName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 48,48 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::friendlyName + IL_0006: ret + } // end of method EnumValueFriendlyNameAttribute::get_FriendlyName + + .method public hidebysig specialname instance void + set_FriendlyName(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 49,49 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::friendlyName + .line 49,49 : 41,42 '' + IL_0007: ret + } // end of method EnumValueFriendlyNameAttribute::set_FriendlyName + + .method public hidebysig static class [mscorlib]System.Collections.Generic.Dictionary`2 + GetFriendlyNames() cil managed + { + // Code size 178 (0xb2) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Type enumType, + [1] class [mscorlib]System.Type thisType, + [2] class [mscorlib]System.Collections.Generic.Dictionary`2 results, + [3] class [mscorlib]System.Reflection.FieldInfo 'field', + [4] class Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute[] names, + [5] class [mscorlib]System.Reflection.FieldInfo[] CS$6$0000, + [6] int32 CS$7$0001) + .line 58,58 : 13,43 '' + IL_0000: ldtoken !!TEnum + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: stloc.0 + .line 60,60 : 13,34 '' + IL_000b: ldloc.0 + IL_000c: callvirt instance bool [mscorlib]System.Type::get_IsEnum() + IL_0011: brtrue.s IL_0023 + + .line 61,61 : 17,86 '' + IL_0013: ldstr "TEnum is not an enumeration." + IL_0018: ldstr "TEnum" + IL_001d: newobj instance void [mscorlib]System.ArgumentException::.ctor(string, + string) + IL_0022: throw + + .line 63,63 : 13,68 '' + IL_0023: ldtoken Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute + IL_0028: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_002d: stloc.1 + .line 64,64 : 13,82 '' + IL_002e: ldc.i4.1 + IL_002f: newobj instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor(int32) + IL_0034: stloc.2 + .line 66,66 : 41,61 '' + IL_0035: ldloc.0 + IL_0036: callvirt instance class [mscorlib]System.Reflection.FieldInfo[] [mscorlib]System.Type::GetFields() + IL_003b: stloc.s CS$6$0000 + IL_003d: ldc.i4.0 + IL_003e: stloc.s CS$7$0001 + IL_0040: br.s IL_00a8 + + .line 66,66 : 22,37 '' + IL_0042: ldloc.s CS$6$0000 + IL_0044: ldloc.s CS$7$0001 + IL_0046: ldelem.ref + IL_0047: stloc.3 + .line 68,68 : 17,93 '' + IL_0048: ldloc.3 + IL_0049: callvirt instance valuetype [mscorlib]System.Reflection.FieldAttributes [mscorlib]System.Reflection.FieldInfo::get_Attributes() + IL_004e: ldc.i4.s 64 + IL_0050: and + IL_0051: ldc.i4.s 64 + IL_0053: bne.un.s IL_00a2 + + .line 71,71 : 17,135 '' + IL_0055: ldloc.3 + IL_0056: ldloc.1 + IL_0057: ldc.i4.0 + IL_0058: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_005d: castclass class Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute[] + IL_0062: stloc.s names + .line 73,73 : 17,55 '' + IL_0064: ldloc.s names + IL_0066: brfalse.s IL_008b + + IL_0068: ldloc.s names + IL_006a: ldlen + IL_006b: conv.i4 + IL_006c: ldc.i4.0 + IL_006d: ble.s IL_008b + + .line 74,74 : 21,92 '' + IL_006f: ldloc.2 + IL_0070: ldloc.3 + IL_0071: callvirt instance object [mscorlib]System.Reflection.FieldInfo::GetRawConstantValue() + IL_0076: unbox.any !!TEnum + IL_007b: ldloc.s names + IL_007d: ldc.i4.0 + IL_007e: ldelem.ref + IL_007f: callvirt instance string Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::get_FriendlyName() + IL_0084: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, + !1) + IL_0089: br.s IL_00a2 + + .line 76,76 : 21,81 '' + IL_008b: ldloc.2 + IL_008c: ldloc.3 + IL_008d: callvirt instance object [mscorlib]System.Reflection.FieldInfo::GetRawConstantValue() + IL_0092: unbox.any !!TEnum + IL_0097: ldloc.3 + IL_0098: callvirt instance string [mscorlib]System.Reflection.MemberInfo::get_Name() + IL_009d: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Add(!0, + !1) + IL_00a2: ldloc.s CS$7$0001 + IL_00a4: ldc.i4.1 + IL_00a5: add + IL_00a6: stloc.s CS$7$0001 + .line 66,66 : 38,40 '' + IL_00a8: ldloc.s CS$7$0001 + IL_00aa: ldloc.s CS$6$0000 + IL_00ac: ldlen + IL_00ad: conv.i4 + IL_00ae: blt.s IL_0042 + + .line 79,79 : 13,28 '' + IL_00b0: ldloc.2 + IL_00b1: ret + } // end of method EnumValueFriendlyNameAttribute::GetFriendlyNames + + .property instance string FriendlyName() + { + .get instance string Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::get_FriendlyName() + .set instance void Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::set_FriendlyName(string) + } // end of property EnumValueFriendlyNameAttribute::FriendlyName +} // end of class Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Helpers.MessageQueue + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested family CommonWaitTime + extends [mscorlib]System.Enum + { + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.MessageQueue/CommonWaitTime QueueSuspension = int32(0x00000032) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.MessageQueue/CommonWaitTime QueueItemProcessed = int32(0x000003E8) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.MessageQueue/CommonWaitTime QueueProcessed = int32(0x000003E8) + } // end of class CommonWaitTime + + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) enabled + .field private bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) suspended + .field private initonly class [System]System.Collections.Generic.Queue`1> queue + .field private class [mscorlib]System.Threading.Thread QueueThread + .field private initonly class [mscorlib]System.Threading.ManualResetEvent waitHandle + .field private class [mscorlib]System.EventHandler MessageSending + .field private class [mscorlib]System.EventHandler MessageSent + .method public hidebysig specialname instance void + add_MessageSending(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method MessageQueue::add_MessageSending + + .method public hidebysig specialname instance void + remove_MessageSending(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method MessageQueue::remove_MessageSending + + .method public hidebysig specialname instance void + add_MessageSent(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method MessageQueue::add_MessageSent + + .method public hidebysig specialname instance void + remove_MessageSent(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method MessageQueue::remove_MessageSent + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 43 (0x2b) + .maxstack 8 + .line 34,34 : 9,123 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\MessageQueue.cs' + IL_0000: ldarg.0 + IL_0001: ldc.i4.5 + IL_0002: newobj instance void class [System]System.Collections.Generic.Queue`1>::.ctor(int32) + IL_0007: stfld class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::queue + .line 37,37 : 9,83 '' + IL_000c: ldarg.0 + IL_000d: ldc.i4.1 + IL_000e: newobj instance void [mscorlib]System.Threading.ManualResetEvent::.ctor(bool) + IL_0013: stfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + .line 61,61 : 9,30 '' + IL_0018: ldarg.0 + IL_0019: call instance void [mscorlib]System.Object::.ctor() + .line 63,63 : 13,51 '' + IL_001e: ldarg.0 + IL_001f: ldarg.0 + IL_0020: callvirt instance class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::InitializeQueueThread() + IL_0025: stfld class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::QueueThread + .line 64,64 : 9,10 '' + IL_002a: ret + } // end of method MessageQueue::.ctor + + .method family hidebysig newslot virtual + instance class [mscorlib]System.Threading.Thread + InitializeQueueThread() cil managed + { + // Code size 28 (0x1c) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Threading.Thread thread) + .line 68,68 : 13,54 '' + IL_0000: ldarg.0 + IL_0001: dup + IL_0002: ldvirtftn instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::ProcessQueue() + IL_0008: newobj instance void [mscorlib]System.Threading.ThreadStart::.ctor(object, + native int) + IL_000d: newobj instance void [mscorlib]System.Threading.Thread::.ctor(class [mscorlib]System.Threading.ThreadStart) + IL_0012: stloc.0 + .line 69,69 : 13,40 '' + IL_0013: ldloc.0 + IL_0014: ldc.i4.1 + IL_0015: callvirt instance void [mscorlib]System.Threading.Thread::set_IsBackground(bool) + .line 71,71 : 13,27 '' + IL_001a: ldloc.0 + IL_001b: ret + } // end of method MessageQueue::InitializeQueueThread + + .method family hidebysig virtual instance void + Finalize() cil managed + { + // Code size 28 (0x1c) + .maxstack 2 + .line 76,76 : 13,29 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::SetState(bool) + .line 77,77 : 13,32 '' + IL_0007: ldarg.0 + IL_0008: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + IL_000d: callvirt instance void [mscorlib]System.Threading.WaitHandle::Close() + IL_0012: leave.s IL_001b + + .line 78,78 : 9,10 '' + } // end .try + finally + { + IL_0014: ldarg.0 + IL_0015: call instance void [mscorlib]System.Object::Finalize() + IL_001a: endfinally + .line 78,78 : 9,10 '' + } // end handler + IL_001b: ret + } // end of method MessageQueue::Finalize + + .method public hidebysig specialname instance bool + get_Suspended() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 88,88 : 17,34 '' + IL_0000: ldarg.0 + IL_0001: volatile. + IL_0003: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::suspended + IL_0008: ret + } // end of method MessageQueue::get_Suspended + + .method public hidebysig specialname instance class [mscorlib]System.Threading.ManualResetEvent + get_WaitHandle() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 96,96 : 17,35 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + IL_0006: ret + } // end of method MessageQueue::get_WaitHandle + + .method family hidebysig specialname instance class [System]System.Collections.Generic.Queue`1> + get_Queue() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 102,102 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::queue + IL_0006: ret + } // end of method MessageQueue::get_Queue + + .method public hidebysig specialname instance bool + get_Enabled() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 109,109 : 17,32 '' + IL_0000: ldarg.0 + IL_0001: volatile. + IL_0003: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::enabled + IL_0008: ret + } // end of method MessageQueue::get_Enabled + + .method public hidebysig specialname instance bool + get_QueueHasItems() cil managed + { + // Code size 39 (0x27) + .maxstack 2 + .locals init ([0] bool CS$1$0000, + [1] class [System]System.Collections.Generic.Queue`1> CS$2$0001) + .line 117,117 : 17,29 '' + IL_0000: ldarg.0 + IL_0001: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 118,118 : 21,44 '' + .try + { + IL_000d: ldarg.0 + IL_000e: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0013: callvirt instance int32 class [System]System.Collections.Generic.Queue`1>::get_Count() + IL_0018: ldc.i4.0 + IL_0019: cgt + IL_001b: stloc.0 + IL_001c: leave.s IL_0025 + + } // end .try + finally + { + IL_001e: ldloc.1 + IL_001f: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0024: endfinally + .line 119,119 : 13,14 '' + } // end handler + IL_0025: ldloc.0 + IL_0026: ret + } // end of method MessageQueue::get_QueueHasItems + + .method family hidebysig newslot specialname virtual + instance bool get_ClearQueueWhenDisabled() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 126,126 : 17,29 '' + IL_0000: ldc.i4.1 + IL_0001: ret + } // end of method MessageQueue::get_ClearQueueWhenDisabled + + .method family hidebysig newslot virtual + instance void ProcessQueue() cil managed + { + // Code size 139 (0x8b) + .maxstack 2 + .locals init ([0] class [System]System.Collections.Generic.Queue`1> CS$2$0000) + IL_0000: br.s IL_0076 + + .line 139,139 : 21,58 '' + IL_0002: ldarg.0 + IL_0003: ldc.i4.s 50 + IL_0005: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Wait(valuetype Virtuoso.Miranda.Plugins.Helpers.MessageQueue/CommonWaitTime) + .line 138,138 : 17,34 '' + IL_000a: ldarg.0 + IL_000b: volatile. + IL_000d: ldfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::suspended + IL_0012: brtrue.s IL_0002 + + .line 141,141 : 17,29 '' + IL_0014: ldarg.0 + IL_0015: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_001a: dup + IL_001b: stloc.0 + IL_001c: call void [mscorlib]System.Threading.Monitor::Enter(object) + .try + { + IL_0021: br.s IL_004d + + .line 145,145 : 25,44 '' + IL_0023: ldarg.0 + IL_0024: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + IL_0029: callvirt instance bool [mscorlib]System.Threading.EventWaitHandle::Reset() + IL_002e: pop + .line 146,146 : 25,55 '' + IL_002f: ldarg.0 + IL_0030: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::RaiseMessageForwardingEvent() + .line 148,148 : 25,49 '' + IL_0035: ldarg.0 + IL_0036: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::DequeueAndSendMessage() + .line 149,149 : 25,58 '' + IL_003b: ldarg.0 + IL_003c: ldarg.0 + IL_003d: callvirt instance int32 Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueItemProcessedWaitTime() + IL_0042: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Wait(int32) + .line 151,151 : 25,54 '' + IL_0047: ldarg.0 + IL_0048: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::RaiseMessageForwardedEvent() + .line 143,143 : 21,42 '' + IL_004d: ldarg.0 + IL_004e: call instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueHasItems() + IL_0053: brtrue.s IL_0023 + + .line 154,154 : 21,38 '' + IL_0055: ldarg.0 + IL_0056: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + IL_005b: callvirt instance bool [mscorlib]System.Threading.EventWaitHandle::Set() + IL_0060: pop + IL_0061: leave.s IL_006a + + } // end .try + finally + { + IL_0063: ldloc.0 + IL_0064: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0069: endfinally + .line 157,157 : 17,46 '' + } // end handler + IL_006a: ldarg.0 + IL_006b: ldarg.0 + IL_006c: callvirt instance int32 Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueProcessedWaitTime() + IL_0071: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Wait(int32) + .line 136,136 : 13,28 '' + IL_0076: ldarg.0 + IL_0077: call instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Enabled() + IL_007c: brtrue.s IL_000a + + .line 160,160 : 13,30 '' + IL_007e: ldarg.0 + IL_007f: ldfld class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::waitHandle + IL_0084: callvirt instance bool [mscorlib]System.Threading.EventWaitHandle::Set() + IL_0089: pop + .line 161,161 : 9,10 '' + IL_008a: ret + } // end of method MessageQueue::ProcessQueue + + .method family hidebysig instance void + DequeueAndSendMessage() cil managed + { + // Code size 55 (0x37) + .maxstack 3 + .locals init ([0] valuetype [mscorlib]System.Collections.Generic.KeyValuePair`2 data, + [1] class [System]System.Collections.Generic.Queue`1> CS$2$0000) + .line 165,165 : 13,25 '' + IL_0000: ldarg.0 + IL_0001: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0006: dup + IL_0007: stloc.1 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 167,167 : 17,74 '' + .try + { + IL_000d: ldarg.0 + IL_000e: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0013: callvirt instance !0 class [System]System.Collections.Generic.Queue`1>::Dequeue() + IL_0018: stloc.0 + .line 168,168 : 17,51 '' + IL_0019: ldarg.0 + IL_001a: ldloca.s data + IL_001c: call instance !0 valuetype [mscorlib]System.Collections.Generic.KeyValuePair`2::get_Key() + IL_0021: ldloca.s data + IL_0023: call instance !1 valuetype [mscorlib]System.Collections.Generic.KeyValuePair`2::get_Value() + IL_0028: callvirt instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::SendMessage(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + string) + IL_002d: leave.s IL_0036 + + } // end .try + finally + { + IL_002f: ldloc.1 + IL_0030: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0035: endfinally + .line 170,170 : 9,10 '' + } // end handler + IL_0036: ret + } // end of method MessageQueue::DequeueAndSendMessage + + .method family hidebysig newslot virtual + instance void SendMessage(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo recipient, + string message) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 174,174 : 13,44 '' + IL_0000: ldarg.1 + IL_0001: ldarg.2 + IL_0002: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::SendMessage(string) + .line 175,175 : 9,10 '' + IL_0007: ret + } // end of method MessageQueue::SendMessage + + .method family hidebysig newslot specialname virtual + instance int32 get_QueueItemProcessedWaitTime() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 181,181 : 17,63 '' + IL_0000: ldc.i4 0x3e8 + IL_0005: ret + } // end of method MessageQueue::get_QueueItemProcessedWaitTime + + .method family hidebysig newslot specialname virtual + instance int32 get_QueueProcessedWaitTime() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 189,189 : 17,59 '' + IL_0000: ldc.i4 0x3e8 + IL_0005: ret + } // end of method MessageQueue::get_QueueProcessedWaitTime + + .method public hidebysig instance void + SuspendQueue() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 199,199 : 13,30 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: volatile. + IL_0004: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::suspended + .line 200,200 : 9,10 '' + IL_0009: ret + } // end of method MessageQueue::SuspendQueue + + .method public hidebysig instance void + ResumeQueue() cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 204,204 : 13,31 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: volatile. + IL_0004: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::suspended + .line 205,205 : 9,10 '' + IL_0009: ret + } // end of method MessageQueue::ResumeQueue + + .method public hidebysig instance void + EnqueueMessage(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo 'to', + string message) cil managed + { + // Code size 48 (0x30) + .maxstack 3 + .locals init ([0] class [System]System.Collections.Generic.Queue`1> CS$2$0000) + .line 209,209 : 13,25 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::queue + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 210,210 : 17,83 '' + .try + { + IL_000d: ldarg.0 + IL_000e: ldfld class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::queue + IL_0013: ldarg.1 + IL_0014: ldarg.2 + IL_0015: newobj instance void valuetype [mscorlib]System.Collections.Generic.KeyValuePair`2::.ctor(!0, + !1) + IL_001a: callvirt instance void class [System]System.Collections.Generic.Queue`1>::Enqueue(!0) + IL_001f: leave.s IL_0028 + + } // end .try + finally + { + IL_0021: ldloc.0 + IL_0022: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0027: endfinally + .line 212,212 : 13,28 '' + } // end handler + IL_0028: ldarg.0 + IL_0029: ldc.i4.1 + IL_002a: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::SetState(bool) + .line 213,213 : 9,10 '' + IL_002f: ret + } // end of method MessageQueue::EnqueueMessage + + .method public hidebysig instance void + SetState(bool enabled) cil managed + { + // Code size 105 (0x69) + .maxstack 2 + .locals init ([0] class [System]System.Collections.Generic.Queue`1> CS$2$0000) + .line 218,218 : 13,25 '' + IL_0000: ldarg.0 + IL_0001: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0006: dup + IL_0007: stloc.0 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 220,220 : 17,29 '' + .try + { + IL_000d: ldarg.1 + IL_000e: brfalse.s IL_004b + + .line 222,222 : 21,96 '' + IL_0010: ldarg.0 + IL_0011: ldfld class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::QueueThread + IL_0016: callvirt instance valuetype [mscorlib]System.Threading.ThreadState [mscorlib]System.Threading.Thread::get_ThreadState() + IL_001b: ldc.i4.s 16 + IL_001d: and + IL_001e: ldc.i4.s 16 + IL_0020: bne.un.s IL_002e + + .line 223,223 : 25,63 '' + IL_0022: ldarg.0 + IL_0023: ldarg.0 + IL_0024: callvirt instance class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::InitializeQueueThread() + IL_0029: stfld class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::QueueThread + .line 225,225 : 21,100 '' + IL_002e: ldarg.0 + IL_002f: ldfld class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::QueueThread + IL_0034: callvirt instance valuetype [mscorlib]System.Threading.ThreadState [mscorlib]System.Threading.Thread::get_ThreadState() + IL_0039: ldc.i4.8 + IL_003a: and + IL_003b: ldc.i4.8 + IL_003c: bne.un.s IL_0056 + + .line 226,226 : 25,45 '' + IL_003e: ldarg.0 + IL_003f: ldfld class [mscorlib]System.Threading.Thread Virtuoso.Miranda.Plugins.Helpers.MessageQueue::QueueThread + IL_0044: callvirt instance void [mscorlib]System.Threading.Thread::Start() + IL_0049: br.s IL_0056 + + .line 230,230 : 21,35 '' + IL_004b: ldarg.0 + IL_004c: call instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + IL_0051: callvirt instance void class [System]System.Collections.Generic.Queue`1>::Clear() + .line 233,233 : 17,40 '' + IL_0056: ldarg.0 + IL_0057: ldarg.1 + IL_0058: volatile. + IL_005a: stfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Helpers.MessageQueue::enabled + IL_005f: leave.s IL_0068 + + } // end .try + finally + { + IL_0061: ldloc.0 + IL_0062: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0067: endfinally + .line 235,235 : 9,10 '' + } // end handler + IL_0068: ret + } // end of method MessageQueue::SetState + + .method family hidebysig instance void + RaiseMessageForwardingEvent() cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 239,239 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_0006: brfalse.s IL_0019 + + .line 240,240 : 17,55 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSending + IL_000e: ldarg.0 + IL_000f: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_0014: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + .line 241,241 : 9,10 '' + IL_0019: ret + } // end of method MessageQueue::RaiseMessageForwardingEvent + + .method family hidebysig instance void + RaiseMessageForwardedEvent() cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 245,245 : 13,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_0006: brfalse.s IL_0019 + + .line 246,246 : 17,52 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Helpers.MessageQueue::MessageSent + IL_000e: ldarg.0 + IL_000f: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_0014: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + .line 247,247 : 9,10 '' + IL_0019: ret + } // end of method MessageQueue::RaiseMessageForwardedEvent + + .method family hidebysig instance void + Wait(valuetype Virtuoso.Miranda.Plugins.Helpers.MessageQueue/CommonWaitTime miliseconds) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 251,251 : 13,36 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Wait(int32) + .line 252,252 : 9,10 '' + IL_0007: ret + } // end of method MessageQueue::Wait + + .method family hidebysig instance void + Wait(int32 miliseconds) cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 256,256 : 13,39 '' + IL_0000: ldarg.1 + IL_0001: call void [mscorlib]System.Threading.Thread::Sleep(int32) + .line 257,257 : 9,10 '' + IL_0006: ret + } // end of method MessageQueue::Wait + + .event [mscorlib]System.EventHandler MessageSending + { + .addon instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::add_MessageSending(class [mscorlib]System.EventHandler) + .removeon instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::remove_MessageSending(class [mscorlib]System.EventHandler) + } // end of event MessageQueue::MessageSending + .event [mscorlib]System.EventHandler MessageSent + { + .addon instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::add_MessageSent(class [mscorlib]System.EventHandler) + .removeon instance void Virtuoso.Miranda.Plugins.Helpers.MessageQueue::remove_MessageSent(class [mscorlib]System.EventHandler) + } // end of event MessageQueue::MessageSent + .property instance bool Suspended() + { + .get instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Suspended() + } // end of property MessageQueue::Suspended + .property instance class [mscorlib]System.Threading.ManualResetEvent + WaitHandle() + { + .get instance class [mscorlib]System.Threading.ManualResetEvent Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_WaitHandle() + } // end of property MessageQueue::WaitHandle + .property instance class [System]System.Collections.Generic.Queue`1> + Queue() + { + .get instance class [System]System.Collections.Generic.Queue`1> Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue() + } // end of property MessageQueue::Queue + .property instance bool Enabled() + { + .get instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Enabled() + } // end of property MessageQueue::Enabled + .property instance bool QueueHasItems() + { + .get instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueHasItems() + } // end of property MessageQueue::QueueHasItems + .property instance bool ClearQueueWhenDisabled() + { + .get instance bool Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_ClearQueueWhenDisabled() + } // end of property MessageQueue::ClearQueueWhenDisabled + .property instance int32 QueueItemProcessedWaitTime() + { + .get instance int32 Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueItemProcessedWaitTime() + } // end of property MessageQueue::QueueItemProcessedWaitTime + .property instance int32 QueueProcessedWaitTime() + { + .get instance int32 Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueProcessedWaitTime() + } // end of property MessageQueue::QueueProcessedWaitTime +} // end of class Virtuoso.Miranda.Plugins.Helpers.MessageQueue + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Helpers.Utilities + extends [mscorlib]System.Object +{ + .method public hidebysig static uint32 + GetTimestamp() cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 11 (0xb) + .maxstack 8 + .line 29,29 : 13,47 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\Utilities.cs' + IL_0000: call valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::get_Now() + IL_0005: call uint32 Virtuoso.Miranda.Plugins.Helpers.Utilities::GetTimestamp(valuetype [mscorlib]System.DateTime) + IL_000a: ret + } // end of method Utilities::GetTimestamp + + .method public hidebysig static uint32 + GetTimestamp(valuetype [mscorlib]System.DateTime dateTime) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 34 (0x22) + .maxstack 4 + .locals init ([0] valuetype [mscorlib]System.TimeSpan CS$0$0000) + .line 35,35 : 13,95 '' + IL_0000: ldarga.s dateTime + IL_0002: call instance valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::ToUniversalTime() + IL_0007: ldc.i4 0x7b2 + IL_000c: ldc.i4.1 + IL_000d: ldc.i4.1 + IL_000e: newobj instance void [mscorlib]System.DateTime::.ctor(int32, + int32, + int32) + IL_0013: call valuetype [mscorlib]System.TimeSpan [mscorlib]System.DateTime::op_Subtraction(valuetype [mscorlib]System.DateTime, + valuetype [mscorlib]System.DateTime) + IL_0018: stloc.0 + IL_0019: ldloca.s CS$0$0000 + IL_001b: call instance float64 [mscorlib]System.TimeSpan::get_TotalSeconds() + IL_0020: conv.u4 + IL_0021: ret + } // end of method Utilities::GetTimestamp + +} // end of class Virtuoso.Miranda.Plugins.Helpers.Utilities + +.class private auto ansi sealed beforefieldinit Virtuoso.Hyphen.Configuration.Controls.AboutContent + extends Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl +{ + .field private class [System]System.ComponentModel.IContainer components + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader panel1 + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection panel2 + .field private class [System.Windows.Forms]System.Windows.Forms.Label VersionLABEL + .field private class [System.Windows.Forms]System.Windows.Forms.LinkLabel HomepageLINK + .field private class [System.Windows.Forms]System.Windows.Forms.PictureBox pictureBox1 + .field private class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection categoryItemSection1 + .field private class [System.Windows.Forms]System.Windows.Forms.Label label1 + .field private class [System.Windows.Forms]System.Windows.Forms.ListBox listBox1 + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 28,28 : 9,31 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Configuration\\Controls\\AboutContent.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::.ctor() + .line 30,30 : 13,35 '' + IL_0006: ldarg.0 + IL_0007: call instance void Virtuoso.Hyphen.Configuration.Controls.AboutContent::InitializeComponent() + .line 31,31 : 9,10 '' + IL_000c: ret + } // end of method AboutContent::.ctor + + .method famorassem hidebysig virtual instance bool + OnShow(bool firstTime) cil managed + { + // Code size 89 (0x59) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Reflection.Assembly 'assembly') + .line 35,35 : 13,27 '' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_0057 + + .line 37,37 : 17,56 '' + IL_0003: ldarg.0 + IL_0004: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0009: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_000e: stloc.0 + .line 39,39 : 17,87 '' + IL_000f: ldarg.0 + IL_0010: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_0015: ldstr "v{0}" + IL_001a: ldloc.0 + IL_001b: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_0020: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_0025: call string [mscorlib]System.String::Format(string, + object) + IL_002a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 40,42 : 17,109 '' + IL_002f: ldarg.0 + IL_0030: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_0035: ldloc.0 + IL_0036: ldtoken [mscorlib]System.Reflection.AssemblyCopyrightAttribute + IL_003b: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0040: ldc.i4.0 + IL_0041: callvirt instance object[] [mscorlib]System.Reflection.Assembly::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_0046: ldc.i4.0 + IL_0047: ldelem.ref + IL_0048: castclass [mscorlib]System.Reflection.AssemblyCopyrightAttribute + IL_004d: callvirt instance string [mscorlib]System.Reflection.AssemblyCopyrightAttribute::get_Copyright() + IL_0052: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 45,45 : 13,26 '' + IL_0057: ldc.i4.0 + IL_0058: ret + } // end of method AboutContent::OnShow + + .method private hidebysig instance void + HomepageLINK_LinkClicked(object sender, + class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventArgs e) cil managed + { + // Code size 36 (0x24) + .maxstack 2 + .locals init ([0] class [System]System.Diagnostics.ProcessStartInfo info) + .line 50,50 : 13,100 '' + IL_0000: call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance() + IL_0005: callvirt instance class Virtuoso.Hyphen.Native.PLUGININFO Virtuoso.Hyphen.Loader::get_PluginInfo() + IL_000a: ldfld string Virtuoso.Hyphen.Native.PLUGININFO::HomePage + IL_000f: newobj instance void [System]System.Diagnostics.ProcessStartInfo::.ctor(string) + IL_0014: stloc.0 + .line 51,51 : 13,41 '' + IL_0015: ldloc.0 + IL_0016: ldc.i4.1 + IL_0017: callvirt instance void [System]System.Diagnostics.ProcessStartInfo::set_UseShellExecute(bool) + .line 53,53 : 13,33 '' + IL_001c: ldloc.0 + IL_001d: call class [System]System.Diagnostics.Process [System]System.Diagnostics.Process::Start(class [System]System.Diagnostics.ProcessStartInfo) + IL_0022: pop + .line 54,54 : 9,10 '' + IL_0023: ret + } // end of method AboutContent::HomepageLINK_LinkClicked + + .method family hidebysig virtual instance void + Dispose(bool disposing) cil managed + { + // Code size 30 (0x1e) + .maxstack 8 + .line 17,17 : 13,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Configuration\\Controls\\AboutContent.Designer.cs' + IL_0000: ldarg.1 + IL_0001: brfalse.s IL_0016 + + IL_0003: ldarg.0 + IL_0004: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Hyphen.Configuration.Controls.AboutContent::components + IL_0009: brfalse.s IL_0016 + + .line 19,19 : 17,38 '' + IL_000b: ldarg.0 + IL_000c: ldfld class [System]System.ComponentModel.IContainer Virtuoso.Hyphen.Configuration.Controls.AboutContent::components + IL_0011: callvirt instance void [mscorlib]System.IDisposable::Dispose() + .line 21,21 : 13,37 '' + IL_0016: ldarg.0 + IL_0017: ldarg.1 + IL_0018: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::Dispose(bool) + .line 22,22 : 9,10 '' + IL_001d: ret + } // end of method AboutContent::Dispose + + .method private hidebysig instance void + InitializeComponent() cil managed + { + // Code size 1652 (0x674) + .maxstack 6 + .locals init ([0] class [System]System.ComponentModel.ComponentResourceManager resources, + [1] object[] CS$0$0000) + .line 32,32 : 13,145 '' + IL_0000: ldtoken Virtuoso.Hyphen.Configuration.Controls.AboutContent + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: newobj instance void [System]System.ComponentModel.ComponentResourceManager::.ctor(class [mscorlib]System.Type) + IL_000f: stloc.0 + .line 33,33 : 13,106 '' + IL_0010: ldarg.0 + IL_0011: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor() + IL_0016: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + .line 34,34 : 13,107 '' + IL_001b: ldarg.0 + IL_001c: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::.ctor() + IL_0021: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + .line 35,35 : 13,66 '' + IL_0026: ldarg.0 + IL_0027: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_002c: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + .line 36,36 : 13,70 '' + IL_0031: ldarg.0 + IL_0032: newobj instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::.ctor() + IL_0037: stfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + .line 37,37 : 13,70 '' + IL_003c: ldarg.0 + IL_003d: newobj instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::.ctor() + IL_0042: stfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + .line 38,38 : 13,121 '' + IL_0047: ldarg.0 + IL_0048: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::.ctor() + IL_004d: stfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + .line 39,39 : 13,60 '' + IL_0052: ldarg.0 + IL_0053: newobj instance void [System.Windows.Forms]System.Windows.Forms.Label::.ctor() + IL_0058: stfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + .line 40,40 : 13,64 '' + IL_005d: ldarg.0 + IL_005e: newobj instance void [System.Windows.Forms]System.Windows.Forms.ListBox::.ctor() + IL_0063: stfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + .line 41,41 : 13,88 '' + IL_0068: ldarg.0 + IL_0069: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_006e: callvirt instance void [System]System.ComponentModel.ISupportInitialize::BeginInit() + .line 42,42 : 13,34 '' + IL_0073: ldarg.0 + IL_0074: call instance void [System.Windows.Forms]System.Windows.Forms.Control::SuspendLayout() + .line 46,46 : 13,70 '' + IL_0079: ldarg.0 + IL_007a: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_007f: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0084: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 47,47 : 13,133 '' + IL_0089: ldarg.0 + IL_008a: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_008f: ldc.i4 0xff + IL_0094: ldc.i4 0x80 + IL_0099: ldc.i4.0 + IL_009a: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_009f: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color(valuetype [System.Drawing]System.Drawing.Color) + .line 48,48 : 13,67 '' + IL_00a4: ldarg.0 + IL_00a5: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_00aa: ldc.i4.1 + IL_00ab: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Dock(valuetype [System.Windows.Forms]System.Windows.Forms.DockStyle) + .line 49,49 : 13,157 '' + IL_00b0: ldarg.0 + IL_00b1: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_00b6: ldstr "Tahoma" + IL_00bb: ldc.r4 8.25 + IL_00c0: ldc.i4.0 + IL_00c1: ldc.i4.3 + IL_00c2: ldc.i4 0xee + IL_00c7: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_00cc: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 50,50 : 13,157 '' + IL_00d1: ldarg.0 + IL_00d2: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_00d7: ldstr "Tahoma" + IL_00dc: ldc.r4 8. + IL_00e1: ldc.i4.1 + IL_00e2: ldc.i4.3 + IL_00e3: ldc.i4 0xee + IL_00e8: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_00ed: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont(class [System.Drawing]System.Drawing.Font) + .line 51,51 : 13,53 '' + IL_00f2: ldarg.0 + IL_00f3: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_00f8: ldstr "About Hyphen" + IL_00fd: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText(string) + .line 52,52 : 13,102 '' + IL_0102: ldarg.0 + IL_0103: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0108: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_232_32x32() + IL_010d: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image(class [System.Drawing]System.Drawing.Image) + .line 53,53 : 13,67 '' + IL_0112: ldarg.0 + IL_0113: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0118: ldc.i4.0 + IL_0119: ldc.i4.0 + IL_011a: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_011f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 54,54 : 13,72 '' + IL_0124: ldarg.0 + IL_0125: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_012a: ldc.i4 0x12c + IL_012f: ldc.i4.s 40 + IL_0131: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0136: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 55,55 : 13,41 '' + IL_013b: ldarg.0 + IL_013c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0141: ldstr "panel1" + IL_0146: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 56,56 : 13,65 '' + IL_014b: ldarg.0 + IL_014c: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0151: ldc.i4 0x318 + IL_0156: ldc.i4.s 40 + IL_0158: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_015d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 57,57 : 13,38 '' + IL_0162: ldarg.0 + IL_0163: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_0168: ldc.i4.0 + IL_0169: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 61,61 : 13,70 '' + IL_016e: ldarg.0 + IL_016f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_0174: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_0179: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 62,62 : 13,135 '' + IL_017e: ldarg.0 + IL_017f: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_0184: ldc.i4 0xff + IL_0189: ldc.i4 0xe0 + IL_018e: ldc.i4 0xc0 + IL_0193: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_0198: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_Color(valuetype [System.Drawing]System.Drawing.Color) + .line 63,63 : 13,154 '' + IL_019d: ldarg.0 + IL_019e: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_01a3: ldstr "Tahoma" + IL_01a8: ldc.r4 8.25 + IL_01ad: ldc.i4.1 + IL_01ae: ldc.i4.3 + IL_01af: ldc.i4 0xee + IL_01b4: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_01b9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 64,64 : 13,64 '' + IL_01be: ldarg.0 + IL_01bf: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_01c4: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Black() + IL_01c9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + .line 65,65 : 13,69 '' + IL_01ce: ldarg.0 + IL_01cf: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_01d4: ldc.i4.s 10 + IL_01d6: ldc.i4.s 46 + IL_01d8: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_01dd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 66,66 : 13,72 '' + IL_01e2: ldarg.0 + IL_01e3: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_01e8: ldc.i4 0x12c + IL_01ed: ldc.i4.s 20 + IL_01ef: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_01f4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 67,67 : 13,41 '' + IL_01f9: ldarg.0 + IL_01fa: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_01ff: ldstr "panel2" + IL_0204: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 68,68 : 13,48 '' + IL_0209: ldarg.0 + IL_020a: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_020f: ldstr "Hyphen" + IL_0214: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_SectionName(string) + .line 69,69 : 13,65 '' + IL_0219: ldarg.0 + IL_021a: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_021f: ldc.i4 0x2fd + IL_0224: ldc.i4.s 20 + IL_0226: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_022b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 70,70 : 13,38 '' + IL_0230: ldarg.0 + IL_0231: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_0236: ldc.i4.1 + IL_0237: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 74,74 : 13,47 '' + IL_023c: ldarg.0 + IL_023d: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_0242: ldc.i4.1 + IL_0243: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 75,75 : 13,157 '' + IL_0248: ldarg.0 + IL_0249: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_024e: ldstr "Tahoma" + IL_0253: ldc.r4 8. + IL_0258: ldc.i4.1 + IL_0259: ldc.i4.3 + IL_025a: ldc.i4 0xee + IL_025f: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0264: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 76,76 : 13,76 '' + IL_0269: ldarg.0 + IL_026a: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_026f: ldc.i4.s 127 + IL_0271: ldc.i4.s 72 + IL_0273: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_0278: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 77,77 : 13,53 '' + IL_027d: ldarg.0 + IL_027e: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_0283: ldstr "VersionLABEL" + IL_0288: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 78,78 : 13,70 '' + IL_028d: ldarg.0 + IL_028e: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_0293: ldc.i4.s 51 + IL_0295: ldc.i4.s 13 + IL_0297: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_029c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 79,79 : 13,44 '' + IL_02a1: ldarg.0 + IL_02a2: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_02a7: ldc.i4.2 + IL_02a8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 80,80 : 13,49 '' + IL_02ad: ldarg.0 + IL_02ae: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_02b3: ldstr "v0.0.0.0" + IL_02b8: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 84,84 : 13,47 '' + IL_02bd: ldarg.0 + IL_02be: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_02c3: ldc.i4.1 + IL_02c4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 85,85 : 13,76 '' + IL_02c9: ldarg.0 + IL_02ca: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_02cf: ldc.i4 0x82 + IL_02d4: ldc.i4.s 85 + IL_02d6: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_02db: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 86,86 : 13,53 '' + IL_02e0: ldarg.0 + IL_02e1: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_02e6: ldstr "HomepageLINK" + IL_02eb: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 87,87 : 13,71 '' + IL_02f0: ldarg.0 + IL_02f1: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_02f6: ldc.i4.s 121 + IL_02f8: ldc.i4.s 13 + IL_02fa: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_02ff: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 88,88 : 13,44 '' + IL_0304: ldarg.0 + IL_0305: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_030a: ldc.i4.3 + IL_030b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 89,89 : 13,46 '' + IL_0310: ldarg.0 + IL_0311: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_0316: ldc.i4.1 + IL_0317: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Label::set_TabStop(bool) + .line 90,90 : 13,63 '' + IL_031c: ldarg.0 + IL_031d: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_0322: ldstr bytearray (A9 00 20 00 28 00 41 00 73 00 73 00 65 00 6D 00 // .. .(.A.s.s.e.m. + 62 00 6C 00 79 00 20 00 63 00 6F 00 70 00 79 00 // b.l.y. .c.o.p.y. + 72 00 69 00 67 00 68 00 74 00 29 00 ) // r.i.g.h.t.). + IL_0327: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 91,91 : 13,135 '' + IL_032c: ldarg.0 + IL_032d: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_0332: ldarg.0 + IL_0333: ldftn instance void Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK_LinkClicked(object, + class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventArgs) + IL_0339: newobj instance void [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventHandler::.ctor(object, + native int) + IL_033e: callvirt instance void [System.Windows.Forms]System.Windows.Forms.LinkLabel::add_LinkClicked(class [System.Windows.Forms]System.Windows.Forms.LinkLabelLinkClickedEventHandler) + .line 95,95 : 13,105 '' + IL_0343: ldarg.0 + IL_0344: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_0349: ldloc.0 + IL_034a: ldstr "pictureBox1.Image" + IL_034f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string) + IL_0354: castclass [System.Drawing]System.Drawing.Image + IL_0359: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_Image(class [System.Drawing]System.Drawing.Image) + .line 96,96 : 13,74 '' + IL_035e: ldarg.0 + IL_035f: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_0364: ldc.i4.s 21 + IL_0366: ldc.i4.s 72 + IL_0368: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_036d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 97,97 : 13,51 '' + IL_0372: ldarg.0 + IL_0373: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_0378: ldstr "pictureBox1" + IL_037d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 98,98 : 13,70 '' + IL_0382: ldarg.0 + IL_0383: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_0388: ldc.i4.s 100 + IL_038a: ldc.i4.s 50 + IL_038c: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0391: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 99,99 : 13,90 '' + IL_0396: ldarg.0 + IL_0397: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_039c: ldc.i4.2 + IL_039d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_SizeMode(valuetype [System.Windows.Forms]System.Windows.Forms.PictureBoxSizeMode) + .line 100,100 : 13,43 '' + IL_03a2: ldarg.0 + IL_03a3: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_03a8: ldc.i4.5 + IL_03a9: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabIndex(int32) + .line 101,101 : 13,46 '' + IL_03ae: ldarg.0 + IL_03af: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_03b4: ldc.i4.0 + IL_03b5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.PictureBox::set_TabStop(bool) + .line 105,105 : 13,84 '' + IL_03ba: ldarg.0 + IL_03bb: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_03c0: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Transparent() + IL_03c5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_BackColor(valuetype [System.Drawing]System.Drawing.Color) + .line 106,106 : 13,149 '' + IL_03ca: ldarg.0 + IL_03cb: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_03d0: ldc.i4 0xff + IL_03d5: ldc.i4 0xe0 + IL_03da: ldc.i4 0xc0 + IL_03df: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::FromArgb(int32, + int32, + int32) + IL_03e4: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_Color(valuetype [System.Drawing]System.Drawing.Color) + .line 107,107 : 13,168 '' + IL_03e9: ldarg.0 + IL_03ea: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_03ef: ldstr "Tahoma" + IL_03f4: ldc.r4 8.25 + IL_03f9: ldc.i4.1 + IL_03fa: ldc.i4.3 + IL_03fb: ldc.i4 0xee + IL_0400: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_0405: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 108,108 : 13,78 '' + IL_040a: ldarg.0 + IL_040b: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0410: call valuetype [System.Drawing]System.Drawing.Color [System.Drawing]System.Drawing.Color::get_Black() + IL_0415: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_ForeColor(valuetype [System.Drawing]System.Drawing.Color) + .line 109,109 : 13,84 '' + IL_041a: ldarg.0 + IL_041b: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0420: ldc.i4.s 10 + IL_0422: ldc.i4 0x95 + IL_0427: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_042c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 110,110 : 13,86 '' + IL_0431: ldarg.0 + IL_0432: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0437: ldc.i4 0x12c + IL_043c: ldc.i4.s 20 + IL_043e: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_0443: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_MinimumSize(valuetype [System.Drawing]System.Drawing.Size) + .line 111,111 : 13,69 '' + IL_0448: ldarg.0 + IL_0449: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_044e: ldstr "categoryItemSection1" + IL_0453: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 112,112 : 13,66 '' + IL_0458: ldarg.0 + IL_0459: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_045e: ldstr "Components" + IL_0463: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_SectionName(string) + .line 113,113 : 13,79 '' + IL_0468: ldarg.0 + IL_0469: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_046e: ldc.i4 0x2fd + IL_0473: ldc.i4.s 20 + IL_0475: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_047a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 114,114 : 13,52 '' + IL_047f: ldarg.0 + IL_0480: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0485: ldc.i4.4 + IL_0486: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 118,118 : 13,41 '' + IL_048b: ldarg.0 + IL_048c: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_0491: ldc.i4.1 + IL_0492: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_AutoSize(bool) + .line 119,119 : 13,151 '' + IL_0497: ldarg.0 + IL_0498: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_049d: ldstr "Tahoma" + IL_04a2: ldc.r4 8. + IL_04a7: ldc.i4.1 + IL_04a8: ldc.i4.3 + IL_04a9: ldc.i4 0xee + IL_04ae: newobj instance void [System.Drawing]System.Drawing.Font::.ctor(string, + float32, + valuetype [System.Drawing]System.Drawing.FontStyle, + valuetype [System.Drawing]System.Drawing.GraphicsUnit, + uint8) + IL_04b3: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Font(class [System.Drawing]System.Drawing.Font) + .line 120,120 : 13,70 '' + IL_04b8: ldarg.0 + IL_04b9: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_04be: ldc.i4.s 18 + IL_04c0: ldc.i4 0xac + IL_04c5: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_04ca: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 121,121 : 13,41 '' + IL_04cf: ldarg.0 + IL_04d0: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_04d5: ldstr "label1" + IL_04da: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 122,122 : 13,65 '' + IL_04df: ldarg.0 + IL_04e0: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_04e5: ldc.i4 0xef + IL_04ea: ldc.i4.s 13 + IL_04ec: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_04f1: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 123,123 : 13,38 '' + IL_04f6: ldarg.0 + IL_04f7: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_04fc: ldc.i4.5 + IL_04fd: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 124,124 : 13,74 '' + IL_0502: ldarg.0 + IL_0503: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_0508: ldstr "Hyphen uses these 3rd party assemblies:" + IL_050d: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) + .line 128,128 : 13,79 '' + IL_0512: ldarg.0 + IL_0513: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0518: ldc.i4.0 + IL_0519: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListBox::set_BorderStyle(valuetype [System.Windows.Forms]System.Windows.Forms.BorderStyle) + .line 129,129 : 13,52 '' + IL_051e: ldarg.0 + IL_051f: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0524: ldc.i4.1 + IL_0525: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListControl::set_FormattingEnabled(bool) + .line 130,131 : 13,48 '' + IL_052a: ldarg.0 + IL_052b: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0530: callvirt instance class [System.Windows.Forms]System.Windows.Forms.ListBox/ObjectCollection [System.Windows.Forms]System.Windows.Forms.ListBox::get_Items() + IL_0535: ldc.i4.1 + IL_0536: newarr [mscorlib]System.Object + IL_053b: stloc.1 + IL_053c: ldloc.1 + IL_053d: ldc.i4.0 + IL_053e: ldstr bytearray (52 00 69 00 62 00 62 00 6F 00 6E 00 50 00 61 00 // R.i.b.b.o.n.P.a. + 6E 00 65 00 6C 00 2C 00 20 00 A9 00 20 00 4A 00 // n.e.l.,. ... .J. + 75 00 61 00 6E 00 20 00 50 00 61 00 62 00 6C 00 // u.a.n. .P.a.b.l. + 6F 00 20 00 47 00 2E 00 43 00 2E 00 ) // o. .G...C... + IL_0543: stelem.ref + IL_0544: ldloc.1 + IL_0545: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListBox/ObjectCollection::AddRange(object[]) + .line 132,132 : 13,72 '' + IL_054a: ldarg.0 + IL_054b: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0550: ldc.i4.s 33 + IL_0552: ldc.i4 0xbc + IL_0557: newobj instance void [System.Drawing]System.Drawing.Point::.ctor(int32, + int32) + IL_055c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Location(valuetype [System.Drawing]System.Drawing.Point) + .line 133,133 : 13,45 '' + IL_0561: ldarg.0 + IL_0562: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0567: ldstr "listBox1" + IL_056c: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 134,134 : 13,83 '' + IL_0571: ldarg.0 + IL_0572: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0577: ldc.i4.0 + IL_0578: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListBox::set_SelectionMode(valuetype [System.Windows.Forms]System.Windows.Forms.SelectionMode) + .line 135,135 : 13,68 '' + IL_057d: ldarg.0 + IL_057e: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_0583: ldc.i4 0xe0 + IL_0588: ldc.i4.s 104 + IL_058a: newobj instance void [System.Drawing]System.Drawing.Size::.ctor(int32, + int32) + IL_058f: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Size(valuetype [System.Drawing]System.Drawing.Size) + .line 136,136 : 13,41 '' + IL_0594: ldarg.0 + IL_0595: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_059a: ldc.i4.1 + IL_059b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.ListBox::set_Sorted(bool) + .line 137,137 : 13,40 '' + IL_05a0: ldarg.0 + IL_05a1: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_05a6: ldc.i4.6 + IL_05a7: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control::set_TabIndex(int32) + .line 141,141 : 13,74 '' + IL_05ac: ldarg.0 + IL_05ad: ldc.r4 6. + IL_05b2: ldc.r4 13. + IL_05b7: newobj instance void [System.Drawing]System.Drawing.SizeF::.ctor(float32, + float32) + IL_05bc: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleDimensions(valuetype [System.Drawing]System.Drawing.SizeF) + .line 142,142 : 13,74 '' + IL_05c1: ldarg.0 + IL_05c2: ldc.i4.1 + IL_05c3: call instance void [System.Windows.Forms]System.Windows.Forms.ContainerControl::set_AutoScaleMode(valuetype [System.Windows.Forms]System.Windows.Forms.AutoScaleMode) + .line 143,143 : 13,46 '' + IL_05c8: ldarg.0 + IL_05c9: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_05ce: ldarg.0 + IL_05cf: ldfld class [System.Windows.Forms]System.Windows.Forms.ListBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::listBox1 + IL_05d4: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 144,144 : 13,44 '' + IL_05d9: ldarg.0 + IL_05da: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_05df: ldarg.0 + IL_05e0: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::label1 + IL_05e5: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 145,145 : 13,49 '' + IL_05ea: ldarg.0 + IL_05eb: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_05f0: ldarg.0 + IL_05f1: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_05f6: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 146,146 : 13,50 '' + IL_05fb: ldarg.0 + IL_05fc: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0601: ldarg.0 + IL_0602: ldfld class [System.Windows.Forms]System.Windows.Forms.LinkLabel Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK + IL_0607: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 147,147 : 13,50 '' + IL_060c: ldarg.0 + IL_060d: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0612: ldarg.0 + IL_0613: ldfld class [System.Windows.Forms]System.Windows.Forms.Label Virtuoso.Hyphen.Configuration.Controls.AboutContent::VersionLABEL + IL_0618: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 148,148 : 13,58 '' + IL_061d: ldarg.0 + IL_061e: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0623: ldarg.0 + IL_0624: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::categoryItemSection1 + IL_0629: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 149,149 : 13,44 '' + IL_062e: ldarg.0 + IL_062f: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0634: ldarg.0 + IL_0635: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel2 + IL_063a: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 150,150 : 13,44 '' + IL_063f: ldarg.0 + IL_0640: call instance class [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection [System.Windows.Forms]System.Windows.Forms.Control::get_Controls() + IL_0645: ldarg.0 + IL_0646: ldfld class Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader Virtuoso.Hyphen.Configuration.Controls.AboutContent::panel1 + IL_064b: callvirt instance void [System.Windows.Forms]System.Windows.Forms.Control/ControlCollection::Add(class [System.Windows.Forms]System.Windows.Forms.Control) + .line 151,151 : 13,40 '' + IL_0650: ldarg.0 + IL_0651: ldstr "AboutContent" + IL_0656: call instance void [System.Windows.Forms]System.Windows.Forms.Control::set_Name(string) + .line 152,152 : 13,86 '' + IL_065b: ldarg.0 + IL_065c: ldfld class [System.Windows.Forms]System.Windows.Forms.PictureBox Virtuoso.Hyphen.Configuration.Controls.AboutContent::pictureBox1 + IL_0661: callvirt instance void [System]System.ComponentModel.ISupportInitialize::EndInit() + .line 153,153 : 13,38 '' + IL_0666: ldarg.0 + IL_0667: ldc.i4.0 + IL_0668: call instance void [System.Windows.Forms]System.Windows.Forms.Control::ResumeLayout(bool) + .line 154,154 : 13,34 '' + IL_066d: ldarg.0 + IL_066e: call instance void [System.Windows.Forms]System.Windows.Forms.Control::PerformLayout() + .line 156,156 : 9,10 '' + IL_0673: ret + } // end of method AboutContent::InitializeComponent + +} // end of class Virtuoso.Hyphen.Configuration.Controls.AboutContent + +.class public abstract auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + extends [mscorlib]System.Object +{ + .field private static initonly object SyncObject + .field private static initonly class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Stores + .field private static initonly class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Encryptions + .field assembly initonly class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues values + .field private bool isDirty + .field private notserialized class [mscorlib]System.EventHandler ConfigurationChanged + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 47,47 : 9,40 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\PluginConfiguration.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 49,49 : 13,48 '' + IL_0006: ldarg.0 + IL_0007: newobj instance void Virtuoso.Miranda.Plugins.Collections.ConfigurationValues::.ctor() + IL_000c: stfld class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::values + .line 50,50 : 9,10 '' + IL_0011: ret + } // end of method PluginConfiguration::.ctor + + .method family hidebysig newslot virtual + instance void InitializeDefaultConfiguration() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 52,52 : 67,68 '' + IL_0000: ret + } // end of method PluginConfiguration::InitializeDefaultConfiguration + + .method public hidebysig specialname instance void + add_ConfigurationChanged(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Combine(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method PluginConfiguration::add_ConfigurationChanged + + .method public hidebysig specialname instance void + remove_ConfigurationChanged(class [mscorlib]System.EventHandler 'value') cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init (class [mscorlib]System.EventHandler V_0, + class [mscorlib]System.EventHandler V_1, + class [mscorlib]System.EventHandler V_2) + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: stloc.1 + IL_0009: ldloc.1 + IL_000a: ldarg.1 + IL_000b: call class [mscorlib]System.Delegate [mscorlib]System.Delegate::Remove(class [mscorlib]System.Delegate, + class [mscorlib]System.Delegate) + IL_0010: castclass [mscorlib]System.EventHandler + IL_0015: stloc.2 + IL_0016: ldarg.0 + IL_0017: ldflda class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_001c: ldloc.2 + IL_001d: ldloc.1 + IL_001e: call !!0 [mscorlib]System.Threading.Interlocked::CompareExchange(!!0&, + !!0, + !!0) + IL_0023: stloc.0 + IL_0024: ldloc.0 + IL_0025: ldloc.1 + IL_0026: bne.un.s IL_0007 + + IL_0028: ret + } // end of method PluginConfiguration::remove_ConfigurationChanged + + .method family hidebysig instance void + RaiseChangedEvent() cil managed + { + // Code size 26 (0x1a) + .maxstack 8 + .line 63,63 : 13,46 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_0006: brfalse.s IL_0019 + + .line 64,64 : 17,61 '' + IL_0008: ldarg.0 + IL_0009: ldfld class [mscorlib]System.EventHandler Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::ConfigurationChanged + IL_000e: ldarg.0 + IL_000f: ldsfld class [mscorlib]System.EventArgs [mscorlib]System.EventArgs::Empty + IL_0014: callvirt instance void [mscorlib]System.EventHandler::Invoke(object, + class [mscorlib]System.EventArgs) + .line 65,65 : 9,10 '' + IL_0019: ret + } // end of method PluginConfiguration::RaiseChangedEvent + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues + get_Values() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 75,75 : 17,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::values + IL_0006: ret + } // end of method PluginConfiguration::get_Values + + .method public hidebysig specialname instance bool + get_IsDirty() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 83,83 : 17,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::isDirty + IL_0006: ret + } // end of method PluginConfiguration::get_IsDirty + + .method famorassem hidebysig specialname + instance void set_IsDirty(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 87,87 : 17,33 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::isDirty + .line 88,88 : 13,14 '' + IL_0007: ret + } // end of method PluginConfiguration::set_IsDirty + + .method family hidebysig newslot virtual + instance void OnBeforeSerialization() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 95,95 : 58,59 '' + IL_0000: ret + } // end of method PluginConfiguration::OnBeforeSerialization + + .method family hidebysig newslot virtual + instance void OnAfterDeserialization() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 97,97 : 59,60 '' + IL_0000: ret + } // end of method PluginConfiguration::OnAfterDeserialization + + .method family hidebysig instance void + MarkDirty() cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 101,101 : 13,28 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::set_IsDirty(bool) + .line 102,102 : 13,33 '' + IL_0007: ldarg.0 + IL_0008: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::RaiseChangedEvent() + .line 103,103 : 9,10 '' + IL_000d: ret + } // end of method PluginConfiguration::MarkDirty + + .method private hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + GetOptions(class [mscorlib]System.Type configType) cil managed + { + // Code size 68 (0x44) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options, + [1] class [mscorlib]System.Type configAttribType) + .line 109,109 : 13,36 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 110,110 : 17,63 '' + IL_0003: ldstr "configType" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 112,112 : 13,58 '' + IL_000e: ldnull + IL_000f: stloc.0 + .line 113,113 : 13,75 '' + IL_0010: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + IL_0015: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_001a: stloc.1 + .line 115,115 : 13,63 '' + IL_001b: ldarg.0 + IL_001c: ldloc.1 + IL_001d: ldc.i4.0 + IL_001e: callvirt instance bool [mscorlib]System.Reflection.MemberInfo::IsDefined(class [mscorlib]System.Type, + bool) + IL_0023: brfalse.s IL_0037 + + .line 116,116 : 17,117 '' + IL_0025: ldarg.0 + IL_0026: ldloc.1 + IL_0027: ldc.i4.0 + IL_0028: callvirt instance object[] [mscorlib]System.Reflection.MemberInfo::GetCustomAttributes(class [mscorlib]System.Type, + bool) + IL_002d: ldc.i4.0 + IL_002e: ldelem.ref + IL_002f: castclass Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + IL_0034: stloc.0 + IL_0035: br.s IL_003d + + .line 118,118 : 17,63 '' + IL_0037: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor() + IL_003c: stloc.0 + .line 120,120 : 13,39 '' + IL_003d: ldloc.0 + IL_003e: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::Finalize() + IL_0043: ret + } // end of method PluginConfiguration::GetOptions + + .method private hidebysig static uint8[] + FetchStream(class [mscorlib]System.IO.Stream 'stream') cil managed + { + // Code size 69 (0x45) + .maxstack 4 + .locals init ([0] uint8[] buffer) + .line 125,125 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 126,126 : 17,59 '' + IL_0003: ldstr "stream" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 128,128 : 13,33 '' + IL_000e: ldarg.0 + IL_000f: callvirt instance bool [mscorlib]System.IO.Stream::get_CanRead() + IL_0014: brtrue.s IL_001c + + .line 129,129 : 17,47 '' + IL_0016: newobj instance void [mscorlib]System.ArgumentException::.ctor() + IL_001b: throw + + .line 131,131 : 13,53 '' + IL_001c: ldarg.0 + IL_001d: callvirt instance int64 [mscorlib]System.IO.Stream::get_Length() + IL_0022: conv.ovf.i + IL_0023: newarr [mscorlib]System.Byte + IL_0028: stloc.0 + .line 133,133 : 13,72 '' + IL_0029: ldarg.0 + IL_002a: ldloc.0 + IL_002b: ldc.i4.0 + IL_002c: ldloc.0 + IL_002d: ldlen + IL_002e: conv.i4 + IL_002f: callvirt instance int32 [mscorlib]System.IO.Stream::Read(uint8[], + int32, + int32) + IL_0034: conv.i8 + IL_0035: ldarg.0 + IL_0036: callvirt instance int64 [mscorlib]System.IO.Stream::get_Length() + IL_003b: beq.s IL_0043 + + .line 134,134 : 17,41 '' + IL_003d: newobj instance void [mscorlib]System.IO.IOException::.ctor() + IL_0042: throw + + .line 136,136 : 13,27 '' + IL_0043: ldloc.0 + IL_0044: ret + } // end of method PluginConfiguration::FetchStream + + .method assembly hidebysig static void + FlushCaches() cil managed + { + // Code size 99 (0x63) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.IStorage 'storage', + [1] object CS$2$0000, + [2] valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator CS$5$0001) + .line 141,141 : 13,30 '' + IL_0000: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SyncObject + IL_0005: dup + IL_0006: stloc.1 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 143,143 : 46,59 '' + .try + { + IL_000c: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Stores + IL_0011: callvirt instance class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection class [mscorlib]System.Collections.Generic.Dictionary`2::get_Values() + IL_0016: callvirt instance valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator class [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection::GetEnumerator() + IL_001b: stloc.2 + .try + { + IL_001c: br.s IL_002c + + .line 143,143 : 26,42 '' + IL_001e: ldloca.s CS$5$0001 + IL_0020: call instance !1 valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::get_Current() + IL_0025: stloc.0 + .line 144,144 : 21,39 '' + IL_0026: ldloc.0 + IL_0027: callvirt instance void [mscorlib]System.IDisposable::Dispose() + .line 143,143 : 43,45 '' + IL_002c: ldloca.s CS$5$0001 + IL_002e: call instance bool valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator::MoveNext() + IL_0033: brtrue.s IL_001e + + IL_0035: leave.s IL_0045 + + } // end .try + finally + { + IL_0037: ldloca.s CS$5$0001 + IL_0039: constrained. valuetype [mscorlib]System.Collections.Generic.Dictionary`2/ValueCollection/Enumerator + IL_003f: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0044: endfinally + .line 146,146 : 17,32 '' + } // end handler + IL_0045: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Stores + IL_004a: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + .line 147,147 : 17,37 '' + IL_004f: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Encryptions + IL_0054: callvirt instance void class [mscorlib]System.Collections.Generic.Dictionary`2::Clear() + IL_0059: leave.s IL_0062 + + } // end .try + finally + { + IL_005b: ldloc.1 + IL_005c: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0061: endfinally + .line 149,149 : 9,10 '' + } // end handler + IL_0062: ret + } // end of method PluginConfiguration::FlushCaches + + .method public hidebysig instance void + Save() cil managed + { + // Code size 98 (0x62) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options, + [1] class Virtuoso.Miranda.Plugins.Configuration.IStorage 'storage', + [2] class [mscorlib]System.IO.IsolatedStorage.IsolatedStorageException isE, + [3] object CS$2$0000) + .line 159,159 : 17,34 '' + .try + { + IL_0000: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SyncObject + IL_0005: dup + IL_0006: stloc.3 + IL_0007: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 161,161 : 21,45 '' + .try + { + IL_000c: ldarg.0 + IL_000d: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::OnBeforeSerialization() + .line 163,163 : 21,83 '' + IL_0012: ldarg.0 + IL_0013: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0018: call class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetOptions(class [mscorlib]System.Type) + IL_001d: stloc.0 + .line 164,164 : 21,76 '' + IL_001e: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Stores + IL_0023: ldloc.0 + IL_0024: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Storage() + IL_0029: callvirt instance !0 class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::Instantiate(class [mscorlib]System.Type) + IL_002e: stloc.1 + .line 166,166 : 21,41 '' + IL_002f: ldloc.0 + IL_0030: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encrypt() + IL_0035: brfalse.s IL_0041 + + .line 167,167 : 25,62 '' + IL_0037: ldarg.0 + IL_0038: ldloc.1 + IL_0039: ldloc.0 + IL_003a: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SerializeEncrypted(class Virtuoso.Miranda.Plugins.Configuration.IStorage, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_003f: br.s IL_0049 + + .line 169,169 : 25,53 '' + IL_0041: ldarg.0 + IL_0042: ldloc.1 + IL_0043: ldloc.0 + IL_0044: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Serialize(class Virtuoso.Miranda.Plugins.Configuration.IStorage, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0049: leave.s IL_0052 + + } // end .try + finally + { + IL_004b: ldloc.3 + IL_004c: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0051: endfinally + } // end handler + IL_0052: leave.s IL_0061 + + .line 172,172 : 13,49 '' + } // end .try + catch [mscorlib]System.IO.IsolatedStorage.IsolatedStorageException + { + IL_0054: stloc.2 + .line 174,174 : 17,122 '' + IL_0055: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToSaveConfiguration_StorageError() + IL_005a: ldloc.2 + IL_005b: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor(string, + class [mscorlib]System.Exception) + IL_0060: throw + + .line 176,176 : 9,10 '' + } // end handler + IL_0061: ret + } // end of method PluginConfiguration::Save + + .method private hidebysig instance void + Serialize(class Virtuoso.Miranda.Plugins.Configuration.IStorage 'storage', + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 41 (0x29) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter serializer, + [1] class [mscorlib]System.IO.Stream 'stream') + .line 180,180 : 13,64 '' + IL_0000: newobj instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::.ctor() + IL_0005: stloc.0 + .line 182,182 : 20,73 '' + IL_0006: ldarg.1 + IL_0007: ldarg.0 + IL_0008: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_000d: ldarg.2 + IL_000e: callvirt instance class [mscorlib]System.IO.Stream Virtuoso.Miranda.Plugins.Configuration.IStorage::OpenWrite(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0013: stloc.1 + .line 183,183 : 17,52 '' + .try + { + IL_0014: ldloc.0 + IL_0015: ldloc.1 + IL_0016: ldarg.0 + IL_0017: callvirt instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::Serialize(class [mscorlib]System.IO.Stream, + object) + IL_001c: leave.s IL_0028 + + } // end .try + finally + { + IL_001e: ldloc.1 + IL_001f: brfalse.s IL_0027 + + IL_0021: ldloc.1 + IL_0022: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0027: endfinally + .line 184,184 : 9,10 '' + } // end handler + IL_0028: ret + } // end of method PluginConfiguration::Serialize + + .method private hidebysig instance void + SerializeEncrypted(class Virtuoso.Miranda.Plugins.Configuration.IStorage 'storage', + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 119 (0x77) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.IEncryption encryption, + [1] class [mscorlib]System.IO.Stream serializationStream, + [2] uint8[] data, + [3] uint8[] protectedData, + [4] class [mscorlib]System.IO.Stream 'stream') + .line 188,188 : 13,82 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Encryptions + IL_0005: ldarg.2 + IL_0006: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encryption() + IL_000b: callvirt instance !0 class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::Instantiate(class [mscorlib]System.Type) + IL_0010: stloc.0 + .line 190,190 : 20,71 '' + IL_0011: ldc.i4 0x800 + IL_0016: newobj instance void [mscorlib]System.IO.MemoryStream::.ctor(int32) + IL_001b: stloc.1 + .line 192,192 : 17,76 '' + .try + { + IL_001c: newobj instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::.ctor() + IL_0021: ldloc.1 + IL_0022: ldarg.0 + IL_0023: call instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::Serialize(class [mscorlib]System.IO.Stream, + object) + .line 193,193 : 17,63 '' + IL_0028: ldloc.1 + IL_0029: ldc.i4.0 + IL_002a: conv.i8 + IL_002b: ldc.i4.0 + IL_002c: callvirt instance int64 [mscorlib]System.IO.Stream::Seek(int64, + valuetype [mscorlib]System.IO.SeekOrigin) + IL_0031: pop + .line 195,195 : 17,64 '' + IL_0032: ldloc.1 + IL_0033: call uint8[] Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::FetchStream(class [mscorlib]System.IO.Stream) + IL_0038: stloc.2 + .line 196,196 : 17,65 '' + IL_0039: ldloc.0 + IL_003a: ldloc.2 + IL_003b: callvirt instance uint8[] Virtuoso.Miranda.Plugins.Configuration.IEncryption::Encrypt(uint8[]) + IL_0040: stloc.3 + .line 198,198 : 24,77 '' + IL_0041: ldarg.1 + IL_0042: ldarg.0 + IL_0043: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0048: ldarg.2 + IL_0049: callvirt instance class [mscorlib]System.IO.Stream Virtuoso.Miranda.Plugins.Configuration.IStorage::OpenWrite(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_004e: stloc.s 'stream' + .line 199,199 : 21,74 '' + .try + { + IL_0050: ldloc.s 'stream' + IL_0052: ldloc.3 + IL_0053: ldc.i4.0 + IL_0054: ldloc.3 + IL_0055: ldlen + IL_0056: conv.i4 + IL_0057: callvirt instance void [mscorlib]System.IO.Stream::Write(uint8[], + int32, + int32) + IL_005c: leave.s IL_006a + + } // end .try + finally + { + IL_005e: ldloc.s 'stream' + IL_0060: brfalse.s IL_0069 + + IL_0062: ldloc.s 'stream' + IL_0064: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0069: endfinally + } // end handler + IL_006a: leave.s IL_0076 + + } // end .try + finally + { + IL_006c: ldloc.1 + IL_006d: brfalse.s IL_0075 + + IL_006f: ldloc.1 + IL_0070: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0075: endfinally + .line 201,201 : 9,10 '' + } // end handler + IL_0076: ret + } // end of method PluginConfiguration::SerializeEncrypted + + .method public hidebysig static !!T Load<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) T>() cil managed + { + // Code size 204 (0xcc) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Type configType, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options, + [2] class Virtuoso.Miranda.Plugins.Configuration.IStorage 'storage', + [3] class [mscorlib]System.IO.Stream 'stream', + [4] !!T result, + [5] class [mscorlib]System.OperationCanceledException e, + [6] class [mscorlib]System.Exception V_6, + [7] !!T defaults, + [8] !!T CS$1$0000, + [9] object CS$2$0001) + .line 211,211 : 17,34 '' + .try + { + IL_0000: ldsfld object Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SyncObject + IL_0005: dup + IL_0006: stloc.s CS$2$0001 + IL_0008: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 213,213 : 21,49 '' + .try + { + IL_000d: ldtoken !!T + IL_0012: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0017: stloc.0 + .line 214,214 : 21,84 '' + IL_0018: ldloc.0 + IL_0019: call class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetOptions(class [mscorlib]System.Type) + IL_001e: stloc.1 + .line 216,216 : 21,76 '' + IL_001f: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Stores + IL_0024: ldloc.1 + IL_0025: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Storage() + IL_002a: callvirt instance !0 class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::Instantiate(class [mscorlib]System.Type) + IL_002f: stloc.2 + .line 218,218 : 21,62 '' + IL_0030: ldloc.2 + IL_0031: ldloc.0 + IL_0032: ldloc.1 + IL_0033: callvirt instance bool Virtuoso.Miranda.Plugins.Configuration.IStorage::Exists(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0038: brtrue.s IL_0046 + + .line 219,219 : 25,61 '' + IL_003a: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration() + IL_003f: stloc.s CS$1$0000 + IL_0041: leave IL_00c9 + + .line 221,221 : 28,81 '' + IL_0046: ldloc.2 + IL_0047: ldloc.0 + IL_0048: ldloc.1 + IL_0049: callvirt instance class [mscorlib]System.IO.Stream Virtuoso.Miranda.Plugins.Configuration.IStorage::OpenRead(class [mscorlib]System.Type, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_004e: stloc.3 + .line 223,223 : 25,41 '' + .try + { + IL_004f: ldloca.s result + IL_0051: initobj !!T + .line 225,225 : 25,45 '' + IL_0057: ldloc.1 + IL_0058: callvirt instance bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encrypt() + IL_005d: brfalse.s IL_006a + + .line 226,226 : 29,79 '' + IL_005f: ldloc.3 + IL_0060: ldloc.1 + IL_0061: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::DeserializeEncrypted(class [mscorlib]System.IO.Stream, + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute) + IL_0066: stloc.s result + IL_0068: br.s IL_0072 + + .line 228,228 : 29,61 '' + IL_006a: ldloc.3 + IL_006b: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Deserialize(class [mscorlib]System.IO.Stream) + IL_0070: stloc.s result + .line 230,230 : 25,57 '' + IL_0072: ldloca.s result + IL_0074: constrained. !!T + IL_007a: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::OnAfterDeserialization() + .line 231,231 : 25,39 '' + IL_007f: ldloc.s result + IL_0081: stloc.s CS$1$0000 + IL_0083: leave.s IL_00c9 + + } // end .try + finally + { + IL_0085: ldloc.3 + IL_0086: brfalse.s IL_008e + + IL_0088: ldloc.3 + IL_0089: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_008e: endfinally + } // end handler + } // end .try + finally + { + IL_008f: ldloc.s CS$2$0001 + IL_0091: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0096: endfinally + .line 235,235 : 13,49 '' + } // end handler + } // end .try + catch [mscorlib]System.OperationCanceledException + { + IL_0097: stloc.s e + .line 237,237 : 17,120 '' + IL_0099: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToLoadConfiguration_StorageError() + IL_009e: ldloc.s e + IL_00a0: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor(string, + class [mscorlib]System.Exception) + IL_00a5: throw + + .line 239,239 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_00a6: stloc.s V_6 + .line 241,241 : 17,59 '' + IL_00a8: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration() + IL_00ad: stloc.s defaults + .line 242,242 : 17,33 '' + IL_00af: ldloca.s defaults + IL_00b1: constrained. !!T + IL_00b7: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save() + .line 244,244 : 17,120 '' + IL_00bc: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToLoadConfiguration_StorageError() + IL_00c1: ldloc.s V_6 + IL_00c3: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor(string, + class [mscorlib]System.Exception) + IL_00c8: throw + + .line 246,246 : 9,10 '' + } // end handler + IL_00c9: ldloc.s CS$1$0000 + IL_00cb: ret + } // end of method PluginConfiguration::Load + + .method private hidebysig static !!T Deserialize<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) T>(class [mscorlib]System.IO.Stream 'stream') cil managed + { + // Code size 22 (0x16) + .maxstack 8 + .line 250,250 : 13,67 '' + IL_0000: newobj instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::.ctor() + IL_0005: ldarg.0 + IL_0006: call instance object [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::Deserialize(class [mscorlib]System.IO.Stream) + IL_000b: isinst !!T + IL_0010: unbox.any !!T + IL_0015: ret + } // end of method PluginConfiguration::Deserialize + + .method private hidebysig static !!T DeserializeEncrypted<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) T>(class [mscorlib]System.IO.Stream 'stream', + class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute options) cil managed + { + // Code size 73 (0x49) + .maxstack 2 + .locals init ([0] uint8[] protectedData, + [1] uint8[] data, + [2] class [mscorlib]System.IO.Stream serializedStream, + [3] !!T CS$1$0000) + .line 255,255 : 13,56 '' + IL_0000: ldarg.0 + IL_0001: call uint8[] Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::FetchStream(class [mscorlib]System.IO.Stream) + IL_0006: stloc.0 + .line 256,256 : 13,94 '' + IL_0007: ldsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Encryptions + IL_000c: ldarg.1 + IL_000d: callvirt instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encryption() + IL_0012: callvirt instance !0 class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::Instantiate(class [mscorlib]System.Type) + IL_0017: ldloc.0 + IL_0018: callvirt instance uint8[] Virtuoso.Miranda.Plugins.Configuration.IEncryption::Decrypt(uint8[]) + IL_001d: stloc.1 + .line 258,258 : 20,68 '' + IL_001e: ldloc.1 + IL_001f: newobj instance void [mscorlib]System.IO.MemoryStream::.ctor(uint8[]) + IL_0024: stloc.2 + .line 259,259 : 17,81 '' + .try + { + IL_0025: newobj instance void [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::.ctor() + IL_002a: ldloc.2 + IL_002b: call instance object [mscorlib]System.Runtime.Serialization.Formatters.Binary.BinaryFormatter::Deserialize(class [mscorlib]System.IO.Stream) + IL_0030: isinst !!T + IL_0035: unbox.any !!T + IL_003a: stloc.3 + IL_003b: leave.s IL_0047 + + } // end .try + finally + { + IL_003d: ldloc.2 + IL_003e: brfalse.s IL_0046 + + IL_0040: ldloc.2 + IL_0041: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0046: endfinally + .line 260,260 : 9,10 '' + } // end handler + IL_0047: ldloc.3 + IL_0048: ret + } // end of method PluginConfiguration::DeserializeEncrypted + + .method public hidebysig static !!TConfig + GetDefaultConfiguration<(Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration) TConfig>() cil managed + { + // Code size 56 (0x38) + .maxstack 2 + .locals init ([0] !!TConfig result) + .line 264,264 : 13,89 '' + IL_0000: ldtoken !!TConfig + IL_0005: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_000a: ldc.i4.1 + IL_000b: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type, + bool) + IL_0010: isinst !!TConfig + IL_0015: unbox.any !!TConfig + IL_001a: stloc.0 + .line 266,266 : 13,32 '' + IL_001b: ldloc.0 + IL_001c: box !!TConfig + IL_0021: brtrue.s IL_0029 + + .line 267,267 : 17,52 '' + IL_0023: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor() + IL_0028: throw + + .line 269,269 : 13,53 '' + IL_0029: ldloca.s result + IL_002b: constrained. !!TConfig + IL_0031: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::InitializeDefaultConfiguration() + .line 270,270 : 13,27 '' + IL_0036: ldloc.0 + IL_0037: ret + } // end of method PluginConfiguration::GetDefaultConfiguration + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 31 (0x1f) + .maxstack 8 + .line 34,34 : 9,66 '' + IL_0000: newobj instance void [mscorlib]System.Object::.ctor() + IL_0005: stsfld object Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SyncObject + .line 36,36 : 9,104 '' + IL_000a: newobj instance void class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::.ctor() + IL_000f: stsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Stores + .line 37,37 : 9,115 '' + IL_0014: newobj instance void class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::.ctor() + IL_0019: stsfld class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Encryptions + IL_001e: ret + } // end of method PluginConfiguration::.cctor + + .event [mscorlib]System.EventHandler ConfigurationChanged + { + .addon instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::add_ConfigurationChanged(class [mscorlib]System.EventHandler) + .removeon instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::remove_ConfigurationChanged(class [mscorlib]System.EventHandler) + } // end of event PluginConfiguration::ConfigurationChanged + .property instance class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues + Values() + { + .get instance class Virtuoso.Miranda.Plugins.Collections.ConfigurationValues Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::get_Values() + } // end of property PluginConfiguration::Values + .property instance bool IsDirty() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::get_IsDirty() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::set_IsDirty(bool) + } // end of property PluginConfiguration::IsDirty +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + +.class private auto ansi serializable sealed beforefieldinit Virtuoso.Hyphen.Configuration.RuntimeConfiguration + extends Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration +{ + .custom instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor(string) = ( 01 00 07 30 2E 30 2E 30 2E 36 02 00 54 02 07 45 // ...0.0.0.6..T..E + 6E 63 72 79 70 74 00 54 02 0C 50 72 6F 66 69 6C // ncrypt.T..Profil + 65 42 6F 75 6E 64 00 ) // eBound. + .field private static class Virtuoso.Hyphen.Configuration.RuntimeConfiguration singleton + .field private string customFusionAssemblyName + .field private string customAssemblyProbeTypeName + .field private string customPluginManagerTypeName + .field private bool loadPluginsOnStartup + .field private bool lazyUnload + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 41,41 : 9,39 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Configuration\\RuntimeConfiguration.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::.ctor() + .line 41,41 : 42,43 '' + IL_0006: ret + } // end of method RuntimeConfiguration::.ctor + + .method public hidebysig specialname static + class Virtuoso.Hyphen.Configuration.RuntimeConfiguration + get_Singleton() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 47,47 : 17,39 '' + IL_0000: ldsfld class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::singleton + IL_0005: brtrue.s IL_0012 + + .line 48,48 : 21,91 '' + IL_0007: ldstr "Configuration not initialized." + IL_000c: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0011: throw + + .line 50,50 : 17,34 '' + IL_0012: ldsfld class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::singleton + IL_0017: ret + } // end of method RuntimeConfiguration::get_Singleton + + .method public hidebysig specialname static + bool get_Initialized() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 58,58 : 17,42 '' + IL_0000: ldsfld class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::singleton + IL_0005: ldnull + IL_0006: ceq + IL_0008: ldc.i4.0 + IL_0009: ceq + IL_000b: ret + } // end of method RuntimeConfiguration::get_Initialized + + .method family hidebysig virtual instance void + InitializeDefaultConfiguration() cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 64,64 : 13,31 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: stfld bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::lazyUnload + .line 65,65 : 9,10 '' + IL_0007: ret + } // end of method RuntimeConfiguration::InitializeDefaultConfiguration + + .method public hidebysig specialname instance string + get_CustomPluginManagerTypeName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 73,73 : 19,54 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customPluginManagerTypeName + IL_0006: ret + } // end of method RuntimeConfiguration::get_CustomPluginManagerTypeName + + .method public hidebysig specialname instance void + set_CustomPluginManagerTypeName(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 74,74 : 19,55 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customPluginManagerTypeName + .line 74,74 : 56,57 '' + IL_0007: ret + } // end of method RuntimeConfiguration::set_CustomPluginManagerTypeName + + .method public hidebysig specialname instance string + get_CustomAssemblyProbeTypeName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 79,79 : 19,54 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customAssemblyProbeTypeName + IL_0006: ret + } // end of method RuntimeConfiguration::get_CustomAssemblyProbeTypeName + + .method public hidebysig specialname instance void + set_CustomAssemblyProbeTypeName(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 80,80 : 19,55 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customAssemblyProbeTypeName + .line 80,80 : 56,57 '' + IL_0007: ret + } // end of method RuntimeConfiguration::set_CustomAssemblyProbeTypeName + + .method public hidebysig specialname instance string + get_CustomFusionAssemblyName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 85,85 : 19,51 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customFusionAssemblyName + IL_0006: ret + } // end of method RuntimeConfiguration::get_CustomFusionAssemblyName + + .method public hidebysig specialname instance void + set_CustomFusionAssemblyName(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 86,86 : 19,52 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::customFusionAssemblyName + .line 86,86 : 53,54 '' + IL_0007: ret + } // end of method RuntimeConfiguration::set_CustomFusionAssemblyName + + .method public hidebysig specialname instance bool + get_LoadPluginsOnStartup() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 91,91 : 19,47 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::loadPluginsOnStartup + IL_0006: ret + } // end of method RuntimeConfiguration::get_LoadPluginsOnStartup + + .method public hidebysig specialname instance void + set_LoadPluginsOnStartup(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 92,92 : 19,48 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::loadPluginsOnStartup + .line 92,92 : 49,50 '' + IL_0007: ret + } // end of method RuntimeConfiguration::set_LoadPluginsOnStartup + + .method public hidebysig specialname instance bool + get_UseLazyUnload() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 97,97 : 19,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::lazyUnload + IL_0006: ret + } // end of method RuntimeConfiguration::get_UseLazyUnload + + .method public hidebysig specialname instance void + set_UseLazyUnload(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 98,98 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::lazyUnload + .line 98,98 : 39,40 '' + IL_0007: ret + } // end of method RuntimeConfiguration::set_UseLazyUnload + + .method public hidebysig static void Initialize() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 107,107 : 13,75 '' + IL_0000: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Load() + IL_0005: stsfld class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::singleton + .line 108,108 : 9,10 '' + IL_000a: ret + } // end of method RuntimeConfiguration::Initialize + + .method public hidebysig static void Reset() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 112,112 : 13,93 '' + IL_0000: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration() + IL_0005: stsfld class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::singleton + .line 113,113 : 9,10 '' + IL_000a: ret + } // end of method RuntimeConfiguration::Reset + + .method public hidebysig static void Reload() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 117,117 : 13,26 '' + IL_0000: call void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Initialize() + .line 118,118 : 9,10 '' + IL_0005: ret + } // end of method RuntimeConfiguration::Reload + + .property class Virtuoso.Hyphen.Configuration.RuntimeConfiguration + Singleton() + { + .get class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + } // end of property RuntimeConfiguration::Singleton + .property bool Initialized() + { + .get bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Initialized() + } // end of property RuntimeConfiguration::Initialized + .property instance string CustomPluginManagerTypeName() + { + .set instance void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_CustomPluginManagerTypeName(string) + .get instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomPluginManagerTypeName() + } // end of property RuntimeConfiguration::CustomPluginManagerTypeName + .property instance string CustomAssemblyProbeTypeName() + { + .set instance void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_CustomAssemblyProbeTypeName(string) + .get instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomAssemblyProbeTypeName() + } // end of property RuntimeConfiguration::CustomAssemblyProbeTypeName + .property instance string CustomFusionAssemblyName() + { + .set instance void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_CustomFusionAssemblyName(string) + .get instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomFusionAssemblyName() + } // end of property RuntimeConfiguration::CustomFusionAssemblyName + .property instance bool LoadPluginsOnStartup() + { + .set instance void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_LoadPluginsOnStartup(bool) + .get instance bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_LoadPluginsOnStartup() + } // end of property RuntimeConfiguration::LoadPluginsOnStartup + .property instance bool UseLazyUnload() + { + .set instance void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_UseLazyUnload(bool) + .get instance bool Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_UseLazyUnload() + } // end of property RuntimeConfiguration::UseLazyUnload +} // end of class Virtuoso.Hyphen.Configuration.RuntimeConfiguration + +.class interface private abstract auto ansi Virtuoso.Miranda.Plugins.IInternalConfigurator + implements Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ +} // end of class Virtuoso.Miranda.Plugins.IInternalConfigurator + +.class private auto ansi sealed beforefieldinit Virtuoso.Hyphen.Configuration.RuntimeConfigurator + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.IInternalConfigurator, + Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ + .field private static class Virtuoso.Miranda.Plugins.IConfigurablePlugin singleton + .field private class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] configuration + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 34,34 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Configuration\\RuntimeConfigurator.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 34,34 : 41,42 '' + IL_0006: ret + } // end of method RuntimeConfigurator::.ctor + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.IConfigurablePlugin + get_Singleton() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 45,45 : 17,77 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Hyphen.Configuration.RuntimeConfigurator::singleton + IL_0005: dup + IL_0006: brtrue.s IL_0014 + + IL_0008: pop + IL_0009: newobj instance void Virtuoso.Hyphen.Configuration.RuntimeConfigurator::.ctor() + IL_000e: dup + IL_000f: stsfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Hyphen.Configuration.RuntimeConfigurator::singleton + IL_0014: ret + } // end of method RuntimeConfigurator::get_Singleton + + .method public hidebysig newslot specialname virtual final + instance string get_Name() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 51,51 : 19,35 '' + IL_0000: ldstr "Hyphen" + IL_0005: ret + } // end of method RuntimeConfigurator::get_Name + + .method public hidebysig newslot specialname virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + get_Configuration() cil managed + { + // Code size 36 (0x24) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$0$0000, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$0$0001) + .line 57,57 : 19,122 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Hyphen.Configuration.RuntimeConfigurator::configuration + IL_0006: dup + IL_0007: brtrue.s IL_0023 + + IL_0009: pop + IL_000a: ldarg.0 + IL_000b: ldc.i4.1 + IL_000c: newarr Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: ldc.i4.0 + IL_0014: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0019: stelem.ref + IL_001a: ldloc.0 + IL_001b: dup + IL_001c: stloc.1 + IL_001d: stfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Hyphen.Configuration.RuntimeConfigurator::configuration + IL_0022: ldloc.1 + IL_0023: ret + } // end of method RuntimeConfigurator::get_Configuration + + .method public hidebysig newslot virtual final + instance void ResetConfiguration() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 62,62 : 13,42 '' + IL_0000: call void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Reset() + .line 63,63 : 9,10 '' + IL_0005: ret + } // end of method RuntimeConfigurator::ResetConfiguration + + .method public hidebysig newslot virtual final + instance void ReloadConfiguration() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 67,67 : 13,43 '' + IL_0000: call void Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Reload() + .line 68,68 : 9,10 '' + IL_0005: ret + } // end of method RuntimeConfigurator::ReloadConfiguration + + .method public hidebysig newslot virtual final + instance void PopulateConfiguration(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories) cil managed + { + // Code size 73 (0x49) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.Category category, + [1] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item) + .line 75,75 : 13,118 '' + IL_0000: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General() + IL_0005: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_Description() + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Category::.ctor(string, + string) + IL_000f: stloc.0 + .line 77,77 : 13,156 '' + IL_0010: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_About() + IL_0015: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_About_Description() + IL_001a: ldtoken Virtuoso.Hyphen.Configuration.Controls.AboutContent + IL_001f: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0024: newobj instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor(string, + string, + class [mscorlib]System.Type) + IL_0029: stloc.1 + .line 78,78 : 13,66 '' + IL_002a: ldloc.1 + IL_002b: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Information() + IL_0030: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_Image(class [System.Drawing]System.Drawing.Image) + .line 79,79 : 13,38 '' + IL_0035: ldloc.0 + IL_0036: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::get_Items() + IL_003b: ldloc.1 + IL_003c: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 81,81 : 13,38 '' + IL_0041: ldarg.1 + IL_0042: ldloc.0 + IL_0043: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 82,82 : 9,10 '' + IL_0048: ret + } // end of method RuntimeConfigurator::PopulateConfiguration + + .property class Virtuoso.Miranda.Plugins.IConfigurablePlugin + Singleton() + { + .get class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Singleton() + } // end of property RuntimeConfigurator::Singleton + .property instance string Name() + { + .get instance string Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Name() + } // end of property RuntimeConfigurator::Name + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + Configuration() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Configuration() + } // end of property RuntimeConfigurator::Configuration +} // end of class Virtuoso.Hyphen.Configuration.RuntimeConfigurator + +.class public abstract auto ansi beforefieldinit Virtuoso.Hyphen.Mini.ProtocolPlugin + extends Virtuoso.Hyphen.Mini.StandalonePlugin +{ + .field private native int namePtr + .field private int32 NameCapacity + .field private class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol thisProtocol + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 47,47 : 9,35 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Mini\\ProtocolPlugin.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Mini.StandalonePlugin::.ctor() + .line 47,47 : 38,39 '' + IL_0006: ret + } // end of method ProtocolPlugin::.ctor + + .method public hidebysig specialname virtual + instance valuetype [mscorlib]System.Guid[] + get_PluginInterfaces() cil managed + { + // Code size 26 (0x1a) + .maxstack 2 + .locals init ([0] valuetype [mscorlib]System.Guid[] CS$0$0000) + .line 58,58 : 19,91 '' + IL_0000: ldc.i4.1 + IL_0001: newarr [mscorlib]System.Guid + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: ldc.i4.0 + IL_0009: ldelema [mscorlib]System.Guid + IL_000e: call valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_ProtocolUUID() + IL_0013: stobj [mscorlib]System.Guid + IL_0018: ldloc.0 + IL_0019: ret + } // end of method ProtocolPlugin::get_PluginInterfaces + + .method assembly hidebysig strict virtual + instance void LoadInternal(native int pPluginLink) cil managed + { + // Code size 257 (0x101) + .maxstack 3 + .line 67,67 : 13,73 '' + IL_0000: ldarg.0 + IL_0001: ldarg.0 + IL_0002: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_0007: ldarg.0 + IL_0008: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolType() + IL_000d: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType) + IL_0012: call instance void Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ThisProtocol(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol) + .line 68,68 : 13,37 '' + IL_0017: ldarg.0 + IL_0018: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_001d: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Register() + .line 70,70 : 13,49 '' + IL_0022: ldarg.0 + IL_0023: ldc.i4 0x9c87 + IL_0028: callvirt instance void Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ProtocolStatus(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + .line 72,72 : 13,122 '' + IL_002d: ldarg.0 + IL_002e: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_0033: ldstr "/GetName" + IL_0038: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_003d: ldarg.0 + IL_003e: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSGetName(native uint, + native int) + IL_0044: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0049: ldarg.0 + IL_004a: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + .line 73,73 : 13,126 '' + IL_004f: ldarg.0 + IL_0050: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_0055: ldstr "/GetStatus" + IL_005a: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_005f: ldarg.0 + IL_0060: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSGetStatus(native uint, + native int) + IL_0066: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_006b: ldarg.0 + IL_006c: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + .line 74,74 : 13,126 '' + IL_0071: ldarg.0 + IL_0072: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_0077: ldstr "/SetStatus" + IL_007c: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_0081: ldarg.0 + IL_0082: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSSetStatus(native uint, + native int) + IL_0088: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_008d: ldarg.0 + IL_008e: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + .line 75,75 : 13,124 '' + IL_0093: ldarg.0 + IL_0094: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_0099: ldstr "/LoadIcon" + IL_009e: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_00a3: ldarg.0 + IL_00a4: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSLoadIcon(native uint, + native int) + IL_00aa: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_00af: ldarg.0 + IL_00b0: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + .line 76,76 : 13,122 '' + IL_00b5: ldarg.0 + IL_00b6: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_00bb: ldstr "/GetCaps" + IL_00c0: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_00c5: ldarg.0 + IL_00c6: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSGetCaps(native uint, + native int) + IL_00cc: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_00d1: ldarg.0 + IL_00d2: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + .line 77,77 : 13,128 '' + IL_00d7: ldarg.0 + IL_00d8: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_00dd: ldstr "/SendMsg" + IL_00e2: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName(string) + IL_00e7: ldarg.0 + IL_00e8: ldftn instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::PSSSendMessage(native uint, + native int) + IL_00ee: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_00f3: ldarg.0 + IL_00f4: call void Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction(string, + class Virtuoso.Miranda.Plugins.Callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin) + .line 79,79 : 13,44 '' + IL_00f9: ldarg.0 + IL_00fa: ldarg.1 + IL_00fb: call instance void Virtuoso.Hyphen.Mini.StandalonePlugin::LoadInternal(native int) + .line 80,80 : 9,10 '' + IL_0100: ret + } // end of method ProtocolPlugin::LoadInternal + + .method assembly hidebysig strict virtual + instance void UnloadInternal() cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 87,87 : 13,35 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Mini.StandalonePlugin::UnloadInternal() + .line 88,88 : 13,39 '' + IL_0006: ldarg.0 + IL_0007: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_000c: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Unregister() + .line 89,89 : 9,10 '' + IL_0011: ret + } // end of method ProtocolPlugin::UnloadInternal + + .method private hidebysig instance int32 + PSGetName(native uint capacity, + native int pBuffer) cil managed + { + // Code size 166 (0xa6) + .maxstack 4 + .locals init ([0] uint8[] nameBytes, + [1] uint32 count, + [2] int64 i) + .line 103,103 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + IL_0006: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000b: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0010: brfalse.s IL_0069 + + .line 105,105 : 17,84 '' + IL_0012: call class [mscorlib]System.Text.Encoding [mscorlib]System.Text.Encoding::get_Default() + IL_0017: ldarg.0 + IL_0018: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_001d: dup + IL_001e: brtrue.s IL_0026 + + IL_0020: pop + IL_0021: ldsfld string [mscorlib]System.String::Empty + IL_0026: callvirt instance uint8[] [mscorlib]System.Text.Encoding::GetBytes(string) + IL_002b: stloc.0 + .line 106,106 : 17,53 '' + IL_002c: ldarg.0 + IL_002d: ldloc.0 + IL_002e: ldlen + IL_002f: conv.i4 + IL_0030: ldc.i4.1 + IL_0031: add + IL_0032: stfld int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::NameCapacity + .line 108,108 : 17,62 '' + IL_0037: ldarg.0 + IL_0038: ldarg.0 + IL_0039: ldfld int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::NameCapacity + IL_003e: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_0043: stfld native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + .line 109,109 : 17,71 '' + IL_0048: ldloc.0 + IL_0049: ldc.i4.0 + IL_004a: ldarg.0 + IL_004b: ldfld native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + IL_0050: ldloc.0 + IL_0051: ldlen + IL_0052: conv.i4 + IL_0053: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + .line 111,111 : 17,60 '' + IL_0058: ldarg.0 + IL_0059: ldfld native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + IL_005e: call void* [mscorlib]System.IntPtr::op_Explicit(native int) + IL_0063: ldloc.0 + IL_0064: ldlen + IL_0065: conv.i4 + IL_0066: add + IL_0067: ldc.i4.0 + IL_0068: stind.i1 + .line 114,114 : 13,46 '' + IL_0069: ldarga.s capacity + IL_006b: call instance uint32 [mscorlib]System.UIntPtr::ToUInt32() + IL_0070: stloc.1 + .line 116,116 : 18,29 '' + IL_0071: ldc.i4.0 + IL_0072: conv.i8 + IL_0073: stloc.2 + IL_0074: br.s IL_0095 + + .line 117,117 : 17,83 '' + IL_0076: ldarga.s pBuffer + IL_0078: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_007d: ldloc.2 + IL_007e: add + IL_007f: conv.u + IL_0080: ldarg.0 + IL_0081: ldflda native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + IL_0086: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_008b: ldloc.2 + IL_008c: add + IL_008d: conv.u + IL_008e: ldind.u1 + IL_008f: stind.i1 + .line 116,116 : 61,64 '' + IL_0090: ldloc.2 + IL_0091: ldc.i4.1 + IL_0092: conv.i8 + IL_0093: add + IL_0094: stloc.2 + .line 116,116 : 30,59 '' + IL_0095: ldloc.2 + IL_0096: ldloc.1 + IL_0097: conv.u8 + IL_0098: bge.s IL_00a4 + + IL_009a: ldloc.2 + IL_009b: ldarg.0 + IL_009c: ldfld int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::NameCapacity + IL_00a1: conv.i8 + IL_00a2: blt.s IL_0076 + + .line 119,119 : 13,22 '' + IL_00a4: ldc.i4.0 + IL_00a5: ret + } // end of method ProtocolPlugin::PSGetName + + .method private hidebysig instance int32 + PSGetStatus(native uint wParam, + native int lParam) cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 130,130 : 13,40 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolStatus() + IL_0006: ret + } // end of method ProtocolPlugin::PSGetStatus + + .method private hidebysig instance int32 + PSSetStatus(native uint newStatusRaw, + native int lParam) cil managed + { + // Code size 65 (0x41) + .maxstack 6 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode prevStatus, + [1] valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode newStatus) + .line 145,145 : 13,52 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolStatus() + IL_0006: stloc.0 + .line 146,146 : 13,61 '' + IL_0007: ldarg.1 + IL_0008: call uint32 [mscorlib]System.UIntPtr::op_Explicit(native uint) + IL_000d: stloc.1 + .line 148,148 : 13,40 '' + IL_000e: ldarg.0 + IL_000f: ldloc.1 + IL_0010: callvirt instance void Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ProtocolStatus(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + .line 149,149 : 13,171 '' + IL_0015: ldarg.0 + IL_0016: call instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + IL_001b: callvirt instance valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::get_NativeDescriptor() + IL_0020: ldfld native int Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Name + IL_0025: ldc.i4.s 12 + IL_0027: ldc.i4.1 + IL_0028: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002d: ldloc.0 + IL_002e: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0033: ldarg.1 + IL_0034: call native int Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle(native uint) + IL_0039: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType, + bool, + native int, + native int, + native int) + IL_003e: pop + .line 151,151 : 13,22 '' + IL_003f: ldc.i4.0 + IL_0040: ret + } // end of method ProtocolPlugin::PSSetStatus + + .method private hidebysig instance int32 + PSLoadIcon(native uint whichIcon, + native int lParam) cil managed + { + // Code size 47 (0x2f) + .maxstack 1 + .locals init ([0] native int CS$0$0000, + [1] native int CS$0$0001) + .line 162,162 : 13,38 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance class [System.Drawing]System.Drawing.Icon Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolIcon() + IL_0006: brtrue.s IL_001b + + .line 163,163 : 17,65 '' + IL_0008: call class [System.Drawing]System.Drawing.Icon [System.Drawing]System.Drawing.SystemIcons::get_Application() + IL_000d: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_0012: stloc.0 + IL_0013: ldloca.s CS$0$0000 + IL_0015: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_001a: ret + + .line 165,165 : 17,54 '' + IL_001b: ldarg.0 + IL_001c: callvirt instance class [System.Drawing]System.Drawing.Icon Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolIcon() + IL_0021: callvirt instance native int [System.Drawing]System.Drawing.Icon::get_Handle() + IL_0026: stloc.1 + IL_0027: ldloca.s CS$0$0001 + IL_0029: call instance int32 [mscorlib]System.IntPtr::ToInt32() + IL_002e: ret + } // end of method ProtocolPlugin::PSLoadIcon + + .method private hidebysig instance int32 + PSGetCaps(native uint flagsNum, + native int lParam) cil managed + { + // Code size 52 (0x34) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind CS$0$0000) + .line 176,176 : 13,49 '' + IL_0000: ldarg.1 + IL_0001: call uint32 [mscorlib]System.UIntPtr::op_Explicit(native uint) + IL_0006: stloc.0 + IL_0007: ldloc.0 + IL_0008: ldc.i4.1 + IL_0009: sub + IL_000a: switch ( + IL_001d, + IL_0024, + IL_002b) + IL_001b: br.s IL_0032 + + .line 179,179 : 21,55 '' + IL_001d: ldarg.0 + IL_001e: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedCapabilities() + IL_0023: ret + + .line 181,181 : 21,54 '' + IL_0024: ldarg.0 + IL_0025: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedStatusModes() + IL_002a: ret + + .line 183,183 : 21,58 '' + IL_002b: ldarg.0 + IL_002c: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedAwayStatusModes() + IL_0031: ret + + .line 185,185 : 21,30 '' + IL_0032: ldc.i4.0 + IL_0033: ret + } // end of method ProtocolPlugin::PSGetCaps + + .method private hidebysig instance int32 + PSSSendMessage(native uint 'flags', + native int pCcsData) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 200,200 : 13,64 '' + IL_0000: ldarg.0 + IL_0001: ldarg.2 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::.ctor(native int) + IL_0007: callvirt instance int32 Virtuoso.Hyphen.Mini.ProtocolPlugin::SendMessage(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData) + IL_000c: ret + } // end of method ProtocolPlugin::PSSSendMessage + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol + get_ThisProtocol() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 213,213 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::thisProtocol + IL_0006: ret + } // end of method ProtocolPlugin::get_ThisProtocol + + .method assembly hidebysig specialname + instance void set_ThisProtocol(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 214,214 : 28,49 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::thisProtocol + .line 214,214 : 50,51 '' + IL_0007: ret + } // end of method ProtocolPlugin::set_ThisProtocol + + .method family hidebysig specialname instance native int + get_NamePtr() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 219,219 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Hyphen.Mini.ProtocolPlugin::namePtr + IL_0006: ret + } // end of method ProtocolPlugin::get_NamePtr + + .method famorassem hidebysig newslot specialname abstract virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + get_ProtocolType() cil managed + { + } // end of method ProtocolPlugin::get_ProtocolType + + .method famorassem hidebysig newslot specialname abstract virtual + instance class [System.Drawing]System.Drawing.Icon + get_ProtocolIcon() cil managed + { + } // end of method ProtocolPlugin::get_ProtocolIcon + + .method famorassem hidebysig newslot specialname abstract virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities + get_SupportedCapabilities() cil managed + { + } // end of method ProtocolPlugin::get_SupportedCapabilities + + .method famorassem hidebysig newslot specialname virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + get_SupportedAwayStatusModes() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 248,248 : 89,119 '' + IL_0000: ldc.i4.0 + IL_0001: ret + } // end of method ProtocolPlugin::get_SupportedAwayStatusModes + + .method famorassem hidebysig newslot specialname virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + get_SupportedStatusModes() cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 253,253 : 85,115 '' + IL_0000: ldc.i4.0 + IL_0001: ret + } // end of method ProtocolPlugin::get_SupportedStatusModes + + .method famorassem hidebysig newslot specialname virtual + instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + get_ProtocolStatus() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 258,258 : 70,96 '' + IL_0000: ldc.i4 0x9c87 + IL_0005: ret + } // end of method ProtocolPlugin::get_ProtocolStatus + + .method famorassem hidebysig newslot specialname virtual + instance void set_ProtocolStatus(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode 'value') cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 258,258 : 105,106 '' + IL_0000: ret + } // end of method ProtocolPlugin::set_ProtocolStatus + + .method family hidebysig newslot virtual + instance int32 SendMessage(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData msgData) cil managed + { + // Code size 2 (0x2) + .maxstack 8 + .line 260,260 : 71,80 '' + IL_0000: ldc.i4.0 + IL_0001: ret + } // end of method ProtocolPlugin::SendMessage + + .property instance valuetype [mscorlib]System.Guid[] + PluginInterfaces() + { + .get instance valuetype [mscorlib]System.Guid[] Virtuoso.Hyphen.Mini.ProtocolPlugin::get_PluginInterfaces() + } // end of property ProtocolPlugin::PluginInterfaces + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol + ThisProtocol() + { + .set instance void Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ThisProtocol(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol) + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol() + } // end of property ProtocolPlugin::ThisProtocol + .property instance native int NamePtr() + { + .get instance native int Virtuoso.Hyphen.Mini.ProtocolPlugin::get_NamePtr() + } // end of property ProtocolPlugin::NamePtr + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + ProtocolType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolType() + } // end of property ProtocolPlugin::ProtocolType + .property instance class [System.Drawing]System.Drawing.Icon + ProtocolIcon() + { + .get instance class [System.Drawing]System.Drawing.Icon Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolIcon() + } // end of property ProtocolPlugin::ProtocolIcon + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities + SupportedCapabilities() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedCapabilities() + } // end of property ProtocolPlugin::SupportedCapabilities + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + SupportedAwayStatusModes() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedAwayStatusModes() + } // end of property ProtocolPlugin::SupportedAwayStatusModes + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + SupportedStatusModes() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedStatusModes() + } // end of property ProtocolPlugin::SupportedStatusModes + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + ProtocolStatus() + { + .set instance void Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ProtocolStatus(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolStatus() + } // end of property ProtocolPlugin::ProtocolStatus +} // end of class Virtuoso.Hyphen.Mini.ProtocolPlugin + +.class private auto ansi sealed beforefieldinit Virtuoso.Hyphen.MirandaPluginLink + extends [mscorlib]System.Object +{ + .field private initonly class Virtuoso.Hyphen.Native.NativePluginLink nativePluginLink + .field private initonly native int nativePluginLinkPtr + .field public initonly class Virtuoso.Hyphen.Native.CallServiceUnsafePrototype CallServiceUnsafe + .method private hidebysig specialname rtspecialname + instance void .ctor(native int nativeLinkPtr) cil managed + { + // Code size 105 (0x69) + .maxstack 4 + .line 39,39 : 9,56 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\MirandaPluginLink.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 41,41 : 13,46 '' + IL_0006: ldarg.1 + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0011: brfalse.s IL_001e + + .line 42,42 : 17,66 '' + IL_0013: ldstr "nativeLinkPtr" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 44,44 : 13,54 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld native int Virtuoso.Hyphen.MirandaPluginLink::nativePluginLinkPtr + .line 45,45 : 13,119 '' + IL_0025: ldarg.0 + IL_0026: ldarg.1 + IL_0027: ldtoken Virtuoso.Hyphen.Native.NativePluginLink + IL_002c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0031: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_0036: castclass Virtuoso.Hyphen.Native.NativePluginLink + IL_003b: stfld class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::nativePluginLink + .line 47,47 : 13,192 '' + IL_0040: ldarg.0 + IL_0041: ldarg.1 + IL_0042: ldc.i4.s 9 + IL_0044: call int32 [mscorlib]System.IntPtr::get_Size() + IL_0049: mul + IL_004a: call native int [mscorlib]System.Runtime.InteropServices.Marshal::ReadIntPtr(native int, + int32) + IL_004f: ldtoken Virtuoso.Hyphen.Native.CallServiceUnsafePrototype + IL_0054: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0059: call class [mscorlib]System.Delegate [mscorlib]System.Runtime.InteropServices.Marshal::GetDelegateForFunctionPointer(native int, + class [mscorlib]System.Type) + IL_005e: castclass Virtuoso.Hyphen.Native.CallServiceUnsafePrototype + IL_0063: stfld class Virtuoso.Hyphen.Native.CallServiceUnsafePrototype Virtuoso.Hyphen.MirandaPluginLink::CallServiceUnsafe + .line 48,48 : 9,10 '' + IL_0068: ret + } // end of method MirandaPluginLink::.ctor + + .method public hidebysig static class Virtuoso.Hyphen.MirandaPluginLink + FromPointer(native int nativeLinkPtr) cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 52,52 : 13,57 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Hyphen.MirandaPluginLink::.ctor(native int) + IL_0006: ret + } // end of method MirandaPluginLink::FromPointer + + .method public hidebysig specialname instance native int + get_NativePluginLinkPtr() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 63,63 : 17,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Hyphen.MirandaPluginLink::nativePluginLinkPtr + IL_0006: ret + } // end of method MirandaPluginLink::get_NativePluginLinkPtr + + .method public hidebysig specialname instance class Virtuoso.Hyphen.Native.NativePluginLink + get_NativePluginLink() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 71,71 : 17,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::nativePluginLink + IL_0006: ret + } // end of method MirandaPluginLink::get_NativePluginLink + + .property instance native int NativePluginLinkPtr() + { + .get instance native int Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLinkPtr() + } // end of property MirandaPluginLink::NativePluginLinkPtr + .property instance class Virtuoso.Hyphen.Native.NativePluginLink + NativePluginLink() + { + .get instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + } // end of property MirandaPluginLink::NativePluginLink +} // end of class Virtuoso.Hyphen.MirandaPluginLink + +.class public auto ansi sealed Virtuoso.Hyphen.Native.PluginFlags + extends [mscorlib]System.Enum +{ + .custom instance void [mscorlib]System.FlagsAttribute::.ctor() = ( 01 00 00 00 ) + .field public specialname rtspecialname uint8 value__ + .field public static literal valuetype Virtuoso.Hyphen.Native.PluginFlags UnicodeAware = uint8(0x01) +} // end of class Virtuoso.Hyphen.Native.PluginFlags + +.class private sequential ansi sealed beforefieldinit Virtuoso.Hyphen.Native.PLUGININFOEX + extends Virtuoso.Hyphen.Native.PLUGININFO +{ + .pack 4 + .size 0 + .field public valuetype [mscorlib]System.Guid UUID + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 30,30 : 9,30 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\Native\\PLUGININFOEX.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Native.PLUGININFO::.ctor() + .line 30,30 : 33,34 '' + IL_0006: ret + } // end of method PLUGININFOEX::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(valuetype [mscorlib]System.Guid uuid) cil managed + { + // Code size 14 (0xe) + .maxstack 8 + .line 32,32 : 9,39 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Hyphen.Native.PLUGININFO::.ctor() + .line 34,34 : 13,30 '' + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: stfld valuetype [mscorlib]System.Guid Virtuoso.Hyphen.Native.PLUGININFOEX::UUID + .line 35,35 : 9,10 '' + IL_000d: ret + } // end of method PLUGININFOEX::.ctor + +} // end of class Virtuoso.Hyphen.Native.PLUGININFOEX + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.EventManager + extends [mscorlib]System.Object +{ + .method public hidebysig static void CreateEventHook(string eventName, + class Virtuoso.Miranda.Plugins.Callback callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin owner) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 135 (0x87) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection collection, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor) + .line 33,33 : 13,49 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\EventManager.cs' + IL_0000: ldarg.0 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 34,34 : 17,62 '' + IL_0008: ldstr "eventName" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 36,36 : 13,34 '' + IL_0013: ldarg.1 + IL_0014: brtrue.s IL_0021 + + .line 37,37 : 17,61 '' + IL_0016: ldstr "callback" + IL_001b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0020: throw + + .line 39,39 : 13,31 '' + IL_0021: ldarg.2 + IL_0022: brtrue.s IL_002f + + .line 40,40 : 17,58 '' + IL_0024: ldstr "owner" + IL_0029: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002e: throw + + .line 42,42 : 13,36 '' + IL_002f: ldarg.2 + IL_0030: callvirt instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized() + IL_0035: brtrue.s IL_0042 + + .line 43,43 : 17,102 '' + IL_0037: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_003c: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0041: throw + + .line 45,45 : 13,79 '' + IL_0042: ldarg.2 + IL_0043: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0048: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_004d: stloc.0 + .line 49,49 : 17,64 '' + .try + { + IL_004e: ldarg.2 + IL_004f: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginPluginUpdate(class Virtuoso.Miranda.Plugins.MirandaPlugin) + .line 50,50 : 17,73 '' + IL_0054: ldloc.0 + IL_0055: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 52,52 : 17,145 '' + IL_005a: ldloc.0 + IL_005b: ldarg.0 + IL_005c: ldarg.2 + IL_005d: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0062: ldarg.1 + IL_0063: ldc.i4.1 + IL_0064: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0069: stloc.1 + .line 53,53 : 17,54 '' + IL_006a: ldloc.1 + IL_006b: ldc.i4.1 + IL_006c: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_RegisteredManually(bool) + .line 55,55 : 17,52 '' + IL_0071: ldloc.1 + IL_0072: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0077: leave.s IL_0086 + + .line 59,59 : 17,56 '' + } // end .try + finally + { + IL_0079: ldarg.2 + IL_007a: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + .line 60,60 : 17,61 '' + IL_007f: ldloc.0 + IL_0080: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0085: endfinally + .line 62,62 : 9,10 '' + } // end handler + IL_0086: ret + } // end of method EventManager::CreateEventHook + + .method public hidebysig static void RemoveEventHook(string eventName, + class Virtuoso.Miranda.Plugins.MirandaPlugin owner) cil managed + { + // Code size 119 (0x77) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection collection, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor) + .line 66,66 : 13,49 '' + IL_0000: ldarg.0 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 67,67 : 17,62 '' + IL_0008: ldstr "eventName" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 69,69 : 13,31 '' + IL_0013: ldarg.1 + IL_0014: brtrue.s IL_0021 + + .line 70,70 : 17,58 '' + IL_0016: ldstr "owner" + IL_001b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0020: throw + + .line 72,72 : 13,36 '' + IL_0021: ldarg.1 + IL_0022: callvirt instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized() + IL_0027: brtrue.s IL_0034 + + .line 73,73 : 17,102 '' + IL_0029: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_002e: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0033: throw + + .line 75,75 : 13,79 '' + IL_0034: ldarg.1 + IL_0035: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_003a: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_003f: stloc.0 + .line 79,79 : 17,73 '' + .try + { + IL_0040: ldloc.0 + IL_0041: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 80,80 : 17,50 '' + IL_0046: ldnull + IL_0047: stloc.1 + .line 82,82 : 17,88 '' + IL_0048: ldarg.1 + IL_0049: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_004e: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks() + IL_0053: ldarg.0 + IL_0054: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Find(string) + IL_0059: dup + IL_005a: stloc.1 + IL_005b: brtrue.s IL_005f + + .line 83,83 : 21,28 '' + IL_005d: leave.s IL_0076 + + .line 85,85 : 17,53 '' + IL_005f: ldloc.1 + IL_0060: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 86,86 : 17,47 '' + IL_0065: ldloc.0 + IL_0066: ldloc.1 + IL_0067: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_006c: pop + IL_006d: leave.s IL_0076 + + .line 90,90 : 17,61 '' + } // end .try + finally + { + IL_006f: ldloc.0 + IL_0070: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0075: endfinally + .line 92,92 : 9,10 '' + } // end handler + IL_0076: ret + } // end of method EventManager::RemoveEventHook + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle + CreateEvent(string eventName, + class Virtuoso.Miranda.Plugins.MirandaPlugin owner) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 9 (0x9) + .maxstack 8 + .line 97,97 : 13,56 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: call class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle Virtuoso.Miranda.Plugins.Infrastructure.EventManager::CreateEvent(string, + class Virtuoso.Miranda.Plugins.MirandaPlugin, + class Virtuoso.Miranda.Plugins.Callback) + IL_0008: ret + } // end of method EventManager::CreateEvent + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle + CreateEvent(string eventName, + class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + class Virtuoso.Miranda.Plugins.Callback defaultSubscriber) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 117 (0x75) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle handle) + .line 103,103 : 13,49 '' + IL_0000: ldarg.0 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 104,104 : 17,62 '' + IL_0008: ldstr "eventName" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 106,106 : 13,31 '' + IL_0013: ldarg.1 + IL_0014: brtrue.s IL_0021 + + .line 107,107 : 17,58 '' + IL_0016: ldstr "owner" + IL_001b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0020: throw + + .line 109,109 : 13,36 '' + IL_0021: ldarg.1 + IL_0022: callvirt instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized() + IL_0027: brtrue.s IL_0034 + + .line 110,110 : 17,102 '' + IL_0029: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_002e: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0033: throw + + .line 112,112 : 13,57 '' + IL_0034: ldarg.0 + IL_0035: call bool Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::ServiceExists(string) + IL_003a: brfalse.s IL_0047 + + .line 113,113 : 17,58 '' + IL_003c: ldstr "eventName" + IL_0041: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0046: throw + + .line 115,115 : 13,151 '' + IL_0047: ldarg.1 + IL_0048: ldarg.0 + IL_0049: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_004e: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0053: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0058: ldfld class Virtuoso.Hyphen.Native.CreateHookableEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::CreateHookableEvent + IL_005d: ldarg.0 + IL_005e: callvirt instance native int Virtuoso.Hyphen.Native.CreateHookableEventPrototype::Invoke(string) + IL_0063: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::.ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin, + string, + native int) + IL_0068: stloc.0 + .line 117,117 : 13,43 '' + IL_0069: ldarg.2 + IL_006a: brfalse.s IL_0073 + + .line 118,118 : 17,64 '' + IL_006c: ldloc.0 + IL_006d: ldarg.2 + IL_006e: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::SetDefaultSubscriber(class Virtuoso.Miranda.Plugins.Callback) + .line 120,120 : 13,27 '' + IL_0073: ldloc.0 + IL_0074: ret + } // end of method EventManager::CreateEvent + + .method public hidebysig static void RemoveEvent(class Virtuoso.Miranda.Plugins.Infrastructure.EventHandle eventHandle) cil managed + { + // Code size 149 (0x95) + .maxstack 3 + .locals init ([0] class Virtuoso.Hyphen.MirandaPluginLink link, + [1] int32 result, + [2] class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection handles) + .line 125,125 : 13,37 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 126,126 : 17,64 '' + IL_0003: ldstr "eventHandle" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 128,128 : 13,72 '' + IL_000e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0013: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0018: stloc.0 + .line 130,130 : 13,58 '' + IL_0019: ldarg.0 + IL_001a: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_001f: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0024: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0029: brfalse.s IL_0094 + + .line 133,133 : 17,107 '' + IL_002b: ldloc.0 + IL_002c: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0031: ldfld class Virtuoso.Hyphen.Native.DestroyHookableEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::DestroyHookableEvent + IL_0036: ldarg.0 + IL_0037: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_003c: callvirt instance int32 Virtuoso.Hyphen.Native.DestroyHookableEventPrototype::Invoke(native int) + IL_0041: dup + IL_0042: stloc.1 + IL_0043: brfalse.s IL_0061 + + .line 134,134 : 21,176 '' + IL_0045: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_004a: ldstr "DestroyHookableEvent" + IL_004f: ldloca.s result + IL_0051: call instance string [mscorlib]System.Int32::ToString() + IL_0056: call string [mscorlib]System.String::Format(string, + object, + object) + IL_005b: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0060: throw + + .line 136,136 : 17,57 '' + IL_0061: ldarg.0 + IL_0062: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0067: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle(native int) + .line 137,137 : 17,91 '' + IL_006c: ldarg.0 + IL_006d: callvirt instance class Virtuoso.Miranda.Plugins.MirandaPlugin Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::get_Owner() + IL_0072: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0077: callvirt instance class Virtuoso.Miranda.Plugins.Collections.EventHandleCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHandles() + IL_007c: stloc.2 + .line 141,141 : 21,74 '' + .try + { + IL_007d: ldloc.2 + IL_007e: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 142,142 : 21,49 '' + IL_0083: ldloc.2 + IL_0084: ldarg.0 + IL_0085: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_008a: pop + IL_008b: leave.s IL_0094 + + .line 146,146 : 21,62 '' + } // end .try + finally + { + IL_008d: ldloc.2 + IL_008e: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0093: endfinally + .line 149,149 : 9,10 '' + } // end handler + IL_0094: ret + } // end of method EventManager::RemoveEvent + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.EventManager + +.class private abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.HookManager + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested private beforefieldinit '<>c__DisplayClass2' + extends [mscorlib]System.Object + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field public class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + IL_0006: ret + } // end of method '<>c__DisplayClass2'::.ctor + + .method public hidebysig instance bool + 'b__0'(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor _hook) cil managed + { + // Code size 33 (0x21) + .maxstack 8 + .line 83,83 : 21,85 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\HookManager.cs' + IL_0000: ldarg.1 + IL_0001: ldarg.0 + IL_0002: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0007: callvirt instance bool [mscorlib]System.Object::Equals(object) + IL_000c: brfalse.s IL_001f + + IL_000e: ldarg.1 + IL_000f: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0014: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0019: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_001e: ret + + IL_001f: ldc.i4.0 + IL_0020: ret + } // end of method '<>c__DisplayClass2'::'b__0' + + } // end of class '<>c__DisplayClass2' + + .method public hidebysig static void CreateHooks(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor[] hooks) cil managed + { + .param [1] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 47 (0x2f) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor[] CS$6$0000, + [2] int32 CS$7$0001) + .line 32,32 : 13,31 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 33,33 : 17,58 '' + IL_0003: ldstr "hooks" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 35,35 : 13,35 '' + IL_000e: ldarg.0 + IL_000f: ldlen + IL_0010: conv.i4 + IL_0011: brtrue.s IL_0014 + + .line 36,36 : 17,24 '' + IL_0013: ret + + .line 38,38 : 45,50 '' + IL_0014: ldarg.0 + IL_0015: stloc.1 + IL_0016: ldc.i4.0 + IL_0017: stloc.2 + IL_0018: br.s IL_0028 + + .line 38,38 : 22,41 '' + IL_001a: ldloc.1 + IL_001b: ldloc.2 + IL_001c: ldelem.ref + IL_001d: stloc.0 + .line 39,39 : 17,34 '' + IL_001e: ldloc.0 + IL_001f: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0024: ldloc.2 + IL_0025: ldc.i4.1 + IL_0026: add + IL_0027: stloc.2 + .line 38,38 : 42,44 '' + IL_0028: ldloc.2 + IL_0029: ldloc.1 + IL_002a: ldlen + IL_002b: conv.i4 + IL_002c: blt.s IL_001a + + .line 40,40 : 9,10 '' + IL_002e: ret + } // end of method HookManager::CreateHooks + + .method public hidebysig static void CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook) cil managed + { + // Code size 68 (0x44) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType CS$0$0000) + .line 46,46 : 17,67 '' + .try + { + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + .line 48,48 : 17,39 '' + IL_0006: ldarg.0 + IL_0007: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + IL_000c: stloc.0 + IL_000d: ldloc.0 + IL_000e: ldc.i4.1 + IL_000f: sub + IL_0010: switch ( + IL_001f, + IL_0027) + IL_001d: br.s IL_002f + + .line 52,52 : 29,45 '' + IL_001f: ldarg.0 + IL_0020: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::HookEvent(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 53,53 : 29,35 '' + IL_0025: br.s IL_003a + + .line 57,57 : 29,57 '' + IL_0027: ldarg.0 + IL_0028: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateServiceFunction(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 58,58 : 29,35 '' + IL_002d: br.s IL_003a + + .line 61,61 : 25,67 '' + IL_002f: ldstr "descriptor" + IL_0034: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0039: throw + + IL_003a: leave.s IL_0043 + + .line 66,66 : 17,55 '' + } // end .try + finally + { + IL_003c: ldarg.0 + IL_003d: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0042: endfinally + .line 68,68 : 9,10 '' + } // end handler + IL_0043: ret + } // end of method HookManager::CreateHook + + .method private hidebysig static void CreateServiceFunction(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook) cil managed + { + // Code size 209 (0xd1) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Predicate`1 'CS$<>9__CachedAnonymousMethodDelegate1', + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2' 'CS$<>8__locals3') + IL_0000: ldnull + IL_0001: stloc.0 + IL_0002: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::.ctor() + IL_0007: stloc.1 + IL_0008: ldloc.1 + IL_0009: ldarg.0 + IL_000a: stfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + .line 72,72 : 13,58 '' + IL_000f: ldloc.1 + IL_0010: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0015: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_001a: call bool Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::ServiceExists(string) + IL_001f: brtrue.s IL_008d + + .line 74,74 : 17,137 '' + IL_0021: ldloc.1 + IL_0022: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0027: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_002c: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0031: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0036: ldfld class Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype Virtuoso.Hyphen.Native.NativePluginLink::CreateServiceFunction + IL_003b: ldloc.1 + IL_003c: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0041: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_0046: ldloc.1 + IL_0047: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_004c: callvirt instance class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Callback() + IL_0051: callvirt instance native int Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype::Invoke(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0056: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle(native int) + .line 76,76 : 17,55 '' + IL_005b: ldloc.1 + IL_005c: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0061: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0066: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_006b: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0070: brfalse.s IL_00d0 + + .line 77,77 : 21,144 '' + IL_0072: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionCreationFailed() + IL_0077: ldloc.1 + IL_0078: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_007d: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_0082: call string [mscorlib]System.String::Format(string, + object) + IL_0087: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_008c: throw + + .line 81,84 : 17,20 '' + IL_008d: ldloc.1 + IL_008e: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_0093: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Owner() + IL_0098: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_009d: ldloc.0 + IL_009e: brtrue.s IL_00ad + + IL_00a0: ldloc.1 + IL_00a1: ldftn instance bool Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::'b__0'(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_00a7: newobj instance void class [mscorlib]System.Predicate`1::.ctor(object, + native int) + IL_00ac: stloc.0 + IL_00ad: ldloc.0 + IL_00ae: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Exists(class [mscorlib]System.Predicate`1) + IL_00b3: brtrue.s IL_00d0 + + .line 85,85 : 21,152 '' + IL_00b5: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists() + IL_00ba: ldloc.1 + IL_00bb: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookManager/'<>c__DisplayClass2'::hook + IL_00c0: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_00c5: call string [mscorlib]System.String::Format(string, + object) + IL_00ca: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_00cf: throw + + .line 87,87 : 9,10 '' + IL_00d0: ret + } // end of method HookManager::CreateServiceFunction + + .method private hidebysig static void HookEvent(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook) cil managed + { + // Code size 84 (0x54) + .maxstack 4 + .line 91,91 : 13,121 '' + IL_0000: ldarg.0 + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0006: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_000b: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_0010: ldfld class Virtuoso.Hyphen.Native.HookEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::HookEvent + IL_0015: ldarg.0 + IL_0016: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_001b: ldarg.0 + IL_001c: callvirt instance class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Callback() + IL_0021: callvirt instance native int Virtuoso.Hyphen.Native.HookEventPrototype::Invoke(string, + class Virtuoso.Miranda.Plugins.Callback) + IL_0026: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle(native int) + .line 93,93 : 13,51 '' + IL_002b: ldarg.0 + IL_002c: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0031: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0036: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_003b: brfalse.s IL_0053 + + .line 94,94 : 17,129 '' + IL_003d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_EventHookingFailed() + IL_0042: ldarg.0 + IL_0043: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name() + IL_0048: call string [mscorlib]System.String::Format(string, + object) + IL_004d: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_0052: throw + + .line 95,95 : 9,10 '' + IL_0053: ret + } // end of method HookManager::HookEvent + + .method public hidebysig static void DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor hook) cil managed + { + // Code size 68 (0x44) + .maxstack 2 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType CS$0$0000) + .line 101,101 : 17,67 '' + .try + { + IL_0000: ldarg.0 + IL_0001: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + .line 103,103 : 17,39 '' + IL_0006: ldarg.0 + IL_0007: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + IL_000c: stloc.0 + IL_000d: ldloc.0 + IL_000e: ldc.i4.1 + IL_000f: sub + IL_0010: switch ( + IL_001f, + IL_0027) + IL_001d: br.s IL_002f + + .line 107,107 : 29,47 '' + IL_001f: ldarg.0 + IL_0020: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::UnhookEvent(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 108,108 : 29,35 '' + IL_0025: br.s IL_003a + + .line 112,112 : 29,58 '' + IL_0027: ldarg.0 + IL_0028: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyServiceFunction(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 113,113 : 29,35 '' + IL_002d: br.s IL_003a + + .line 116,116 : 25,67 '' + IL_002f: ldstr "descriptor" + IL_0034: newobj instance void [mscorlib]System.ArgumentException::.ctor(string) + IL_0039: throw + + IL_003a: leave.s IL_0043 + + .line 121,121 : 17,55 '' + } // end .try + finally + { + IL_003c: ldarg.0 + IL_003d: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0042: endfinally + .line 123,123 : 9,10 '' + } // end handler + IL_0043: ret + } // end of method HookManager::DestroyHook + + .method private hidebysig static void UnhookEvent(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor) cil managed + { + // Code size 112 (0x70) + .maxstack 2 + .line 127,127 : 13,36 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 128,128 : 17,63 '' + IL_0003: ldstr "descriptor" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 130,130 : 13,59 '' + IL_000e: ldarg.0 + IL_000f: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + IL_0014: ldc.i4.1 + IL_0015: beq.s IL_0022 + + .line 131,131 : 17,69 '' + IL_0017: ldstr "descriptor" + IL_001c: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0021: throw + + .line 133,133 : 13,57 '' + IL_0022: ldarg.0 + IL_0023: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0028: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002d: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0032: brfalse.s IL_0035 + + .line 134,134 : 17,24 '' + IL_0034: ret + + .line 138,138 : 17,73 '' + .try + { + IL_0035: ldarg.0 + IL_0036: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + .line 140,140 : 17,119 '' + IL_003b: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0040: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0045: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_004a: ldfld class Virtuoso.Hyphen.Native.UnhookEventPrototype Virtuoso.Hyphen.Native.NativePluginLink::UnhookEvent + IL_004f: ldarg.0 + IL_0050: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0055: callvirt instance int32 Virtuoso.Hyphen.Native.UnhookEventPrototype::Invoke(native int) + IL_005a: pop + .line 143,143 : 17,56 '' + IL_005b: ldarg.0 + IL_005c: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0061: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle(native int) + IL_0066: leave.s IL_006f + + .line 147,147 : 17,61 '' + } // end .try + finally + { + IL_0068: ldarg.0 + IL_0069: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_006e: endfinally + .line 149,149 : 9,10 '' + } // end handler + IL_006f: ret + } // end of method HookManager::UnhookEvent + + .method private hidebysig static void DestroyServiceFunction(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor) cil managed + { + // Code size 112 (0x70) + .maxstack 2 + .line 153,153 : 13,36 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 154,154 : 17,63 '' + IL_0003: ldstr "descriptor" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 156,156 : 13,65 '' + IL_000e: ldarg.0 + IL_000f: callvirt instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType() + IL_0014: ldc.i4.2 + IL_0015: beq.s IL_0022 + + .line 157,157 : 17,69 '' + IL_0017: ldstr "descriptor" + IL_001c: newobj instance void [mscorlib]System.ArgumentOutOfRangeException::.ctor(string) + IL_0021: throw + + .line 159,159 : 13,57 '' + IL_0022: ldarg.0 + IL_0023: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0028: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_002d: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0032: brfalse.s IL_0035 + + .line 160,160 : 17,24 '' + IL_0034: ret + + .line 164,164 : 17,73 '' + .try + { + IL_0035: ldarg.0 + IL_0036: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate(class Virtuoso.Miranda.Plugins.IDescriptor) + .line 166,166 : 17,130 '' + IL_003b: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0040: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_0045: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_004a: ldfld class Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype Virtuoso.Hyphen.Native.NativePluginLink::DestroyServiceFunction + IL_004f: ldarg.0 + IL_0050: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle() + IL_0055: callvirt instance int32 Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype::Invoke(native int) + IL_005a: pop + .line 169,169 : 17,56 '' + IL_005b: ldarg.0 + IL_005c: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0061: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle(native int) + IL_0066: leave.s IL_006f + + .line 173,173 : 17,61 '' + } // end .try + finally + { + IL_0068: ldarg.0 + IL_0069: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_006e: endfinally + .line 175,175 : 9,10 '' + } // end handler + IL_006f: ret + } // end of method HookManager::DestroyServiceFunction + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.HookManager + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager + extends [mscorlib]System.Object +{ + .method public hidebysig static void CreateServiceFunction(string serviceName, + class Virtuoso.Miranda.Plugins.Callback callback, + class Virtuoso.Miranda.Plugins.MirandaPlugin owner) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 135 (0x87) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection collection, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor) + .line 32,32 : 13,51 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ServiceManager.cs' + IL_0000: ldarg.0 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 33,33 : 17,64 '' + IL_0008: ldstr "serviceName" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 35,35 : 13,34 '' + IL_0013: ldarg.1 + IL_0014: brtrue.s IL_0021 + + .line 36,36 : 17,61 '' + IL_0016: ldstr "callback" + IL_001b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0020: throw + + .line 38,38 : 13,31 '' + IL_0021: ldarg.2 + IL_0022: brtrue.s IL_002f + + .line 39,39 : 17,58 '' + IL_0024: ldstr "owner" + IL_0029: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_002e: throw + + .line 41,41 : 13,36 '' + IL_002f: ldarg.2 + IL_0030: callvirt instance bool Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized() + IL_0035: brtrue.s IL_0042 + + .line 42,42 : 17,102 '' + IL_0037: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized() + IL_003c: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0041: throw + + .line 44,44 : 13,85 '' + IL_0042: ldarg.2 + IL_0043: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0048: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_004d: stloc.0 + .line 48,48 : 17,64 '' + .try + { + IL_004e: ldarg.2 + IL_004f: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginPluginUpdate(class Virtuoso.Miranda.Plugins.MirandaPlugin) + .line 49,49 : 17,73 '' + IL_0054: ldloc.0 + IL_0055: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 51,51 : 17,153 '' + IL_005a: ldloc.0 + IL_005b: ldarg.0 + IL_005c: ldarg.2 + IL_005d: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0062: ldarg.1 + IL_0063: ldc.i4.2 + IL_0064: call class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore(class [mscorlib]System.Collections.Generic.IList`1, + string, + class Virtuoso.Miranda.Plugins.PluginDescriptor, + class Virtuoso.Miranda.Plugins.Callback, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.HookType) + IL_0069: stloc.1 + .line 52,52 : 17,54 '' + IL_006a: ldloc.1 + IL_006b: ldc.i4.1 + IL_006c: callvirt instance void Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_RegisteredManually(bool) + .line 54,54 : 17,52 '' + IL_0071: ldloc.1 + IL_0072: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + IL_0077: leave.s IL_0086 + + .line 58,58 : 17,56 '' + } // end .try + finally + { + IL_0079: ldarg.2 + IL_007a: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + .line 59,59 : 17,61 '' + IL_007f: ldloc.0 + IL_0080: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0085: endfinally + .line 61,61 : 9,10 '' + } // end handler + IL_0086: ret + } // end of method ServiceManager::CreateServiceFunction + + .method public hidebysig static bool ServiceExists(string name) cil managed + { + // Code size 33 (0x21) + .maxstack 8 + .line 65,65 : 13,96 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: callvirt instance class Virtuoso.Hyphen.MirandaPluginLink Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink() + IL_000a: callvirt instance class Virtuoso.Hyphen.Native.NativePluginLink Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink() + IL_000f: ldfld class Virtuoso.Hyphen.Native.ServiceExistsPrototype Virtuoso.Hyphen.Native.NativePluginLink::ServiceExists + IL_0014: ldarg.0 + IL_0015: callvirt instance int32 Virtuoso.Hyphen.Native.ServiceExistsPrototype::Invoke(string) + IL_001a: ldc.i4.0 + IL_001b: ceq + IL_001d: ldc.i4.0 + IL_001e: ceq + IL_0020: ret + } // end of method ServiceManager::ServiceExists + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Callback + GetService(string serviceName) cil managed + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + // Code size 7 (0x7) + .maxstack 8 + .line 71,71 : 13,56 '' + IL_0000: ldarg.0 + IL_0001: call class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::Create(string) + IL_0006: ret + } // end of method ServiceManager::GetService + + .method public hidebysig static void RemoveServiceFunction(class Virtuoso.Miranda.Plugins.MirandaPlugin owner, + string eventName) cil managed + { + // Code size 90 (0x5a) + .maxstack 2 + .locals init ([0] class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection collection, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor descriptor) + .line 76,76 : 13,31 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 77,77 : 17,58 '' + IL_0003: ldstr "owner" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 79,79 : 13,49 '' + IL_000e: ldarg.1 + IL_000f: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0014: brfalse.s IL_0021 + + .line 80,80 : 17,62 '' + IL_0016: ldstr "eventName" + IL_001b: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0020: throw + + .line 82,82 : 13,85 '' + IL_0021: ldarg.0 + IL_0022: callvirt instance class Virtuoso.Miranda.Plugins.PluginDescriptor Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor() + IL_0027: callvirt instance class Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions() + IL_002c: stloc.0 + .line 86,86 : 17,73 '' + .try + { + IL_002d: ldloc.0 + IL_002e: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate(class [mscorlib]System.Collections.IList) + .line 87,87 : 17,50 '' + IL_0033: ldnull + IL_0034: stloc.1 + .line 89,89 : 17,71 '' + IL_0035: ldloc.0 + IL_0036: ldarg.1 + IL_0037: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Find(string) + IL_003c: dup + IL_003d: stloc.1 + IL_003e: brtrue.s IL_0042 + + .line 90,90 : 21,28 '' + IL_0040: leave.s IL_0059 + + .line 92,92 : 17,53 '' + IL_0042: ldloc.1 + IL_0043: call void Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook(class Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor) + .line 93,93 : 17,47 '' + IL_0048: ldloc.0 + IL_0049: ldloc.1 + IL_004a: callvirt instance bool class [mscorlib]System.Collections.Generic.List`1::Remove(!0) + IL_004f: pop + IL_0050: leave.s IL_0059 + + .line 97,97 : 17,61 '' + } // end .try + finally + { + IL_0052: ldloc.0 + IL_0053: call void Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate(object) + IL_0058: endfinally + .line 99,99 : 9,10 '' + } // end handler + IL_0059: ret + } // end of method ServiceManager::RemoveServiceFunction + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public native int DbEventInfoPtr + .field public int32 DataType + .field public int32 Codepage +} // end of class Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Native.MMI_MallocPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method MMI_MallocPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(int32 size) runtime managed + { + } // end of method MMI_MallocPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(int32 size, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method MMI_MallocPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method MMI_MallocPrototype::EndInvoke + +} // end of class Virtuoso.Miranda.Plugins.Native.MMI_MallocPrototype + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Native.MMI_ReallocPrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method MMI_ReallocPrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(native int ptr, + int32 size) runtime managed + { + } // end of method MMI_ReallocPrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int ptr, + int32 size, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method MMI_ReallocPrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method MMI_ReallocPrototype::EndInvoke + +} // end of class Virtuoso.Miranda.Plugins.Native.MMI_ReallocPrototype + +.class private auto ansi sealed Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype + extends [mscorlib]System.MulticastDelegate +{ + .custom instance void [mscorlib]System.Runtime.InteropServices.UnmanagedFunctionPointerAttribute::.ctor(valuetype [mscorlib]System.Runtime.InteropServices.CallingConvention) = ( 01 00 02 00 00 00 00 00 ) + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method MMI_FreePrototype::.ctor + + .method public hidebysig newslot virtual + instance native int Invoke(native int ptr) runtime managed + { + } // end of method MMI_FreePrototype::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(native int ptr, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method MMI_FreePrototype::BeginInvoke + + .method public hidebysig newslot virtual + instance native int EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method MMI_FreePrototype::EndInvoke + +} // end of class Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public int32 Size + .field public initonly class Virtuoso.Miranda.Plugins.Native.MMI_MallocPrototype Malloc + .field public initonly class Virtuoso.Miranda.Plugins.Native.MMI_ReallocPrototype Realloc + .field public initonly class Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype Free +} // end of class Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + +.class private abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.UUID + extends [mscorlib]System.Object +{ + .field private static initonly valuetype [mscorlib]System.Guid hyphenUUID + .field private static initonly valuetype [mscorlib]System.Guid HyphenInterfaceUUID + .field private static native int hyphenInterfaceUUIDs + .field private static valuetype [mscorlib]System.Guid protocolUUID + .method public hidebysig specialname static + valuetype [mscorlib]System.Guid + get_HyphenUUID() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 34,34 : 19,42 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\UUID.cs' + IL_0000: ldsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::hyphenUUID + IL_0005: ret + } // end of method UUID::get_HyphenUUID + + .method public hidebysig specialname static + native int get_HyphenInterfaceUUIDs() cil managed + { + // Code size 123 (0x7b) + .maxstack 4 + .locals init ([0] int32 uuidSize, + [1] uint8[] uuidBytes, + [2] valuetype [mscorlib]System.Guid CS$0$0000, + [3] valuetype [mscorlib]System.Guid CS$0$0001) + .line 48,48 : 17,57 '' + IL_0000: ldsfld native int Virtuoso.Miranda.Plugins.Native.UUID::hyphenInterfaceUUIDs + IL_0005: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000a: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000f: brfalse.s IL_0075 + + .line 50,50 : 21,65 '' + IL_0011: ldtoken [mscorlib]System.Guid + IL_0016: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_001b: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0020: stloc.0 + .line 51,51 : 21,79 '' + IL_0021: ldc.i4.2 + IL_0022: ldloc.0 + IL_0023: mul + IL_0024: call native int [mscorlib]System.Runtime.InteropServices.Marshal::AllocHGlobal(int32) + IL_0029: stsfld native int Virtuoso.Miranda.Plugins.Native.UUID::hyphenInterfaceUUIDs + .line 53,53 : 21,74 '' + IL_002e: ldsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::HyphenInterfaceUUID + IL_0033: stloc.2 + IL_0034: ldloca.s CS$0$0000 + IL_0036: call instance uint8[] [mscorlib]System.Guid::ToByteArray() + IL_003b: stloc.1 + .line 54,54 : 21,88 '' + IL_003c: ldloc.1 + IL_003d: ldc.i4.0 + IL_003e: ldsfld native int Virtuoso.Miranda.Plugins.Native.UUID::hyphenInterfaceUUIDs + IL_0043: ldloc.1 + IL_0044: ldlen + IL_0045: conv.i4 + IL_0046: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + .line 57,57 : 21,52 '' + IL_004b: call valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_Last() + IL_0050: stloc.3 + IL_0051: ldloca.s CS$0$0001 + IL_0053: call instance uint8[] [mscorlib]System.Guid::ToByteArray() + IL_0058: stloc.1 + .line 58,58 : 21,121 '' + IL_0059: ldloc.1 + IL_005a: ldc.i4.0 + IL_005b: ldsflda native int Virtuoso.Miranda.Plugins.Native.UUID::hyphenInterfaceUUIDs + IL_0060: call instance int64 [mscorlib]System.IntPtr::ToInt64() + IL_0065: ldloc.0 + IL_0066: conv.i8 + IL_0067: add + IL_0068: newobj instance void [mscorlib]System.IntPtr::.ctor(int64) + IL_006d: ldloc.1 + IL_006e: ldlen + IL_006f: conv.i4 + IL_0070: call void [mscorlib]System.Runtime.InteropServices.Marshal::Copy(uint8[], + int32, + native int, + int32) + .line 61,61 : 17,45 '' + IL_0075: ldsfld native int Virtuoso.Miranda.Plugins.Native.UUID::hyphenInterfaceUUIDs + IL_007a: ret + } // end of method UUID::get_HyphenInterfaceUUIDs + + .method public hidebysig specialname static + valuetype [mscorlib]System.Guid + get_Last() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 75,75 : 17,35 '' + IL_0000: ldsfld valuetype [mscorlib]System.Guid [mscorlib]System.Guid::Empty + IL_0005: ret + } // end of method UUID::get_Last + + .method public hidebysig specialname static + valuetype [mscorlib]System.Guid + get_ProtocolUUID() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 82,82 : 19,39 '' + IL_0000: ldsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::protocolUUID + IL_0005: ret + } // end of method UUID::get_ProtocolUUID + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 86 (0x56) + .maxstack 11 + .line 31,31 : 9,100 '' + IL_0000: ldstr "A9CB92EC-A8C9-493a-8763-77EB1DBA8228" + IL_0005: newobj instance void [mscorlib]System.Guid::.ctor(string) + IL_000a: stsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::hyphenUUID + .line 41,41 : 9,109 '' + IL_000f: ldstr "9E54961E-D2A2-4939-A23E-FF07F0A27D79" + IL_0014: newobj instance void [mscorlib]System.Guid::.ctor(string) + IL_0019: stsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::HyphenInterfaceUUID + .line 79,79 : 9,128 '' + IL_001e: ldc.i4 0x2a3c815e + IL_0023: ldc.i4 0xa7d9 + IL_0028: ldc.i4 0x424b + IL_002d: ldc.i4 0xba + IL_0032: ldc.i4.s 48 + IL_0034: ldc.i4.2 + IL_0035: ldc.i4 0xd0 + IL_003a: ldc.i4 0x83 + IL_003f: ldc.i4.s 34 + IL_0041: ldc.i4 0x90 + IL_0046: ldc.i4 0x85 + IL_004b: newobj instance void [mscorlib]System.Guid::.ctor(uint32, + uint16, + uint16, + uint8, + uint8, + uint8, + uint8, + uint8, + uint8, + uint8, + uint8) + IL_0050: stsfld valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::protocolUUID + IL_0055: ret + } // end of method UUID::.cctor + + .property valuetype [mscorlib]System.Guid + HyphenUUID() + { + .get valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_HyphenUUID() + } // end of property UUID::HyphenUUID + .property native int HyphenInterfaceUUIDs() + { + .get native int Virtuoso.Miranda.Plugins.Native.UUID::get_HyphenInterfaceUUIDs() + } // end of property UUID::HyphenInterfaceUUIDs + .property valuetype [mscorlib]System.Guid + Last() + { + .get valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_Last() + } // end of property UUID::Last + .property valuetype [mscorlib]System.Guid + ProtocolUUID() + { + .get valuetype [mscorlib]System.Guid Virtuoso.Miranda.Plugins.Native.UUID::get_ProtocolUUID() + } // end of property UUID::ProtocolUUID +} // end of class Virtuoso.Miranda.Plugins.Native.UUID + +.class public abstract auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Helpers.Sandbox + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject +{ + .class auto ansi sealed nested private beforefieldinit MirandaContextInitHelper + extends Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject + { + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) cil managed + { + // Code size 32 (0x20) + .maxstack 8 + .line 49,49 : 13,68 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\Sandbox.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + .line 51,51 : 17,37 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 52,52 : 21,64 '' + IL_0009: ldstr "context" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 54,54 : 17,52 '' + IL_0014: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InvalidateCurrent() + .line 55,55 : 17,59 '' + IL_0019: ldarg.1 + IL_001a: call void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext) + .line 56,56 : 13,14 '' + IL_001f: ret + } // end of method MirandaContextInitHelper::.ctor + + } // end of class MirandaContextInitHelper + + .field private class [mscorlib]System.AppDomain hostingAppDomain + .method family hidebysig specialname instance class [mscorlib]System.AppDomain + get_HostingAppDomain() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 40,40 : 19,43 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0006: ret + } // end of method Sandbox::get_HostingAppDomain + + .method family hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 63,63 : 9,28 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor() + .line 63,63 : 31,32 '' + IL_0006: ret + } // end of method Sandbox::.ctor + + .method public hidebysig static void Unload(class Virtuoso.Miranda.Plugins.Helpers.Sandbox sandbox) cil managed + { + // Code size 65 (0x41) + .maxstack 2 + .line 67,67 : 13,33 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 68,68 : 17,60 '' + IL_0003: ldstr "sandbox" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 70,70 : 13,50 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0014: brtrue.s IL_001c + + .line 71,71 : 17,47 '' + IL_0016: newobj instance void [mscorlib]System.ArgumentException::.ctor() + IL_001b: throw + + .line 73,73 : 13,69 '' + IL_001c: ldarg.0 + IL_001d: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0022: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0027: bne.un.s IL_0034 + + .line 74,74 : 17,128 '' + IL_0029: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain() + IL_002e: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0033: throw + + .line 76,76 : 13,39 '' + IL_0034: ldarg.0 + IL_0035: callvirt instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::OnSandboxUnload() + .line 77,77 : 13,46 '' + IL_003a: ldarg.0 + IL_003b: callvirt instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::UnloadHostingAppDomain() + .line 78,78 : 9,10 '' + IL_0040: ret + } // end of method Sandbox::Unload + + .method family hidebysig newslot virtual + instance void InitializeAppDomainSetup(class [mscorlib]System.AppDomainSetup domainSetup) cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 84,84 : 87,88 '' + IL_0000: ret + } // end of method Sandbox::InitializeAppDomainSetup + + .method family hidebysig newslot virtual + instance void OnSandboxUnload() cil managed + { + // Code size 1 (0x1) + .maxstack 8 + .line 86,86 : 52,53 '' + IL_0000: ret + } // end of method Sandbox::OnSandboxUnload + + .method family hidebysig static class [mscorlib]System.Security.Policy.StrongName + GetStrongName(class [mscorlib]System.Reflection.Assembly 'assembly') cil managed + { + // Code size 79 (0x4f) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Reflection.AssemblyName assemblyName, + [1] uint8[] publicKey, + [2] class [mscorlib]System.Security.Permissions.StrongNamePublicKeyBlob keyBlob) + .line 94,94 : 13,34 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 95,95 : 17,61 '' + IL_0003: ldstr "assembly" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 97,97 : 13,60 '' + IL_000e: ldarg.0 + IL_000f: callvirt instance class [mscorlib]System.Reflection.AssemblyName [mscorlib]System.Reflection.Assembly::GetName() + IL_0014: stloc.0 + .line 100,100 : 13,60 '' + IL_0015: ldloc.0 + IL_0016: callvirt instance uint8[] [mscorlib]System.Reflection.AssemblyName::GetPublicKey() + IL_001b: stloc.1 + .line 101,101 : 13,60 '' + IL_001c: ldloc.1 + IL_001d: brfalse.s IL_0024 + + IL_001f: ldloc.1 + IL_0020: ldlen + IL_0021: conv.i4 + IL_0022: brtrue.s IL_0035 + + .line 102,102 : 17,107 '' + IL_0024: ldstr "{0} is not strongly named" + IL_0029: ldarg.0 + IL_002a: call string [mscorlib]System.String::Format(string, + object) + IL_002f: newobj instance void [mscorlib]System.InvalidOperationException::.ctor(string) + IL_0034: throw + + .line 104,104 : 13,86 '' + IL_0035: ldloc.1 + IL_0036: newobj instance void [mscorlib]System.Security.Permissions.StrongNamePublicKeyBlob::.ctor(uint8[]) + IL_003b: stloc.2 + .line 105,105 : 13,85 '' + IL_003c: ldloc.2 + IL_003d: ldloc.0 + IL_003e: callvirt instance string [mscorlib]System.Reflection.AssemblyName::get_Name() + IL_0043: ldloc.0 + IL_0044: callvirt instance class [mscorlib]System.Version [mscorlib]System.Reflection.AssemblyName::get_Version() + IL_0049: newobj instance void [mscorlib]System.Security.Policy.StrongName::.ctor(class [mscorlib]System.Security.Permissions.StrongNamePublicKeyBlob, + string, + class [mscorlib]System.Version) + IL_004e: ret + } // end of method Sandbox::GetStrongName + + .method family hidebysig instance void + SetUpHostingAppDomain(string name) cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 114,114 : 13,53 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldnull + IL_0003: ldnull + IL_0004: ldc.i4.0 + IL_0005: newarr [mscorlib]System.Security.Policy.StrongName + IL_000a: call instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::SetUpHostingAppDomain(string, + class [mscorlib]System.Security.Policy.Evidence, + class [mscorlib]System.Security.PermissionSet, + class [mscorlib]System.Security.Policy.StrongName[]) + .line 115,115 : 9,10 '' + IL_000f: ret + } // end of method Sandbox::SetUpHostingAppDomain + + .method family hidebysig instance void + SetUpHostingAppDomain(string name, + class [mscorlib]System.Security.Policy.Evidence evidence, + class [mscorlib]System.Security.PermissionSet permissions, + class [mscorlib]System.Security.Policy.StrongName[] fullTrust) cil managed + { + .param [4] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 150 (0x96) + .maxstack 6 + .locals init ([0] class [mscorlib]System.AppDomainSetup currentSetup, + [1] class [mscorlib]System.AppDomainSetup domainSetup) + .line 119,119 : 13,44 '' + IL_0000: ldarg.1 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_0013 + + .line 120,120 : 17,57 '' + IL_0008: ldstr "name" + IL_000d: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0012: throw + + .line 122,122 : 13,42 '' + IL_0013: ldarg.0 + IL_0014: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0019: brfalse.s IL_0021 + + .line 123,123 : 17,55 '' + IL_001b: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_0020: throw + + .line 125,125 : 13,84 '' + IL_0021: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::get_CurrentDomain() + IL_0026: callvirt instance class [mscorlib]System.AppDomainSetup [mscorlib]System.AppDomain::get_SetupInformation() + IL_002b: stloc.0 + .line 126,126 : 13,63 '' + IL_002c: newobj instance void [mscorlib]System.AppDomainSetup::.ctor() + IL_0031: stloc.1 + .line 128,128 : 13,48 '' + IL_0032: ldloc.1 + IL_0033: ldarg.1 + IL_0034: callvirt instance void [mscorlib]System.AppDomainSetup::set_ApplicationName(string) + .line 129,129 : 13,72 '' + IL_0039: ldloc.1 + IL_003a: ldloc.0 + IL_003b: callvirt instance string [mscorlib]System.AppDomainSetup::get_ApplicationBase() + IL_0040: callvirt instance void [mscorlib]System.AppDomainSetup::set_ApplicationBase(string) + .line 130,130 : 13,174 '' + IL_0045: ldloc.1 + IL_0046: ldstr "{0};{1};" + IL_004b: ldstr "plugins\\" + IL_0050: ldstr "plugins\\managed" + IL_0055: call string [mscorlib]System.String::Format(string, + object, + object) + IL_005a: callvirt instance void [mscorlib]System.AppDomainSetup::set_PrivateBinPath(string) + .line 131,131 : 13,76 '' + IL_005f: ldloc.1 + IL_0060: ldloc.0 + IL_0061: callvirt instance string [mscorlib]System.AppDomainSetup::get_ConfigurationFile() + IL_0066: callvirt instance void [mscorlib]System.AppDomainSetup::set_ConfigurationFile(string) + .line 133,133 : 13,51 '' + IL_006b: ldarg.0 + IL_006c: ldloc.1 + IL_006d: callvirt instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::InitializeAppDomainSetup(class [mscorlib]System.AppDomainSetup) + .line 135,135 : 13,37 '' + IL_0072: ldarg.3 + IL_0073: brtrue.s IL_0084 + + .line 136,136 : 17,84 '' + IL_0075: ldarg.0 + IL_0076: ldarg.1 + IL_0077: ldnull + IL_0078: ldloc.1 + IL_0079: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::CreateDomain(string, + class [mscorlib]System.Security.Policy.Evidence, + class [mscorlib]System.AppDomainSetup) + IL_007e: stfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0083: ret + + .line 138,138 : 17,112 '' + IL_0084: ldarg.0 + IL_0085: ldarg.1 + IL_0086: ldarg.2 + IL_0087: ldloc.1 + IL_0088: ldarg.3 + IL_0089: ldarg.s fullTrust + IL_008b: call class [mscorlib]System.AppDomain [mscorlib]System.AppDomain::CreateDomain(string, + class [mscorlib]System.Security.Policy.Evidence, + class [mscorlib]System.AppDomainSetup, + class [mscorlib]System.Security.PermissionSet, + class [mscorlib]System.Security.Policy.StrongName[]) + IL_0090: stfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + .line 139,139 : 9,10 '' + IL_0095: ret + } // end of method Sandbox::SetUpHostingAppDomain + + .method family hidebysig instance void + UnloadHostingAppDomain() cil managed + { + // Code size 33 (0x21) + .maxstack 8 + .line 143,143 : 13,42 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0006: brtrue.s IL_000e + + .line 144,144 : 17,55 '' + IL_0008: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_000d: throw + + .line 147,147 : 17,52 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0014: call void [mscorlib]System.AppDomain::Unload(class [mscorlib]System.AppDomain) + .line 148,148 : 17,41 '' + IL_0019: ldarg.0 + IL_001a: ldnull + IL_001b: stfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + .line 150,150 : 9,10 '' + IL_0020: ret + } // end of method Sandbox::UnloadHostingAppDomain + + .method family hidebysig instance !!T InstantiateRemoteObject(string assemblyName, + string typeName, + object[] args) cil managed + { + .param [3] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 40 (0x28) + .maxstack 10 + .line 154,154 : 13,237 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0006: ldarg.1 + IL_0007: ldarg.2 + IL_0008: ldc.i4.1 + IL_0009: ldc.i4 0x234 + IL_000e: ldnull + IL_000f: ldarg.3 + IL_0010: ldnull + IL_0011: ldnull + IL_0012: ldnull + IL_0013: call class [mscorlib]System.Runtime.Remoting.ObjectHandle [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.AppDomain, + string, + string, + bool, + valuetype [mscorlib]System.Reflection.BindingFlags, + class [mscorlib]System.Reflection.Binder, + object[], + class [mscorlib]System.Globalization.CultureInfo, + object[], + class [mscorlib]System.Security.Policy.Evidence) + IL_0018: callvirt instance object [mscorlib]System.Runtime.Remoting.ObjectHandle::Unwrap() + IL_001d: isinst !!T + IL_0022: unbox.any !!T + IL_0027: ret + } // end of method Sandbox::InstantiateRemoteObject + + .method family hidebysig instance !!T InstantiateRemoteObjectFrom(string assemblyFile, + string typeName, + object[] args) cil managed + { + .param [3] + .custom instance void [mscorlib]System.ParamArrayAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 40 (0x28) + .maxstack 10 + .line 159,159 : 13,241 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0006: ldarg.1 + IL_0007: ldarg.2 + IL_0008: ldc.i4.1 + IL_0009: ldc.i4 0x234 + IL_000e: ldnull + IL_000f: ldarg.3 + IL_0010: ldnull + IL_0011: ldnull + IL_0012: ldnull + IL_0013: call class [mscorlib]System.Runtime.Remoting.ObjectHandle [mscorlib]System.Activator::CreateInstanceFrom(class [mscorlib]System.AppDomain, + string, + string, + bool, + valuetype [mscorlib]System.Reflection.BindingFlags, + class [mscorlib]System.Reflection.Binder, + object[], + class [mscorlib]System.Globalization.CultureInfo, + object[], + class [mscorlib]System.Security.Policy.Evidence) + IL_0018: callvirt instance object [mscorlib]System.Runtime.Remoting.ObjectHandle::Unwrap() + IL_001d: isinst !!T + IL_0022: unbox.any !!T + IL_0027: ret + } // end of method Sandbox::InstantiateRemoteObjectFrom + + .method family hidebysig instance void + InitializeRemoteContext(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext context) cil managed + { + // Code size 73 (0x49) + .maxstack 6 + .locals init ([0] object[] CS$0$0000) + .line 164,164 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: brtrue.s IL_000e + + .line 165,165 : 17,60 '' + IL_0003: ldstr "context" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 167,167 : 13,42 '' + IL_000e: ldarg.0 + IL_000f: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0014: brtrue.s IL_001c + + .line 168,168 : 17,55 '' + IL_0016: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_001b: throw + + .line 170,170 : 13,157 '' + IL_001c: ldarg.0 + IL_001d: call class [mscorlib]System.Reflection.Assembly [mscorlib]System.Reflection.Assembly::GetExecutingAssembly() + IL_0022: callvirt instance string [mscorlib]System.Reflection.Assembly::get_FullName() + IL_0027: ldtoken Virtuoso.Miranda.Plugins.Helpers.Sandbox/MirandaContextInitHelper + IL_002c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0031: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0036: ldc.i4.1 + IL_0037: newarr [mscorlib]System.Object + IL_003c: stloc.0 + IL_003d: ldloc.0 + IL_003e: ldc.i4.0 + IL_003f: ldarg.1 + IL_0040: stelem.ref + IL_0041: ldloc.0 + IL_0042: call instance !!0 Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject(string, + string, + object[]) + IL_0047: pop + .line 171,171 : 9,10 '' + IL_0048: ret + } // end of method Sandbox::InitializeRemoteContext + + .method public hidebysig instance void + SetUnhandledExceptionHandler(class [mscorlib]System.UnhandledExceptionEventHandler 'handler') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 175,175 : 13,60 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0006: ldarg.1 + IL_0007: callvirt instance void [mscorlib]System.AppDomain::add_UnhandledException(class [mscorlib]System.UnhandledExceptionEventHandler) + .line 176,176 : 9,10 '' + IL_000c: ret + } // end of method Sandbox::SetUnhandledExceptionHandler + + .method public hidebysig instance void + RemoveUnhandledExceptionHandler(class [mscorlib]System.UnhandledExceptionEventHandler 'handler') cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 180,180 : 13,60 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::hostingAppDomain + IL_0006: ldarg.1 + IL_0007: callvirt instance void [mscorlib]System.AppDomain::remove_UnhandledException(class [mscorlib]System.UnhandledExceptionEventHandler) + .line 181,181 : 9,10 '' + IL_000c: ret + } // end of method Sandbox::RemoveUnhandledExceptionHandler + + .property instance class [mscorlib]System.AppDomain + HostingAppDomain() + { + .get instance class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::get_HostingAppDomain() + } // end of property Sandbox::HostingAppDomain +} // end of class Virtuoso.Miranda.Plugins.Helpers.Sandbox + +.class private auto ansi sealed beforefieldinit Virtuoso.Hyphen.PluginsSandbox + extends Virtuoso.Miranda.Plugins.Helpers.Sandbox +{ + .field private class Virtuoso.Miranda.Plugins.AssemblyProbe assemblyProbe + .field private class Virtuoso.Miranda.Plugins.PluginManagerBase pluginManager + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.AssemblyProbe + get_AssemblyProbe() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 39,39 : 19,40 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Hyphen\\PluginSandbox.cs' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.PluginsSandbox::assemblyProbe + IL_0006: ret + } // end of method PluginsSandbox::get_AssemblyProbe + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.PluginManagerBase + get_PluginManager() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 45,45 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::pluginManager + IL_0006: ret + } // end of method PluginsSandbox::get_PluginManager + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 52,52 : 9,32 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::.ctor() + .line 54,54 : 13,52 '' + IL_0006: ldarg.0 + IL_0007: ldstr "HyphenPlugins" + IL_000c: call instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::SetUpHostingAppDomain(string) + .line 55,55 : 9,10 '' + IL_0011: ret + } // end of method PluginsSandbox::.ctor + + .method family hidebysig virtual instance void + InitializeAppDomainSetup(class [mscorlib]System.AppDomainSetup domainSetup) cil managed + { + // Code size 34 (0x22) + .maxstack 2 + .locals init ([0] bool CS$0$0000) + .line 59,59 : 13,56 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Helpers.Sandbox::InitializeAppDomainSetup(class [mscorlib]System.AppDomainSetup) + .line 61,61 : 13,59 '' + IL_0007: ldarg.1 + IL_0008: ldc.i4.1 + IL_0009: stloc.0 + IL_000a: ldloca.s CS$0$0000 + IL_000c: call instance string [mscorlib]System.Boolean::ToString() + IL_0011: callvirt instance void [mscorlib]System.AppDomainSetup::set_ShadowCopyFiles(string) + .line 62,62 : 13,93 '' + IL_0016: ldarg.1 + IL_0017: call string Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath() + IL_001c: callvirt instance void [mscorlib]System.AppDomainSetup::set_ShadowCopyDirectories(string) + .line 63,63 : 9,10 '' + IL_0021: ret + } // end of method PluginsSandbox::InitializeAppDomainSetup + + .method public hidebysig instance void + LoadAssemblyProbe() cil managed + { + // Code size 110 (0x6e) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.AssemblyProbe customProbe, + [1] string fusionAssemblyName, + [2] string assemblyProbeTypeName) + .line 67,67 : 13,46 '' + IL_0000: ldnull + IL_0001: stloc.0 + .line 71,71 : 17,101 '' + .try + { + IL_0002: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0007: callvirt instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomFusionAssemblyName() + IL_000c: stloc.1 + .line 72,72 : 17,107 '' + IL_000d: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0012: callvirt instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomAssemblyProbeTypeName() + IL_0017: stloc.2 + .line 74,74 : 17,111 '' + IL_0018: ldloc.1 + IL_0019: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_001e: brtrue.s IL_0032 + + IL_0020: ldloc.2 + IL_0021: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0026: brtrue.s IL_0032 + + .line 75,75 : 21,123 '' + IL_0028: ldarg.0 + IL_0029: ldloc.1 + IL_002a: ldloc.2 + IL_002b: ldnull + IL_002c: call instance !!0 Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject(string, + string, + object[]) + IL_0031: stloc.0 + IL_0032: leave.s IL_0037 + + .line 77,77 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_0034: pop + IL_0035: leave.s IL_0037 + + .line 82,82 : 13,151 '' + } // end handler + IL_0037: ldarg.0 + IL_0038: ldloc.0 + IL_0039: dup + IL_003a: brtrue.s IL_0068 + + IL_003c: pop + IL_003d: ldarg.0 + IL_003e: ldarg.0 + IL_003f: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_0044: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0049: callvirt instance string [mscorlib]System.Reflection.Assembly::get_FullName() + IL_004e: ldtoken Virtuoso.Miranda.Plugins.DefaultAssemblyProbe + IL_0053: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0058: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_005d: ldc.i4.0 + IL_005e: newarr [mscorlib]System.Object + IL_0063: call instance !!0 Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject(string, + string, + object[]) + IL_0068: stfld class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.PluginsSandbox::assemblyProbe + .line 83,83 : 9,10 '' + IL_006d: ret + } // end of method PluginsSandbox::LoadAssemblyProbe + + .method public hidebysig instance void + LoadPluginManager(class Virtuoso.Hyphen.FusionContext context) cil managed + { + // Code size 130 (0x82) + .maxstack 7 + .locals init ([0] class Virtuoso.Miranda.Plugins.PluginManagerBase customManager, + [1] string fusionAssemblyName, + [2] string pluginManagerTypeName, + [3] object[] CS$0$0000, + [4] object[] CS$0$0001) + .line 87,87 : 13,52 '' + IL_0000: ldnull + IL_0001: stloc.0 + .line 91,91 : 17,101 '' + .try + { + IL_0002: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0007: callvirt instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomFusionAssemblyName() + IL_000c: stloc.1 + .line 92,92 : 17,107 '' + IL_000d: call class Virtuoso.Hyphen.Configuration.RuntimeConfiguration Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton() + IL_0012: callvirt instance string Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomPluginManagerTypeName() + IL_0017: stloc.2 + .line 94,94 : 17,111 '' + IL_0018: ldloc.1 + IL_0019: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_001e: brtrue.s IL_003d + + IL_0020: ldloc.2 + IL_0021: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0026: brtrue.s IL_003d + + .line 95,95 : 21,132 '' + IL_0028: ldarg.0 + IL_0029: ldloc.1 + IL_002a: ldloc.2 + IL_002b: ldc.i4.1 + IL_002c: newarr [mscorlib]System.Object + IL_0031: stloc.3 + IL_0032: ldloc.3 + IL_0033: ldc.i4.0 + IL_0034: ldarg.1 + IL_0035: stelem.ref + IL_0036: ldloc.3 + IL_0037: call instance !!0 Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject(string, + string, + object[]) + IL_003c: stloc.0 + IL_003d: leave.s IL_0042 + + .line 97,97 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_003f: pop + IL_0040: leave.s IL_0042 + + .line 102,102 : 13,166 '' + } // end handler + IL_0042: ldarg.0 + IL_0043: ldloc.0 + IL_0044: dup + IL_0045: brtrue.s IL_007c + + IL_0047: pop + IL_0048: ldarg.0 + IL_0049: ldarg.0 + IL_004a: call instance class [mscorlib]System.Type [mscorlib]System.Object::GetType() + IL_004f: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0054: callvirt instance string [mscorlib]System.Reflection.Assembly::get_FullName() + IL_0059: ldtoken Virtuoso.Miranda.Plugins.DefaultPluginManager + IL_005e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0063: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_0068: ldc.i4.1 + IL_0069: newarr [mscorlib]System.Object + IL_006e: stloc.s CS$0$0001 + IL_0070: ldloc.s CS$0$0001 + IL_0072: ldc.i4.0 + IL_0073: ldarg.1 + IL_0074: stelem.ref + IL_0075: ldloc.s CS$0$0001 + IL_0077: call instance !!0 Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject(string, + string, + object[]) + IL_007c: stfld class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::pluginManager + .line 103,103 : 9,10 '' + IL_0081: ret + } // end of method PluginsSandbox::LoadPluginManager + + .method public hidebysig specialname instance string + get_HostingAppDomainPrivateBinPath() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 113,113 : 17,73 '' + IL_0000: ldarg.0 + IL_0001: call instance class [mscorlib]System.AppDomain Virtuoso.Miranda.Plugins.Helpers.Sandbox::get_HostingAppDomain() + IL_0006: callvirt instance class [mscorlib]System.AppDomainSetup [mscorlib]System.AppDomain::get_SetupInformation() + IL_000b: callvirt instance string [mscorlib]System.AppDomainSetup::get_PrivateBinPath() + IL_0010: ret + } // end of method PluginsSandbox::get_HostingAppDomainPrivateBinPath + + .property instance class Virtuoso.Miranda.Plugins.AssemblyProbe + AssemblyProbe() + { + .get instance class Virtuoso.Miranda.Plugins.AssemblyProbe Virtuoso.Hyphen.PluginsSandbox::get_AssemblyProbe() + } // end of property PluginsSandbox::AssemblyProbe + .property instance class Virtuoso.Miranda.Plugins.PluginManagerBase + PluginManager() + { + .get instance class Virtuoso.Miranda.Plugins.PluginManagerBase Virtuoso.Hyphen.PluginsSandbox::get_PluginManager() + } // end of property PluginsSandbox::PluginManager + .property instance string HostingAppDomainPrivateBinPath() + { + .get instance string Virtuoso.Hyphen.PluginsSandbox::get_HostingAppDomainPrivateBinPath() + } // end of property PluginsSandbox::HostingAppDomainPrivateBinPath +} // end of class Virtuoso.Hyphen.PluginsSandbox + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Helpers.IniStructure + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested private LineType + extends [mscorlib]System.Enum + { + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType NotACategory = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Category = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Faulty = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Comment = int32(0x00000003) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Empty = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Ok = int32(0x00000005) + } // end of class LineType + + .field private class [mscorlib]System.Collections.SortedList Categories + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 76,76 : 3,52 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\IniStructure.cs' + IL_0000: ldarg.0 + IL_0001: newobj instance void [mscorlib]System.Collections.SortedList::.ctor() + IL_0006: stfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + .line 81,81 : 3,24 '' + IL_000b: ldarg.0 + IL_000c: call instance void [mscorlib]System.Object::.ctor() + .line 83,83 : 3,4 '' + IL_0011: ret + } // end of method IniStructure::.ctor + + .method public hidebysig instance bool + AddCategory(string Name) cil managed + { + // Code size 95 (0x5f) + .maxstack 3 + .line 91,91 : 4,50 '' + IL_0000: ldarg.1 + IL_0001: ldstr "" + IL_0006: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000b: ldarg.0 + IL_000c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0011: ldarg.1 + IL_0012: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0017: or + IL_0018: brfalse.s IL_001c + + .line 92,92 : 5,18 '' + IL_001a: ldc.i4.0 + IL_001b: ret + + .line 93,95 : 4,31 '' + IL_001c: ldarg.1 + IL_001d: ldc.i4.s 61 + IL_001f: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0024: ldc.i4.m1 + IL_0025: ceq + IL_0027: ldc.i4.0 + IL_0028: ceq + IL_002a: ldarg.1 + IL_002b: ldc.i4.s 91 + IL_002d: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0032: ldc.i4.m1 + IL_0033: ceq + IL_0035: ldc.i4.0 + IL_0036: ceq + IL_0038: or + IL_0039: ldarg.1 + IL_003a: ldc.i4.s 93 + IL_003c: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0041: ldc.i4.m1 + IL_0042: ceq + IL_0044: ldc.i4.0 + IL_0045: ceq + IL_0047: or + IL_0048: brfalse.s IL_004c + + .line 96,96 : 5,18 '' + IL_004a: ldc.i4.0 + IL_004b: ret + + .line 98,98 : 4,43 '' + IL_004c: ldarg.0 + IL_004d: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0052: ldarg.1 + IL_0053: newobj instance void [mscorlib]System.Collections.SortedList::.ctor() + IL_0058: callvirt instance void [mscorlib]System.Collections.SortedList::Add(object, + object) + .line 99,99 : 4,16 '' + IL_005d: ldc.i4.1 + IL_005e: ret + } // end of method IniStructure::AddCategory + + .method public hidebysig instance bool + DeleteCategory(string Name) cil managed + { + // Code size 45 (0x2d) + .maxstack 8 + .line 108,108 : 4,51 '' + IL_0000: ldarg.1 + IL_0001: ldstr "" + IL_0006: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000b: ldarg.0 + IL_000c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0011: ldarg.1 + IL_0012: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: or + IL_001b: brfalse.s IL_001f + + .line 109,109 : 5,18 '' + IL_001d: ldc.i4.0 + IL_001e: ret + + .line 110,110 : 4,28 '' + IL_001f: ldarg.0 + IL_0020: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0025: ldarg.1 + IL_0026: callvirt instance void [mscorlib]System.Collections.SortedList::Remove(object) + .line 111,111 : 4,16 '' + IL_002b: ldc.i4.1 + IL_002c: ret + } // end of method IniStructure::DeleteCategory + + .method public hidebysig instance bool + RenameCategory(string Name, + string NewName) cil managed + { + // Code size 132 (0x84) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category) + .line 121,121 : 4,67 '' + IL_0000: ldarg.1 + IL_0001: ldstr "" + IL_0006: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000b: ldarg.0 + IL_000c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0011: ldarg.1 + IL_0012: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: or + IL_001b: ldarg.2 + IL_001c: ldstr "" + IL_0021: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0026: or + IL_0027: brfalse.s IL_002b + + .line 122,122 : 5,18 '' + IL_0029: ldc.i4.0 + IL_002a: ret + + .line 124,126 : 4,34 '' + IL_002b: ldarg.2 + IL_002c: ldc.i4.s 61 + IL_002e: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0033: ldc.i4.m1 + IL_0034: ceq + IL_0036: ldc.i4.0 + IL_0037: ceq + IL_0039: ldarg.2 + IL_003a: ldc.i4.s 91 + IL_003c: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0041: ldc.i4.m1 + IL_0042: ceq + IL_0044: ldc.i4.0 + IL_0045: ceq + IL_0047: or + IL_0048: ldarg.2 + IL_0049: ldc.i4.s 93 + IL_004b: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0050: ldc.i4.m1 + IL_0051: ceq + IL_0053: ldc.i4.0 + IL_0054: ceq + IL_0056: or + IL_0057: brfalse.s IL_005b + + .line 127,127 : 5,18 '' + IL_0059: ldc.i4.0 + IL_005a: ret + + .line 129,129 : 4,57 '' + IL_005b: ldarg.0 + IL_005c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0061: ldarg.1 + IL_0062: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_0067: castclass [mscorlib]System.Collections.SortedList + IL_006c: stloc.0 + .line 130,130 : 4,38 '' + IL_006d: ldarg.0 + IL_006e: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0073: ldarg.2 + IL_0074: ldloc.0 + IL_0075: callvirt instance void [mscorlib]System.Collections.SortedList::Add(object, + object) + .line 131,131 : 4,30 '' + IL_007a: ldarg.0 + IL_007b: ldarg.1 + IL_007c: call instance bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::DeleteCategory(string) + IL_0081: pop + .line 132,132 : 4,16 '' + IL_0082: ldc.i4.1 + IL_0083: ret + } // end of method IniStructure::RenameCategory + + .method public hidebysig instance string[] + GetCategories() cil managed + { + // Code size 70 (0x46) + .maxstack 4 + .locals init ([0] string[] CatNames, + [1] class [mscorlib]System.Collections.IList KeyList, + [2] int32 KeyCount, + [3] int32 i) + .line 141,141 : 4,53 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0006: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_000b: newarr [mscorlib]System.String + IL_0010: stloc.0 + .line 142,142 : 4,44 '' + IL_0011: ldarg.0 + IL_0012: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0017: callvirt instance class [mscorlib]System.Collections.IList [mscorlib]System.Collections.SortedList::GetKeyList() + IL_001c: stloc.1 + .line 143,143 : 4,36 '' + IL_001d: ldarg.0 + IL_001e: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0023: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0028: stloc.2 + .line 144,144 : 9,19 '' + IL_0029: ldc.i4.0 + IL_002a: stloc.3 + IL_002b: br.s IL_0040 + + .line 146,146 : 5,41 '' + IL_002d: ldloc.0 + IL_002e: ldloc.3 + IL_002f: ldloc.1 + IL_0030: ldloc.3 + IL_0031: callvirt instance object [mscorlib]System.Collections.IList::get_Item(int32) + IL_0036: callvirt instance string [mscorlib]System.Object::ToString() + IL_003b: stelem.ref + .line 144,144 : 34,37 '' + IL_003c: ldloc.3 + IL_003d: ldc.i4.1 + IL_003e: add + IL_003f: stloc.3 + .line 144,144 : 20,32 '' + IL_0040: ldloc.3 + IL_0041: ldloc.2 + IL_0042: blt.s IL_002d + + .line 148,148 : 4,20 '' + IL_0044: ldloc.0 + IL_0045: ret + } // end of method IniStructure::GetCategories + + .method public hidebysig instance string + GetCategoryName(int32 Index) cil managed + { + // Code size 44 (0x2c) + .maxstack 8 + .line 159,159 : 4,46 '' + IL_0000: ldarg.1 + IL_0001: ldc.i4.0 + IL_0002: clt + IL_0004: ldarg.1 + IL_0005: ldarg.0 + IL_0006: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_000b: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0010: clt + IL_0012: ldc.i4.0 + IL_0013: ceq + IL_0015: or + IL_0016: brfalse.s IL_001a + + .line 160,160 : 5,17 '' + IL_0018: ldnull + IL_0019: ret + + .line 161,161 : 4,47 '' + IL_001a: ldarg.0 + IL_001b: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0020: ldarg.1 + IL_0021: callvirt instance object [mscorlib]System.Collections.SortedList::GetKey(int32) + IL_0026: callvirt instance string [mscorlib]System.Object::ToString() + IL_002b: ret + } // end of method IniStructure::GetCategoryName + + .method public hidebysig instance bool + AddValue(string CategoryName, + string Key, + string Value) cil managed + { + // Code size 160 (0xa0) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category) + .line 172,172 : 4,39 '' + IL_0000: ldarg.1 + IL_0001: ldstr "" + IL_0006: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000b: ldarg.2 + IL_000c: ldstr "" + IL_0011: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0016: or + IL_0017: brfalse.s IL_001b + + .line 173,173 : 5,18 '' + IL_0019: ldc.i4.0 + IL_001a: ret + + .line 174,179 : 4,6 '' + IL_001b: ldarg.2 + IL_001c: ldc.i4.s 61 + IL_001e: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0023: ldc.i4.m1 + IL_0024: ceq + IL_0026: ldc.i4.0 + IL_0027: ceq + IL_0029: ldarg.2 + IL_002a: ldc.i4.s 91 + IL_002c: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0031: ldc.i4.m1 + IL_0032: ceq + IL_0034: ldc.i4.0 + IL_0035: ceq + IL_0037: or + IL_0038: ldarg.2 + IL_0039: ldc.i4.s 93 + IL_003b: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0040: ldc.i4.m1 + IL_0041: ceq + IL_0043: ldc.i4.0 + IL_0044: ceq + IL_0046: or + IL_0047: ldarg.2 + IL_0048: ldc.i4.s 59 + IL_004a: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_004f: ldc.i4.m1 + IL_0050: ceq + IL_0052: ldc.i4.0 + IL_0053: ceq + IL_0055: or + IL_0056: ldarg.2 + IL_0057: ldc.i4.s 35 + IL_0059: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_005e: ldc.i4.m1 + IL_005f: ceq + IL_0061: ldc.i4.0 + IL_0062: ceq + IL_0064: or + IL_0065: brfalse.s IL_0069 + + .line 180,180 : 5,18 '' + IL_0067: ldc.i4.0 + IL_0068: ret + + .line 181,181 : 4,46 '' + IL_0069: ldarg.0 + IL_006a: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_006f: ldarg.1 + IL_0070: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0075: brtrue.s IL_0079 + + .line 182,182 : 5,18 '' + IL_0077: ldc.i4.0 + IL_0078: ret + + .line 183,183 : 4,65 '' + IL_0079: ldarg.0 + IL_007a: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_007f: ldarg.1 + IL_0080: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_0085: castclass [mscorlib]System.Collections.SortedList + IL_008a: stloc.0 + .line 184,184 : 4,34 '' + IL_008b: ldloc.0 + IL_008c: ldarg.2 + IL_008d: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0092: brfalse.s IL_0096 + + .line 185,185 : 5,18 '' + IL_0094: ldc.i4.0 + IL_0095: ret + + .line 186,186 : 4,29 '' + IL_0096: ldloc.0 + IL_0097: ldarg.2 + IL_0098: ldarg.3 + IL_0099: callvirt instance void [mscorlib]System.Collections.SortedList::Add(object, + object) + .line 187,187 : 4,16 '' + IL_009e: ldc.i4.1 + IL_009f: ret + } // end of method IniStructure::AddValue + + .method public hidebysig instance string + GetValue(string CategoryName, + string Key) cil managed + { + // Code size 85 (0x55) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category) + .line 198,198 : 4,39 '' + IL_0000: ldarg.1 + IL_0001: ldstr "" + IL_0006: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000b: ldarg.2 + IL_000c: ldstr "" + IL_0011: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0016: or + IL_0017: brfalse.s IL_001b + + .line 199,199 : 5,17 '' + IL_0019: ldnull + IL_001a: ret + + .line 200,200 : 4,46 '' + IL_001b: ldarg.0 + IL_001c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0021: ldarg.1 + IL_0022: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0027: brtrue.s IL_002b + + .line 201,201 : 5,17 '' + IL_0029: ldnull + IL_002a: ret + + .line 202,202 : 4,65 '' + IL_002b: ldarg.0 + IL_002c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0031: ldarg.1 + IL_0032: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_0037: castclass [mscorlib]System.Collections.SortedList + IL_003c: stloc.0 + .line 203,203 : 4,35 '' + IL_003d: ldloc.0 + IL_003e: ldarg.2 + IL_003f: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0044: brtrue.s IL_0048 + + .line 204,204 : 5,17 '' + IL_0046: ldnull + IL_0047: ret + + .line 205,205 : 4,36 '' + IL_0048: ldloc.0 + IL_0049: ldarg.2 + IL_004a: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_004f: callvirt instance string [mscorlib]System.Object::ToString() + IL_0054: ret + } // end of method IniStructure::GetValue + + .method public hidebysig instance string + GetValue(int32 CatIndex, + int32 KeyIndex) cil managed + { + // Code size 73 (0x49) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category) + .line 216,217 : 4,35 '' + IL_0000: ldarg.1 + IL_0001: ldc.i4.0 + IL_0002: clt + IL_0004: ldarg.2 + IL_0005: ldc.i4.0 + IL_0006: clt + IL_0008: or + IL_0009: ldarg.1 + IL_000a: ldarg.0 + IL_000b: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0010: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0015: clt + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: or + IL_001b: brfalse.s IL_001f + + .line 218,218 : 5,17 '' + IL_001d: ldnull + IL_001e: ret + + .line 219,219 : 4,72 '' + IL_001f: ldarg.0 + IL_0020: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0025: ldarg.1 + IL_0026: callvirt instance object [mscorlib]System.Collections.SortedList::GetByIndex(int32) + IL_002b: castclass [mscorlib]System.Collections.SortedList + IL_0030: stloc.0 + .line 220,220 : 4,35 '' + IL_0031: ldarg.2 + IL_0032: ldloc.0 + IL_0033: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0038: blt.s IL_003c + + .line 221,221 : 5,17 '' + IL_003a: ldnull + IL_003b: ret + + .line 222,222 : 4,52 '' + IL_003c: ldloc.0 + IL_003d: ldarg.2 + IL_003e: callvirt instance object [mscorlib]System.Collections.SortedList::GetByIndex(int32) + IL_0043: callvirt instance string [mscorlib]System.Object::ToString() + IL_0048: ret + } // end of method IniStructure::GetValue + + .method public hidebysig instance string + GetKeyName(int32 CatIndex, + int32 KeyIndex) cil managed + { + // Code size 73 (0x49) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category) + .line 233,234 : 4,35 '' + IL_0000: ldarg.1 + IL_0001: ldc.i4.0 + IL_0002: clt + IL_0004: ldarg.2 + IL_0005: ldc.i4.0 + IL_0006: clt + IL_0008: or + IL_0009: ldarg.1 + IL_000a: ldarg.0 + IL_000b: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0010: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0015: clt + IL_0017: ldc.i4.0 + IL_0018: ceq + IL_001a: or + IL_001b: brfalse.s IL_001f + + .line 235,235 : 5,17 '' + IL_001d: ldnull + IL_001e: ret + + .line 236,236 : 4,72 '' + IL_001f: ldarg.0 + IL_0020: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0025: ldarg.1 + IL_0026: callvirt instance object [mscorlib]System.Collections.SortedList::GetByIndex(int32) + IL_002b: castclass [mscorlib]System.Collections.SortedList + IL_0030: stloc.0 + .line 237,237 : 4,35 '' + IL_0031: ldarg.2 + IL_0032: ldloc.0 + IL_0033: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0038: blt.s IL_003c + + .line 238,238 : 5,17 '' + IL_003a: ldnull + IL_003b: ret + + .line 239,239 : 4,48 '' + IL_003c: ldloc.0 + IL_003d: ldarg.2 + IL_003e: callvirt instance object [mscorlib]System.Collections.SortedList::GetKey(int32) + IL_0043: callvirt instance string [mscorlib]System.Object::ToString() + IL_0048: ret + } // end of method IniStructure::GetKeyName + + .method public hidebysig instance bool + DeleteValue(string CategoryName, + string Key) cil managed + { + // Code size 81 (0x51) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category) + .line 250,250 : 4,39 '' + IL_0000: ldarg.1 + IL_0001: ldstr "" + IL_0006: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000b: ldarg.2 + IL_000c: ldstr "" + IL_0011: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0016: or + IL_0017: brfalse.s IL_001b + + .line 251,251 : 5,18 '' + IL_0019: ldc.i4.0 + IL_001a: ret + + .line 252,252 : 4,46 '' + IL_001b: ldarg.0 + IL_001c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0021: ldarg.1 + IL_0022: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0027: brtrue.s IL_002b + + .line 253,253 : 5,18 '' + IL_0029: ldc.i4.0 + IL_002a: ret + + .line 254,254 : 4,65 '' + IL_002b: ldarg.0 + IL_002c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0031: ldarg.1 + IL_0032: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_0037: castclass [mscorlib]System.Collections.SortedList + IL_003c: stloc.0 + .line 255,255 : 4,35 '' + IL_003d: ldloc.0 + IL_003e: ldarg.2 + IL_003f: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0044: brtrue.s IL_0048 + + .line 256,256 : 5,18 '' + IL_0046: ldc.i4.0 + IL_0047: ret + + .line 257,257 : 4,25 '' + IL_0048: ldloc.0 + IL_0049: ldarg.2 + IL_004a: callvirt instance void [mscorlib]System.Collections.SortedList::Remove(object) + .line 258,258 : 4,16 '' + IL_004f: ldc.i4.1 + IL_0050: ret + } // end of method IniStructure::DeleteValue + + .method public hidebysig instance bool + RenameKey(string CategoryName, + string KeyName, + string NewKeyName) cil managed + { + // Code size 187 (0xbb) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] object 'value') + .line 269,269 : 4,62 '' + IL_0000: ldarg.1 + IL_0001: ldstr "" + IL_0006: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000b: ldarg.2 + IL_000c: ldstr "" + IL_0011: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0016: or + IL_0017: ldarg.3 + IL_0018: ldstr "" + IL_001d: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0022: or + IL_0023: brfalse.s IL_0027 + + .line 270,270 : 5,18 '' + IL_0025: ldc.i4.0 + IL_0026: ret + + .line 271,271 : 4,46 '' + IL_0027: ldarg.0 + IL_0028: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_002d: ldarg.1 + IL_002e: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0033: brtrue.s IL_0037 + + .line 272,272 : 5,18 '' + IL_0035: ldc.i4.0 + IL_0036: ret + + .line 273,278 : 4,6 '' + IL_0037: ldarg.3 + IL_0038: ldc.i4.s 61 + IL_003a: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_003f: ldc.i4.m1 + IL_0040: ceq + IL_0042: ldc.i4.0 + IL_0043: ceq + IL_0045: ldarg.3 + IL_0046: ldc.i4.s 91 + IL_0048: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_004d: ldc.i4.m1 + IL_004e: ceq + IL_0050: ldc.i4.0 + IL_0051: ceq + IL_0053: or + IL_0054: ldarg.3 + IL_0055: ldc.i4.s 93 + IL_0057: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_005c: ldc.i4.m1 + IL_005d: ceq + IL_005f: ldc.i4.0 + IL_0060: ceq + IL_0062: or + IL_0063: ldarg.3 + IL_0064: ldc.i4.s 59 + IL_0066: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_006b: ldc.i4.m1 + IL_006c: ceq + IL_006e: ldc.i4.0 + IL_006f: ceq + IL_0071: or + IL_0072: ldarg.3 + IL_0073: ldc.i4.s 35 + IL_0075: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_007a: ldc.i4.m1 + IL_007b: ceq + IL_007d: ldc.i4.0 + IL_007e: ceq + IL_0080: or + IL_0081: brfalse.s IL_0085 + + .line 279,279 : 5,18 '' + IL_0083: ldc.i4.0 + IL_0084: ret + + .line 280,280 : 4,65 '' + IL_0085: ldarg.0 + IL_0086: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_008b: ldarg.1 + IL_008c: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_0091: castclass [mscorlib]System.Collections.SortedList + IL_0096: stloc.0 + .line 281,281 : 4,40 '' + IL_0097: ldloc.0 + IL_0098: ldarg.2 + IL_0099: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_009e: brtrue.s IL_00a2 + + .line 282,282 : 5,18 '' + IL_00a0: ldc.i4.0 + IL_00a1: ret + + .line 284,284 : 4,37 '' + IL_00a2: ldloc.0 + IL_00a3: ldarg.2 + IL_00a4: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_00a9: stloc.1 + .line 285,285 : 4,29 '' + IL_00aa: ldloc.0 + IL_00ab: ldarg.2 + IL_00ac: callvirt instance void [mscorlib]System.Collections.SortedList::Remove(object) + .line 286,286 : 4,36 '' + IL_00b1: ldloc.0 + IL_00b2: ldarg.3 + IL_00b3: ldloc.1 + IL_00b4: callvirt instance void [mscorlib]System.Collections.SortedList::Add(object, + object) + .line 287,287 : 4,16 '' + IL_00b9: ldc.i4.1 + IL_00ba: ret + } // end of method IniStructure::RenameKey + + .method public hidebysig instance bool + ModifyValue(string CategoryName, + string KeyName, + string NewValue) cil managed + { + // Code size 82 (0x52) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category) + .line 298,298 : 4,43 '' + IL_0000: ldarg.1 + IL_0001: ldstr "" + IL_0006: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000b: ldarg.2 + IL_000c: ldstr "" + IL_0011: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0016: or + IL_0017: brfalse.s IL_001b + + .line 299,299 : 5,18 '' + IL_0019: ldc.i4.0 + IL_001a: ret + + .line 300,300 : 4,46 '' + IL_001b: ldarg.0 + IL_001c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0021: ldarg.1 + IL_0022: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0027: brtrue.s IL_002b + + .line 301,301 : 5,18 '' + IL_0029: ldc.i4.0 + IL_002a: ret + + .line 302,302 : 4,65 '' + IL_002b: ldarg.0 + IL_002c: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0031: ldarg.1 + IL_0032: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_0037: castclass [mscorlib]System.Collections.SortedList + IL_003c: stloc.0 + .line 303,303 : 4,40 '' + IL_003d: ldloc.0 + IL_003e: ldarg.2 + IL_003f: callvirt instance bool [mscorlib]System.Collections.SortedList::ContainsKey(object) + IL_0044: brtrue.s IL_0048 + + .line 304,304 : 5,18 '' + IL_0046: ldc.i4.0 + IL_0047: ret + + .line 306,306 : 4,33 '' + IL_0048: ldloc.0 + IL_0049: ldarg.2 + IL_004a: ldarg.3 + IL_004b: callvirt instance void [mscorlib]System.Collections.SortedList::set_Item(object, + object) + .line 307,307 : 4,16 '' + IL_0050: ldc.i4.1 + IL_0051: ret + } // end of method IniStructure::ModifyValue + + .method public hidebysig instance string[] + GetKeys(string CategoryName) cil managed + { + // Code size 84 (0x54) + .maxstack 4 + .locals init ([0] class [mscorlib]System.Collections.SortedList Category, + [1] int32 KeyCount, + [2] string[] KeyNames, + [3] class [mscorlib]System.Collections.IList KeyList, + [4] int32 i) + .line 317,317 : 4,65 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.SortedList Virtuoso.Miranda.Plugins.Helpers.IniStructure::Categories + IL_0006: ldarg.1 + IL_0007: callvirt instance object [mscorlib]System.Collections.SortedList::get_Item(object) + IL_000c: castclass [mscorlib]System.Collections.SortedList + IL_0011: stloc.0 + .line 318,318 : 4,25 '' + IL_0012: ldloc.0 + IL_0013: brtrue.s IL_001c + + .line 319,319 : 5,26 '' + IL_0015: ldc.i4.0 + IL_0016: newarr [mscorlib]System.String + IL_001b: ret + + .line 320,320 : 4,34 '' + IL_001c: ldloc.0 + IL_001d: callvirt instance int32 [mscorlib]System.Collections.SortedList::get_Count() + IL_0022: stloc.1 + .line 321,321 : 4,45 '' + IL_0023: ldloc.1 + IL_0024: newarr [mscorlib]System.String + IL_0029: stloc.2 + .line 322,322 : 4,42 '' + IL_002a: ldloc.0 + IL_002b: callvirt instance class [mscorlib]System.Collections.IList [mscorlib]System.Collections.SortedList::GetKeyList() + IL_0030: stloc.3 + .line 323,323 : 9,19 '' + IL_0031: ldc.i4.0 + IL_0032: stloc.s i + IL_0034: br.s IL_004d + + .line 325,325 : 5,41 '' + IL_0036: ldloc.2 + IL_0037: ldloc.s i + IL_0039: ldloc.3 + IL_003a: ldloc.s i + IL_003c: callvirt instance object [mscorlib]System.Collections.IList::get_Item(int32) + IL_0041: callvirt instance string [mscorlib]System.Object::ToString() + IL_0046: stelem.ref + .line 323,323 : 34,37 '' + IL_0047: ldloc.s i + IL_0049: ldc.i4.1 + IL_004a: add + IL_004b: stloc.s i + .line 323,323 : 20,32 '' + IL_004d: ldloc.s i + IL_004f: ldloc.1 + IL_0050: blt.s IL_0036 + + .line 327,327 : 4,20 '' + IL_0052: ldloc.2 + IL_0053: ret + } // end of method IniStructure::GetKeys + + .method public hidebysig static bool WriteIni(class Virtuoso.Miranda.Plugins.Helpers.IniStructure IniData, + string Filename, + string comment) cil managed + { + // Code size 21 (0x15) + .maxstack 2 + .locals init ([0] string DataToWrite) + .line 342,342 : 4,68 '' + IL_0000: ldarg.0 + IL_0001: ldarg.2 + IL_0002: call string Virtuoso.Miranda.Plugins.Helpers.IniStructure::BuildComment(string) + IL_0007: call string Virtuoso.Miranda.Plugins.Helpers.IniStructure::CreateData(class Virtuoso.Miranda.Plugins.Helpers.IniStructure, + string) + IL_000c: stloc.0 + .line 343,343 : 4,44 '' + IL_000d: ldarg.1 + IL_000e: ldloc.0 + IL_000f: call bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::WriteFile(string, + string) + IL_0014: ret + } // end of method IniStructure::WriteIni + + .method public hidebysig static bool WriteIni(class Virtuoso.Miranda.Plugins.Helpers.IniStructure IniData, + string Filename) cil managed + { + // Code size 15 (0xf) + .maxstack 2 + .locals init ([0] string DataToWrite) + .line 354,354 : 4,45 '' + IL_0000: ldarg.0 + IL_0001: call string Virtuoso.Miranda.Plugins.Helpers.IniStructure::CreateData(class Virtuoso.Miranda.Plugins.Helpers.IniStructure) + IL_0006: stloc.0 + .line 355,355 : 4,44 '' + IL_0007: ldarg.1 + IL_0008: ldloc.0 + IL_0009: call bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::WriteFile(string, + string) + IL_000e: ret + } // end of method IniStructure::WriteIni + + .method private hidebysig static bool WriteFile(string Filename, + string Data) cil managed + { + // Code size 69 (0x45) + .maxstack 2 + .locals init ([0] class [mscorlib]System.IO.FileStream IniStream, + [1] class [mscorlib]System.IO.StreamWriter writer, + [2] bool CS$1$0000) + .line 362,362 : 5,69 '' + .try + { + IL_0000: ldarg.0 + IL_0001: ldc.i4.2 + IL_0002: newobj instance void [mscorlib]System.IO.FileStream::.ctor(string, + valuetype [mscorlib]System.IO.FileMode) + IL_0007: stloc.0 + .line 363,363 : 5,29 '' + IL_0008: ldloc.0 + IL_0009: callvirt instance bool [mscorlib]System.IO.Stream::get_CanWrite() + IL_000e: brtrue.s IL_001a + + .line 365,365 : 6,24 '' + IL_0010: ldloc.0 + IL_0011: callvirt instance void [mscorlib]System.IO.Stream::Close() + .line 366,366 : 6,19 '' + IL_0016: ldc.i4.0 + IL_0017: stloc.2 + IL_0018: leave.s IL_0043 + + .line 368,368 : 5,55 '' + IL_001a: ldloc.0 + IL_001b: newobj instance void [mscorlib]System.IO.StreamWriter::.ctor(class [mscorlib]System.IO.Stream) + IL_0020: stloc.1 + .line 369,369 : 5,24 '' + IL_0021: ldloc.1 + IL_0022: ldarg.1 + IL_0023: callvirt instance void [mscorlib]System.IO.TextWriter::Write(string) + .line 370,370 : 5,20 '' + IL_0028: ldloc.1 + IL_0029: callvirt instance void [mscorlib]System.IO.TextWriter::Flush() + .line 371,371 : 5,20 '' + IL_002e: ldloc.1 + IL_002f: callvirt instance void [mscorlib]System.IO.TextWriter::Close() + .line 372,372 : 5,23 '' + IL_0034: ldloc.0 + IL_0035: callvirt instance void [mscorlib]System.IO.Stream::Close() + .line 373,373 : 5,17 '' + IL_003a: ldc.i4.1 + IL_003b: stloc.2 + IL_003c: leave.s IL_0043 + + .line 375,375 : 4,9 '' + } // end .try + catch [mscorlib]System.Object + { + IL_003e: pop + .line 377,377 : 5,18 '' + IL_003f: ldc.i4.0 + IL_0040: stloc.2 + IL_0041: leave.s IL_0043 + + .line 379,379 : 3,4 '' + } // end handler + IL_0043: ldloc.2 + IL_0044: ret + } // end of method IniStructure::WriteFile + + .method private hidebysig static string + BuildComment(string comment) cil managed + { + // Code size 77 (0x4d) + .maxstack 4 + .locals init ([0] string[] Lines, + [1] string temp, + [2] string line, + [3] string[] CS$6$0000, + [4] int32 CS$7$0001) + .line 383,383 : 4,22 '' + IL_0000: ldarg.0 + IL_0001: ldstr "" + IL_0006: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000b: brfalse.s IL_0013 + + .line 384,384 : 5,15 '' + IL_000d: ldstr "" + IL_0012: ret + + .line 385,385 : 4,44 '' + IL_0013: ldarg.0 + IL_0014: call string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::DivideToLines(string) + IL_0019: stloc.0 + .line 386,386 : 4,21 '' + IL_001a: ldstr "" + IL_001f: stloc.1 + .line 387,387 : 28,33 '' + IL_0020: ldloc.0 + IL_0021: stloc.3 + IL_0022: ldc.i4.0 + IL_0023: stloc.s CS$7$0001 + IL_0025: br.s IL_0044 + + .line 387,387 : 13,24 '' + IL_0027: ldloc.3 + IL_0028: ldloc.s CS$7$0001 + IL_002a: ldelem.ref + IL_002b: stloc.2 + .line 389,389 : 5,34 '' + IL_002c: ldloc.1 + IL_002d: ldstr "# " + IL_0032: ldloc.2 + IL_0033: ldstr "\r\n" + IL_0038: call string [mscorlib]System.String::Concat(string, + string, + string, + string) + IL_003d: stloc.1 + IL_003e: ldloc.s CS$7$0001 + IL_0040: ldc.i4.1 + IL_0041: add + IL_0042: stloc.s CS$7$0001 + .line 387,387 : 25,27 '' + IL_0044: ldloc.s CS$7$0001 + IL_0046: ldloc.3 + IL_0047: ldlen + IL_0048: conv.i4 + IL_0049: blt.s IL_0027 + + .line 391,391 : 4,16 '' + IL_004b: ldloc.1 + IL_004c: ret + } // end of method IniStructure::BuildComment + + .method private hidebysig static string + CreateData(class Virtuoso.Miranda.Plugins.Helpers.IniStructure IniData) cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 396,396 : 4,34 '' + IL_0000: ldarg.0 + IL_0001: ldstr "" + IL_0006: call string Virtuoso.Miranda.Plugins.Helpers.IniStructure::CreateData(class Virtuoso.Miranda.Plugins.Helpers.IniStructure, + string) + IL_000b: ret + } // end of method IniStructure::CreateData + + .method private hidebysig static string + CreateData(class Virtuoso.Miranda.Plugins.Helpers.IniStructure IniData, + string comment) cil managed + { + // Code size 217 (0xd9) + .maxstack 5 + .locals init ([0] int32 CategoryCount, + [1] int32[] KeyCountPerCategory, + [2] string Data, + [3] string[] temp, + [4] int32 i, + [5] string CategoryName, + [6] int32 catcounter, + [7] int32 keycounter, + [8] string CS$0$0000, + [9] string[] CS$0$0001) + .line 401,401 : 4,55 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetCategories() + IL_0006: ldlen + IL_0007: conv.i4 + IL_0008: stloc.0 + .line 402,402 : 4,55 '' + IL_0009: ldloc.0 + IL_000a: newarr [mscorlib]System.Int32 + IL_000f: stloc.1 + .line 403,403 : 4,26 '' + IL_0010: ldarg.1 + IL_0011: stloc.2 + .line 404,404 : 4,34 '' + IL_0012: ldc.i4.2 + IL_0013: newarr [mscorlib]System.String + IL_0018: stloc.3 + .line 406,406 : 9,19 '' + IL_0019: ldc.i4.0 + IL_001a: stloc.s i + IL_001c: br.s IL_003d + + .line 408,408 : 5,54 '' + IL_001e: ldarg.0 + IL_001f: callvirt instance string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetCategories() + IL_0024: ldloc.s i + IL_0026: ldelem.ref + IL_0027: stloc.s CategoryName + .line 409,409 : 5,67 '' + IL_0029: ldloc.1 + IL_002a: ldloc.s i + IL_002c: ldarg.0 + IL_002d: ldloc.s CategoryName + IL_002f: callvirt instance string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetKeys(string) + IL_0034: ldlen + IL_0035: conv.i4 + IL_0036: stelem.i4 + .line 406,406 : 39,42 '' + IL_0037: ldloc.s i + IL_0039: ldc.i4.1 + IL_003a: add + IL_003b: stloc.s i + .line 406,406 : 20,37 '' + IL_003d: ldloc.s i + IL_003f: ldloc.0 + IL_0040: blt.s IL_001e + + .line 412,412 : 9,28 '' + IL_0042: ldc.i4.0 + IL_0043: stloc.s catcounter + IL_0045: br IL_00cf + + .line 414,414 : 5,69 '' + IL_004a: ldloc.2 + IL_004b: ldstr "\r\n[" + IL_0050: ldarg.0 + IL_0051: ldloc.s catcounter + IL_0053: callvirt instance string Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetCategoryName(int32) + IL_0058: ldstr "]\r\n" + IL_005d: call string [mscorlib]System.String::Concat(string, + string, + string, + string) + IL_0062: stloc.2 + .line 416,416 : 10,29 '' + IL_0063: ldc.i4.0 + IL_0064: stloc.s keycounter + IL_0066: br.s IL_00c1 + + .line 418,418 : 6,59 '' + IL_0068: ldloc.3 + IL_0069: ldc.i4.0 + IL_006a: ldarg.0 + IL_006b: ldloc.s catcounter + IL_006d: ldloc.s keycounter + IL_006f: callvirt instance string Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetKeyName(int32, + int32) + IL_0074: stelem.ref + .line 419,419 : 6,57 '' + IL_0075: ldloc.3 + IL_0076: ldc.i4.1 + IL_0077: ldarg.0 + IL_0078: ldloc.s catcounter + IL_007a: ldloc.s keycounter + IL_007c: callvirt instance string Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetValue(int32, + int32) + IL_0081: stelem.ref + .line 420,420 : 6,47 '' + IL_0082: ldloc.2 + IL_0083: stloc.s CS$0$0000 + IL_0085: ldc.i4.5 + IL_0086: newarr [mscorlib]System.String + IL_008b: stloc.s CS$0$0001 + IL_008d: ldloc.s CS$0$0001 + IL_008f: ldc.i4.0 + IL_0090: ldloc.s CS$0$0000 + IL_0092: stelem.ref + IL_0093: ldloc.s CS$0$0001 + IL_0095: ldc.i4.1 + IL_0096: ldloc.3 + IL_0097: ldc.i4.0 + IL_0098: ldelem.ref + IL_0099: stelem.ref + IL_009a: ldloc.s CS$0$0001 + IL_009c: ldc.i4.2 + IL_009d: ldstr "=" + IL_00a2: stelem.ref + IL_00a3: ldloc.s CS$0$0001 + IL_00a5: ldc.i4.3 + IL_00a6: ldloc.3 + IL_00a7: ldc.i4.1 + IL_00a8: ldelem.ref + IL_00a9: stelem.ref + IL_00aa: ldloc.s CS$0$0001 + IL_00ac: ldc.i4.4 + IL_00ad: ldstr "\r\n" + IL_00b2: stelem.ref + IL_00b3: ldloc.s CS$0$0001 + IL_00b5: call string [mscorlib]System.String::Concat(string[]) + IL_00ba: stloc.2 + .line 416,416 : 76,88 '' + IL_00bb: ldloc.s keycounter + IL_00bd: ldc.i4.1 + IL_00be: add + IL_00bf: stloc.s keycounter + .line 416,416 : 30,74 '' + IL_00c1: ldloc.s keycounter + IL_00c3: ldloc.1 + IL_00c4: ldloc.s catcounter + IL_00c6: ldelem.i4 + IL_00c7: blt.s IL_0068 + + .line 412,412 : 57,69 '' + IL_00c9: ldloc.s catcounter + IL_00cb: ldc.i4.1 + IL_00cc: add + IL_00cd: stloc.s catcounter + .line 412,412 : 29,55 '' + IL_00cf: ldloc.s catcounter + IL_00d1: ldloc.0 + IL_00d2: blt IL_004a + + .line 424,424 : 4,16 '' + IL_00d7: ldloc.2 + IL_00d8: ret + } // end of method IniStructure::CreateData + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Helpers.IniStructure + ReadIni(string Filename) cil managed + { + // Code size 21 (0x15) + .maxstack 1 + .locals init ([0] string Data, + [1] class Virtuoso.Miranda.Plugins.Helpers.IniStructure data) + .line 437,437 : 4,37 '' + IL_0000: ldarg.0 + IL_0001: call string Virtuoso.Miranda.Plugins.Helpers.IniStructure::ReadFile(string) + IL_0006: stloc.0 + .line 438,438 : 4,21 '' + IL_0007: ldloc.0 + IL_0008: brtrue.s IL_000c + + .line 439,439 : 5,17 '' + IL_000a: ldnull + IL_000b: ret + + .line 441,441 : 4,43 '' + IL_000c: ldloc.0 + IL_000d: call class Virtuoso.Miranda.Plugins.Helpers.IniStructure Virtuoso.Miranda.Plugins.Helpers.IniStructure::InterpretIni(string) + IL_0012: stloc.1 + .line 443,443 : 4,16 '' + IL_0013: ldloc.1 + IL_0014: ret + } // end of method IniStructure::ReadIni + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Helpers.IniStructure + InterpretIni(string Data) cil managed + { + // Code size 166 (0xa6) + .maxstack 5 + .locals init ([0] class Virtuoso.Miranda.Plugins.Helpers.IniStructure IniData, + [1] string[] Lines, + [2] string CurrentCategory, + [3] string line, + [4] string NewCat, + [5] string[] keyvalue, + [6] class Virtuoso.Miranda.Plugins.Helpers.IniStructure CS$1$0000, + [7] string[] CS$6$0001, + [8] int32 CS$7$0002, + [9] valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType CS$0$0003) + .line 448,448 : 4,46 '' + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.Helpers.IniStructure::.ctor() + IL_0005: stloc.0 + .line 449,449 : 4,61 '' + IL_0006: ldarg.0 + IL_0007: call string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::DivideToLines(string) + IL_000c: call string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::RemoveAndVerifyIni(string[]) + IL_0011: stloc.1 + .line 453,453 : 4,22 '' + IL_0012: ldloc.1 + IL_0013: brtrue.s IL_0017 + + .line 454,454 : 5,17 '' + IL_0015: ldnull + IL_0016: ret + + .line 456,456 : 4,58 '' + IL_0017: ldloc.1 + IL_0018: ldc.i4.0 + IL_0019: ldelem.ref + IL_001a: call valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Virtuoso.Miranda.Plugins.Helpers.IniStructure::IsLineACategoryDef(string) + IL_001f: ldc.i4.1 + IL_0020: beq.s IL_0024 + + .line 458,458 : 5,17 '' + IL_0022: ldnull + IL_0023: ret + + .line 461,461 : 4,32 '' + IL_0024: ldstr "" + IL_0029: stloc.2 + .line 462,462 : 28,33 '' + IL_002a: ldloc.1 + IL_002b: stloc.s CS$6$0001 + IL_002d: ldc.i4.0 + IL_002e: stloc.s CS$7$0002 + IL_0030: br.s IL_0099 + + .line 462,462 : 13,24 '' + IL_0032: ldloc.s CS$6$0001 + IL_0034: ldloc.s CS$7$0002 + IL_0036: ldelem.ref + IL_0037: stloc.3 + .line 464,464 : 5,38 '' + IL_0038: ldloc.3 + IL_0039: call valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Virtuoso.Miranda.Plugins.Helpers.IniStructure::IsLineACategoryDef(string) + IL_003e: stloc.s CS$0$0003 + IL_0040: ldloc.s CS$0$0003 + IL_0042: switch ( + IL_0074, + IL_0055, + IL_008e) + IL_0053: br.s IL_0093 + + .line 467,467 : 7,57 '' + IL_0055: ldloc.3 + IL_0056: ldc.i4.1 + IL_0057: ldloc.3 + IL_0058: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_005d: ldc.i4.2 + IL_005e: sub + IL_005f: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_0064: stloc.s NewCat + .line 468,468 : 7,35 '' + IL_0066: ldloc.0 + IL_0067: ldloc.s NewCat + IL_0069: callvirt instance bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::AddCategory(string) + IL_006e: pop + .line 469,469 : 7,32 '' + IL_006f: ldloc.s NewCat + IL_0071: stloc.2 + .line 470,470 : 7,13 '' + IL_0072: br.s IL_0093 + + .line 472,472 : 7,49 '' + IL_0074: ldloc.3 + IL_0075: call string[] Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetDataFromLine(string) + IL_007a: stloc.s keyvalue + .line 473,473 : 7,67 '' + IL_007c: ldloc.0 + IL_007d: ldloc.2 + IL_007e: ldloc.s keyvalue + IL_0080: ldc.i4.0 + IL_0081: ldelem.ref + IL_0082: ldloc.s keyvalue + IL_0084: ldc.i4.1 + IL_0085: ldelem.ref + IL_0086: callvirt instance bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::AddValue(string, + string, + string) + IL_008b: pop + .line 475,475 : 7,13 '' + IL_008c: br.s IL_0093 + + .line 477,477 : 7,19 '' + IL_008e: ldnull + IL_008f: stloc.s CS$1$0000 + IL_0091: leave.s IL_00a3 + + IL_0093: ldloc.s CS$7$0002 + IL_0095: ldc.i4.1 + IL_0096: add + IL_0097: stloc.s CS$7$0002 + .line 462,462 : 25,27 '' + IL_0099: ldloc.s CS$7$0002 + IL_009b: ldloc.s CS$6$0001 + IL_009d: ldlen + IL_009e: conv.i4 + IL_009f: blt.s IL_0032 + + .line 480,480 : 4,19 '' + IL_00a1: ldloc.0 + IL_00a2: ret + + .line 481,481 : 3,4 '' + IL_00a3: ldloc.s CS$1$0000 + IL_00a5: ret + } // end of method IniStructure::InterpretIni + + .method private hidebysig static string + ReadFile(string filename) cil managed + { + // Code size 93 (0x5d) + .maxstack 3 + .locals init ([0] class [mscorlib]System.Text.StringBuilder IniData, + [1] class [mscorlib]System.IO.FileStream IniStream, + [2] class [mscorlib]System.IO.StreamReader reader, + [3] string CS$1$0000) + .line 485,485 : 4,31 '' + IL_0000: ldarg.0 + IL_0001: call bool [mscorlib]System.IO.File::Exists(string) + IL_0006: brtrue.s IL_000a + + .line 486,486 : 5,17 '' + IL_0008: ldnull + IL_0009: ret + + .line 490,490 : 24,103 '' + .try + { + IL_000a: ldarg.0 + IL_000b: ldc.i4.3 + IL_000c: ldc.i4.1 + IL_000d: newobj instance void [mscorlib]System.IO.FileStream::.ctor(string, + valuetype [mscorlib]System.IO.FileMode, + valuetype [mscorlib]System.IO.FileAccess) + IL_0012: stloc.1 + .line 492,492 : 21,44 '' + .try + { + IL_0013: ldloc.1 + IL_0014: callvirt instance bool [mscorlib]System.IO.Stream::get_CanRead() + IL_0019: brtrue.s IL_001f + + .line 493,493 : 25,37 '' + IL_001b: ldnull + IL_001c: stloc.3 + IL_001d: leave.s IL_005b + + .line 495,495 : 28,77 '' + IL_001f: ldloc.1 + IL_0020: newobj instance void [mscorlib]System.IO.StreamReader::.ctor(class [mscorlib]System.IO.Stream) + IL_0025: stloc.2 + .line 497,497 : 25,55 '' + .try + { + IL_0026: newobj instance void [mscorlib]System.Text.StringBuilder::.ctor() + IL_002b: stloc.0 + .line 498,498 : 25,60 '' + IL_002c: ldloc.0 + IL_002d: ldloc.2 + IL_002e: callvirt instance string [mscorlib]System.IO.TextReader::ReadToEnd() + IL_0033: callvirt instance class [mscorlib]System.Text.StringBuilder [mscorlib]System.Text.StringBuilder::Append(string) + IL_0038: pop + .line 499,499 : 25,51 '' + IL_0039: ldloc.0 + IL_003a: callvirt instance string [mscorlib]System.Object::ToString() + IL_003f: stloc.3 + IL_0040: leave.s IL_005b + + } // end .try + finally + { + IL_0042: ldloc.2 + IL_0043: brfalse.s IL_004b + + IL_0045: ldloc.2 + IL_0046: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_004b: endfinally + } // end handler + } // end .try + finally + { + IL_004c: ldloc.1 + IL_004d: brfalse.s IL_0055 + + IL_004f: ldloc.1 + IL_0050: callvirt instance void [mscorlib]System.IDisposable::Dispose() + IL_0055: endfinally + .line 503,503 : 4,9 '' + } // end handler + } // end .try + catch [mscorlib]System.Object + { + IL_0056: pop + .line 505,505 : 5,17 '' + IL_0057: ldnull + IL_0058: stloc.3 + IL_0059: leave.s IL_005b + + .line 507,507 : 3,4 '' + } // end handler + IL_005b: ldloc.3 + IL_005c: ret + } // end of method IniStructure::ReadFile + + .method private hidebysig static string[] + GetDataFromLine(string Line) cil managed + { + // Code size 63 (0x3f) + .maxstack 3 + .locals init ([0] int32 EqualPos, + [1] string LeftKey, + [2] string RightValue, + [3] string[] ToReturn, + [4] string[] CS$0$0000) + .line 512,512 : 4,21 '' + IL_0000: ldc.i4.0 + IL_0001: stloc.0 + .line 513,513 : 4,36 '' + IL_0002: ldarg.0 + IL_0003: ldstr "=" + IL_0008: ldc.i4.0 + IL_0009: callvirt instance int32 [mscorlib]System.String::IndexOf(string, + int32) + IL_000e: stloc.0 + .line 514,514 : 4,21 '' + IL_000f: ldloc.0 + IL_0010: ldc.i4.1 + IL_0011: bge.s IL_0015 + + .line 516,516 : 5,17 '' + IL_0013: ldnull + IL_0014: ret + + .line 518,518 : 4,49 '' + IL_0015: ldarg.0 + IL_0016: ldc.i4.0 + IL_0017: ldloc.0 + IL_0018: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_001d: stloc.1 + .line 519,519 : 4,53 '' + IL_001e: ldarg.0 + IL_001f: ldloc.0 + IL_0020: ldc.i4.1 + IL_0021: add + IL_0022: callvirt instance string [mscorlib]System.String::Substring(int32) + IL_0027: stloc.2 + .line 521,521 : 4,46 '' + IL_0028: ldc.i4.2 + IL_0029: newarr [mscorlib]System.String + IL_002e: stloc.s CS$0$0000 + IL_0030: ldloc.s CS$0$0000 + IL_0032: ldc.i4.0 + IL_0033: ldloc.1 + IL_0034: stelem.ref + IL_0035: ldloc.s CS$0$0000 + IL_0037: ldc.i4.1 + IL_0038: ldloc.2 + IL_0039: stelem.ref + IL_003a: ldloc.s CS$0$0000 + IL_003c: stloc.3 + .line 522,522 : 4,20 '' + IL_003d: ldloc.3 + IL_003e: ret + } // end of method IniStructure::GetDataFromLine + + .method private hidebysig static valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType + IsLineACategoryDef(string Line) cil managed + { + // Code size 98 (0x62) + .maxstack 4 + .line 537,537 : 4,24 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0006: ldc.i4.3 + IL_0007: bge.s IL_000b + + .line 538,538 : 5,34 '' + IL_0009: ldc.i4.0 + IL_000a: ret + + .line 540,540 : 4,79 '' + IL_000b: ldarg.0 + IL_000c: ldc.i4.0 + IL_000d: ldc.i4.1 + IL_000e: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_0013: ldstr "[" + IL_0018: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_001d: ldarg.0 + IL_001e: ldarg.0 + IL_001f: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0024: ldc.i4.1 + IL_0025: sub + IL_0026: ldc.i4.1 + IL_0027: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_002c: ldstr "]" + IL_0031: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_0036: and + IL_0037: brfalse.s IL_0060 + + .line 543,543 : 5,33 '' + IL_0039: ldarg.0 + IL_003a: ldstr "=" + IL_003f: callvirt instance int32 [mscorlib]System.String::IndexOf(string) + IL_0044: ldc.i4.m1 + IL_0045: beq.s IL_0049 + + .line 545,545 : 6,29 '' + IL_0047: ldc.i4.2 + IL_0048: ret + + .line 546,546 : 5,72 '' + IL_0049: ldarg.0 + IL_004a: ldc.i4.s 91 + IL_004c: call bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::ContainsMoreThanOne(string, + char) + IL_0051: ldarg.0 + IL_0052: ldc.i4.s 93 + IL_0054: call bool Virtuoso.Miranda.Plugins.Helpers.IniStructure::ContainsMoreThanOne(string, + char) + IL_0059: or + IL_005a: brfalse.s IL_005e + + .line 548,548 : 6,29 '' + IL_005c: ldc.i4.2 + IL_005d: ret + + .line 549,549 : 5,30 '' + IL_005e: ldc.i4.1 + IL_005f: ret + + .line 551,551 : 4,33 '' + IL_0060: ldc.i4.0 + IL_0061: ret + } // end of method IniStructure::IsLineACategoryDef + + .method private hidebysig static string[] + DivideToLines(string Data) cil managed + { + // Code size 128 (0x80) + .maxstack 6 + .locals init ([0] string[] Lines, + [1] int32 oldnewlinepos, + [2] int32 LineCounter, + [3] int32 i, + [4] string[] LinesTrimmed, + [5] int32 V_5) + .line 556,556 : 4,45 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0006: newarr [mscorlib]System.String + IL_000b: stloc.0 + .line 557,557 : 4,26 '' + IL_000c: ldc.i4.0 + IL_000d: stloc.1 + .line 558,558 : 4,24 '' + IL_000e: ldc.i4.0 + IL_000f: stloc.2 + .line 559,559 : 9,19 '' + IL_0010: ldc.i4.0 + IL_0011: stloc.3 + IL_0012: br.s IL_003d + + .line 561,561 : 5,42 '' + IL_0014: ldarg.0 + IL_0015: ldloc.3 + IL_0016: ldc.i4.1 + IL_0017: callvirt instance char[] [mscorlib]System.String::ToCharArray(int32, + int32) + IL_001c: ldc.i4.0 + IL_001d: ldelem.u2 + IL_001e: ldc.i4.s 10 + IL_0020: bne.un.s IL_0039 + + .line 563,563 : 6,80 '' + IL_0022: ldloc.0 + IL_0023: ldloc.2 + IL_0024: ldarg.0 + IL_0025: ldloc.1 + IL_0026: ldloc.3 + IL_0027: ldloc.1 + IL_0028: sub + IL_0029: ldc.i4.1 + IL_002a: sub + IL_002b: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_0030: stelem.ref + .line 564,564 : 6,28 '' + IL_0031: ldloc.3 + IL_0032: ldc.i4.1 + IL_0033: add + IL_0034: stloc.1 + .line 565,565 : 6,20 '' + IL_0035: ldloc.2 + IL_0036: ldc.i4.1 + IL_0037: add + IL_0038: stloc.2 + .line 559,559 : 37,40 '' + IL_0039: ldloc.3 + IL_003a: ldc.i4.1 + IL_003b: add + IL_003c: stloc.3 + .line 559,559 : 20,35 '' + IL_003d: ldloc.3 + IL_003e: ldarg.0 + IL_003f: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0044: blt.s IL_0014 + + .line 571,571 : 4,84 '' + IL_0046: ldloc.0 + IL_0047: ldloc.2 + IL_0048: ldarg.0 + IL_0049: ldloc.1 + IL_004a: ldarg.0 + IL_004b: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0050: ldloc.1 + IL_0051: sub + IL_0052: callvirt instance string [mscorlib]System.String::Substring(int32, + int32) + IL_0057: stelem.ref + .line 572,572 : 4,56 '' + IL_0058: ldloc.2 + IL_0059: ldc.i4.1 + IL_005a: add + IL_005b: newarr [mscorlib]System.String + IL_0060: stloc.s LinesTrimmed + .line 573,573 : 9,19 '' + IL_0062: ldc.i4.0 + IL_0063: stloc.s V_5 + IL_0065: br.s IL_0076 + + .line 575,575 : 5,32 '' + IL_0067: ldloc.s LinesTrimmed + IL_0069: ldloc.s V_5 + IL_006b: ldloc.0 + IL_006c: ldloc.s V_5 + IL_006e: ldelem.ref + IL_006f: stelem.ref + .line 573,573 : 41,44 '' + IL_0070: ldloc.s V_5 + IL_0072: ldc.i4.1 + IL_0073: add + IL_0074: stloc.s V_5 + .line 573,573 : 20,39 '' + IL_0076: ldloc.s V_5 + IL_0078: ldloc.2 + IL_0079: ldc.i4.1 + IL_007a: add + IL_007b: blt.s IL_0067 + + .line 577,577 : 4,24 '' + IL_007d: ldloc.s LinesTrimmed + IL_007f: ret + } // end of method IniStructure::DivideToLines + + .method private hidebysig static bool ContainsMoreThanOne(string Data, + char verify) cil managed + { + // Code size 50 (0x32) + .maxstack 2 + .locals init ([0] char[] data, + [1] int32 count, + [2] char c, + [3] char[] CS$6$0000, + [4] int32 CS$7$0001) + .line 582,582 : 4,37 '' + IL_0000: ldarg.0 + IL_0001: callvirt instance char[] [mscorlib]System.String::ToCharArray() + IL_0006: stloc.0 + .line 583,583 : 4,18 '' + IL_0007: ldc.i4.0 + IL_0008: stloc.1 + .line 584,584 : 23,27 '' + IL_0009: ldloc.0 + IL_000a: stloc.3 + IL_000b: ldc.i4.0 + IL_000c: stloc.s CS$7$0001 + IL_000e: br.s IL_0023 + + .line 584,584 : 13,19 '' + IL_0010: ldloc.3 + IL_0011: ldloc.s CS$7$0001 + IL_0013: ldelem.u2 + IL_0014: stloc.2 + .line 586,586 : 5,21 '' + IL_0015: ldloc.2 + IL_0016: ldarg.1 + IL_0017: bne.un.s IL_001d + + .line 587,587 : 6,14 '' + IL_0019: ldloc.1 + IL_001a: ldc.i4.1 + IL_001b: add + IL_001c: stloc.1 + IL_001d: ldloc.s CS$7$0001 + IL_001f: ldc.i4.1 + IL_0020: add + IL_0021: stloc.s CS$7$0001 + .line 584,584 : 20,22 '' + IL_0023: ldloc.s CS$7$0001 + IL_0025: ldloc.3 + IL_0026: ldlen + IL_0027: conv.i4 + IL_0028: blt.s IL_0010 + + .line 589,589 : 4,18 '' + IL_002a: ldloc.1 + IL_002b: ldc.i4.1 + IL_002c: ble.s IL_0030 + + .line 590,590 : 5,17 '' + IL_002e: ldc.i4.1 + IL_002f: ret + + .line 591,591 : 4,17 '' + IL_0030: ldc.i4.0 + IL_0031: ret + } // end of method IniStructure::ContainsMoreThanOne + + .method private hidebysig static valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType + LineVerify(string line) cil managed + { + // Code size 154 (0x9a) + .maxstack 5 + .locals init ([0] int32 equalindex) + .line 596,596 : 4,19 '' + IL_0000: ldarg.0 + IL_0001: ldstr "" + IL_0006: call bool [mscorlib]System.String::op_Equality(string, + string) + IL_000b: brfalse.s IL_000f + + .line 597,597 : 5,27 '' + IL_000d: ldc.i4.4 + IL_000e: ret + + .line 599,599 : 4,82 '' + IL_000f: ldarg.0 + IL_0010: ldstr ";" + IL_0015: callvirt instance int32 [mscorlib]System.String::IndexOf(string) + IL_001a: ldc.i4.0 + IL_001b: ceq + IL_001d: ldarg.0 + IL_001e: ldstr "#" + IL_0023: callvirt instance int32 [mscorlib]System.String::IndexOf(string) + IL_0028: ldc.i4.0 + IL_0029: ceq + IL_002b: or + IL_002c: ldarg.0 + IL_002d: ldstr "//" + IL_0032: callvirt instance int32 [mscorlib]System.String::IndexOf(string) + IL_0037: ldc.i4.0 + IL_0038: ceq + IL_003a: or + IL_003b: brfalse.s IL_003f + + .line 601,601 : 5,29 '' + IL_003d: ldc.i4.3 + IL_003e: ret + + .line 604,604 : 4,39 '' + IL_003f: ldarg.0 + IL_0040: ldc.i4.s 61 + IL_0042: callvirt instance int32 [mscorlib]System.String::IndexOf(char) + IL_0047: stloc.0 + .line 605,605 : 4,24 '' + IL_0048: ldloc.0 + IL_0049: brtrue.s IL_004d + + .line 606,606 : 5,28 '' + IL_004b: ldc.i4.2 + IL_004c: ret + + .line 608,608 : 4,25 '' + IL_004d: ldloc.0 + IL_004e: ldc.i4.m1 + IL_004f: beq.s IL_0098 + + .line 611,614 : 5,62 '' + IL_0051: ldarg.0 + IL_0052: ldc.i4.s 91 + IL_0054: ldc.i4.0 + IL_0055: ldloc.0 + IL_0056: callvirt instance int32 [mscorlib]System.String::IndexOf(char, + int32, + int32) + IL_005b: ldc.i4.m1 + IL_005c: ceq + IL_005e: ldc.i4.0 + IL_005f: ceq + IL_0061: ldarg.0 + IL_0062: ldc.i4.s 93 + IL_0064: ldc.i4.0 + IL_0065: ldloc.0 + IL_0066: callvirt instance int32 [mscorlib]System.String::IndexOf(char, + int32, + int32) + IL_006b: ldc.i4.m1 + IL_006c: ceq + IL_006e: ldc.i4.0 + IL_006f: ceq + IL_0071: or + IL_0072: ldarg.0 + IL_0073: ldc.i4.s 59 + IL_0075: ldc.i4.0 + IL_0076: ldloc.0 + IL_0077: callvirt instance int32 [mscorlib]System.String::IndexOf(char, + int32, + int32) + IL_007c: ldc.i4.m1 + IL_007d: ceq + IL_007f: ldc.i4.0 + IL_0080: ceq + IL_0082: or + IL_0083: ldarg.0 + IL_0084: ldc.i4.s 35 + IL_0086: ldc.i4.0 + IL_0087: ldloc.0 + IL_0088: callvirt instance int32 [mscorlib]System.String::IndexOf(char, + int32, + int32) + IL_008d: ldc.i4.m1 + IL_008e: ceq + IL_0090: ldc.i4.0 + IL_0091: ceq + IL_0093: or + IL_0094: brfalse.s IL_0098 + + .line 615,615 : 6,29 '' + IL_0096: ldc.i4.2 + IL_0097: ret + + .line 618,618 : 4,23 '' + IL_0098: ldc.i4.5 + IL_0099: ret + } // end of method IniStructure::LineVerify + + .method private hidebysig static string[] + RemoveAndVerifyIni(string[] Lines) cil managed + { + // Code size 123 (0x7b) + .maxstack 4 + .locals init ([0] string[] temp, + [1] int32 TempCounter, + [2] string line, + [3] string[] OKLines, + [4] int32 i, + [5] string[] CS$1$0000, + [6] string[] CS$6$0001, + [7] int32 CS$7$0002, + [8] valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType CS$0$0003) + .line 624,624 : 4,45 '' + IL_0000: ldarg.0 + IL_0001: ldlen + IL_0002: conv.i4 + IL_0003: newarr [mscorlib]System.String + IL_0008: stloc.0 + .line 625,625 : 4,24 '' + IL_0009: ldc.i4.0 + IL_000a: stloc.1 + .line 626,626 : 28,33 '' + IL_000b: ldarg.0 + IL_000c: stloc.s CS$6$0001 + IL_000e: ldc.i4.0 + IL_000f: stloc.s CS$7$0002 + IL_0011: br.s IL_004f + + .line 626,626 : 13,24 '' + IL_0013: ldloc.s CS$6$0001 + IL_0015: ldloc.s CS$7$0002 + IL_0017: ldelem.ref + IL_0018: stloc.2 + .line 628,628 : 5,30 '' + IL_0019: ldloc.2 + IL_001a: call valuetype Virtuoso.Miranda.Plugins.Helpers.IniStructure/LineType Virtuoso.Miranda.Plugins.Helpers.IniStructure::LineVerify(string) + IL_001f: stloc.s CS$0$0003 + IL_0021: ldloc.s CS$0$0003 + IL_0023: ldc.i4.2 + IL_0024: sub + IL_0025: switch ( + IL_003c, + IL_0049, + IL_0049, + IL_0041) + IL_003a: br.s IL_0049 + + .line 631,631 : 7,19 '' + IL_003c: ldnull + IL_003d: stloc.s CS$1$0000 + IL_003f: leave.s IL_0078 + + .line 635,635 : 7,32 '' + IL_0041: ldloc.0 + IL_0042: ldloc.1 + IL_0043: ldloc.2 + IL_0044: stelem.ref + .line 636,636 : 7,21 '' + IL_0045: ldloc.1 + IL_0046: ldc.i4.1 + IL_0047: add + IL_0048: stloc.1 + IL_0049: ldloc.s CS$7$0002 + IL_004b: ldc.i4.1 + IL_004c: add + IL_004d: stloc.s CS$7$0002 + .line 626,626 : 25,27 '' + IL_004f: ldloc.s CS$7$0002 + IL_0051: ldloc.s CS$6$0001 + IL_0053: ldlen + IL_0054: conv.i4 + IL_0055: blt.s IL_0013 + + .line 643,643 : 4,47 '' + IL_0057: ldloc.1 + IL_0058: newarr [mscorlib]System.String + IL_005d: stloc.3 + .line 644,644 : 9,19 '' + IL_005e: ldc.i4.0 + IL_005f: stloc.s i + IL_0061: br.s IL_0071 + + .line 646,646 : 5,26 '' + IL_0063: ldloc.3 + IL_0064: ldloc.s i + IL_0066: ldloc.0 + IL_0067: ldloc.s i + IL_0069: ldelem.ref + IL_006a: stelem.ref + .line 644,644 : 37,40 '' + IL_006b: ldloc.s i + IL_006d: ldc.i4.1 + IL_006e: add + IL_006f: stloc.s i + .line 644,644 : 20,35 '' + IL_0071: ldloc.s i + IL_0073: ldloc.1 + IL_0074: blt.s IL_0063 + + .line 648,648 : 4,19 '' + IL_0076: ldloc.3 + IL_0077: ret + + .line 649,649 : 3,4 '' + IL_0078: ldloc.s CS$1$0000 + IL_007a: ret + } // end of method IniStructure::RemoveAndVerifyIni + +} // end of class Virtuoso.Miranda.Plugins.Helpers.IniStructure + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs +{ + .field private class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol + .field private class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType 'type' + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult result + .field private native int processHandle + .field private native int lParam + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + get_Protocol() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 32,32 : 19,35 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocols\\AckEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::protocol + IL_0006: ret + } // end of method AckEventArgs::get_Protocol + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_Contact() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 38,38 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::contact + IL_0006: ret + } // end of method AckEventArgs::get_Contact + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType + get_Type() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 44,44 : 19,31 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::'type' + IL_0006: ret + } // end of method AckEventArgs::get_Type + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult + get_Result() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 50,50 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::result + IL_0006: ret + } // end of method AckEventArgs::get_Result + + .method public hidebysig specialname instance native int + get_ProcessHandle() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 56,56 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::processHandle + IL_0006: ret + } // end of method AckEventArgs::get_ProcessHandle + + .method public hidebysig specialname instance native int + get_LParam() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 62,62 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::lParam + IL_0006: ret + } // end of method AckEventArgs::get_LParam + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 69,69 : 9,30 '' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs::.ctor() + .line 69,69 : 33,34 '' + IL_0006: ret + } // end of method AckEventArgs::.ctor + + .method assembly hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs + FromACKDATA(native int pAckData) cil managed + { + // Code size 168 (0xa8) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA ackData, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs ackArgs) + .line 73,73 : 13,41 '' + IL_0000: ldarg.0 + IL_0001: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0006: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000b: brfalse.s IL_0018 + + .line 74,74 : 17,61 '' + IL_000d: ldstr "pAckData" + IL_0012: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0017: throw + + .line 76,76 : 13,63 '' + IL_0018: ldarga.s pAckData + IL_001a: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_001f: ldobj Virtuoso.Miranda.Plugins.Native.ACKDATA + IL_0024: stloc.0 + .line 77,77 : 13,55 '' + IL_0025: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::.ctor() + IL_002a: stloc.1 + .line 79,79 : 13,77 '' + IL_002b: ldloc.1 + IL_002c: ldloca.s ackData + IL_002e: ldfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ContactHandle + IL_0033: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_0038: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::contact + .line 80,80 : 13,45 '' + IL_003d: ldloc.1 + IL_003e: ldloca.s ackData + IL_0040: ldfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::LParam + IL_0045: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::lParam + .line 81,81 : 13,59 '' + IL_004a: ldloc.1 + IL_004b: ldloca.s ackData + IL_004d: ldfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ProcessHandle + IL_0052: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::processHandle + .line 82,82 : 13,56 '' + IL_0057: ldloc.1 + IL_0058: ldloca.s ackData + IL_005a: ldfld int32 Virtuoso.Miranda.Plugins.Native.ACKDATA::Result + IL_005f: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::result + .line 83,83 : 13,50 '' + IL_0064: ldloc.1 + IL_0065: ldloca.s ackData + IL_0067: ldfld int32 Virtuoso.Miranda.Plugins.Native.ACKDATA::Type + IL_006c: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::'type' + .line 85,85 : 13,51 '' + IL_0071: ldloca.s ackData + IL_0073: ldfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ModuleName + IL_0078: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_007d: call bool [mscorlib]System.IntPtr::op_Inequality(native int, + native int) + IL_0082: brfalse.s IL_00a6 + + .line 86,86 : 17,130 '' + IL_0084: ldloc.1 + IL_0085: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_008a: callvirt instance class Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Protocols() + IL_008f: ldloca.s ackData + IL_0091: ldfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ModuleName + IL_0096: ldc.i4.0 + IL_0097: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_009c: callvirt instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::get_Item(string) + IL_00a1: stfld class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::protocol + .line 88,88 : 13,28 '' + IL_00a6: ldloc.1 + IL_00a7: ret + } // end of method AckEventArgs::FromACKDATA + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol + Protocol() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.Protocol Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Protocol() + } // end of property AckEventArgs::Protocol + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + Contact() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Contact() + } // end of property AckEventArgs::Contact + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType + Type() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Type() + } // end of property AckEventArgs::Type + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult + Result() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Result() + } // end of property AckEventArgs::Result + .property instance native int ProcessHandle() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_ProcessHandle() + } // end of property AckEventArgs::ProcessHandle + .property instance native int LParam() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_LParam() + } // end of property AckEventArgs::LParam +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter + extends [mscorlib]System.Object +{ + .field private static literal string MS_PROTO_CHAINSEND = "Proto/ChainSend" + .field private static literal string MS_PROTO_CHAINRECV = "Proto/ChainRecv" + .field private static literal string ME_PROTO_ACK = "Proto/Ack" + .field private static class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 AckReceivedEventHandler + .field private static class Virtuoso.Miranda.Plugins.Callback 'CS$<>9__CachedAnonymousMethodDelegate1' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method public hidebysig specialname static + void add_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 51 (0x33) + .maxstack 8 + .line 75,75 : 17,119 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocols\\AckRouter.cs' + IL_0000: ldsflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::AckReceivedEventHandler + IL_0005: ldarg.0 + IL_0006: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate>(!!0&, + !!0) + .line 76,83 : 17,24 '' + IL_000b: ldstr "Proto/Ack" + IL_0010: ldsfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0015: brtrue.s IL_0028 + + IL_0017: ldnull + IL_0018: ldftn int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::'b__0'(native uint, + native int) + IL_001e: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0023: stsfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0028: ldsfld class Virtuoso.Miranda.Plugins.Callback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_002d: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent(string, + class Virtuoso.Miranda.Plugins.Callback) + .line 84,84 : 13,14 '' + IL_0032: ret + } // end of method AckRouter::add_AckReceived + + .method public hidebysig specialname static + void remove_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 'value') cil managed synchronized + { + // Code size 27 (0x1b) + .maxstack 8 + .line 88,88 : 17,119 '' + IL_0000: ldsflda class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::AckReceivedEventHandler + IL_0005: ldarg.0 + IL_0006: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate>(!!0&, + !!0) + .line 89,89 : 17,91 '' + IL_000b: ldstr "Proto/Ack" + IL_0010: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::AckReceivedEventHandler + IL_0015: call void Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent(string, + class [mscorlib]System.Delegate) + .line 90,90 : 13,14 '' + IL_001a: ret + } // end of method AckRouter::remove_AckReceived + + .method public hidebysig static int32 ChainSend(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData chainData) cil managed + { + // Code size 32 (0x20) + .maxstack 8 + .line 99,99 : 13,35 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 100,100 : 17,62 '' + IL_0003: ldstr "chainData" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 102,102 : 13,70 '' + IL_000e: ldarg.0 + IL_000f: callvirt instance native uint Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_WParam() + IL_0014: ldarg.0 + IL_0015: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_CcsDataPtr() + IL_001a: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::ChainSend(native uint, + native int) + IL_001f: ret + } // end of method AckRouter::ChainSend + + .method public hidebysig static int32 ChainSend(native uint wParam, + native int lParam) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 107,107 : 13,91 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "Proto/ChainSend" + IL_000a: ldarg.0 + IL_000b: ldarg.1 + IL_000c: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0011: ret + } // end of method AckRouter::ChainSend + + .method public hidebysig static int32 ChainReceive(class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData chainData) cil managed + { + // Code size 32 (0x20) + .maxstack 8 + .line 112,112 : 13,35 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 113,113 : 17,62 '' + IL_0003: ldstr "chainData" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 115,115 : 13,73 '' + IL_000e: ldarg.0 + IL_000f: callvirt instance native uint Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_WParam() + IL_0014: ldarg.0 + IL_0015: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_CcsDataPtr() + IL_001a: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::ChainReceive(native uint, + native int) + IL_001f: ret + } // end of method AckRouter::ChainReceive + + .method public hidebysig static int32 ChainReceive(native uint wParam, + native int lParam) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 120,120 : 13,91 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "Proto/ChainRecv" + IL_000a: ldarg.0 + IL_000b: ldarg.1 + IL_000c: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0011: ret + } // end of method AckRouter::ChainReceive + + .method private hidebysig static int32 + 'b__0'(native uint wParam, + native int lParam) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 22 (0x16) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs e) + .line 79,79 : 25,75 '' + IL_0000: ldarg.1 + IL_0001: call class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::FromACKDATA(native int) + IL_0006: stloc.0 + .line 81,81 : 25,110 '' + IL_0007: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::AckReceivedEventHandler + IL_000c: ldnull + IL_000d: ldloc.0 + IL_000e: call bool Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1, + object, + !!0) + IL_0013: pop + .line 82,82 : 25,60 '' + IL_0014: ldc.i4.0 + IL_0015: ret + } // end of method AckRouter::'b__0' + + .event class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 AckReceived + { + .removeon void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::remove_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + .addon void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::add_AckReceived(class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1) + } // end of event AckRouter::AckReceived +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs + extends Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs +{ + .field private string settingName + .field private string settingOwner + .field private object 'value' + .field private valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType valueType + .method public hidebysig specialname instance string + get_SettingName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 32,32 : 19,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\MirandaContactSettingEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::settingName + IL_0006: ret + } // end of method MirandaContactSettingEventArgs::get_SettingName + + .method public hidebysig specialname instance string + get_SettingOwner() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 38,38 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::settingOwner + IL_0006: ret + } // end of method MirandaContactSettingEventArgs::get_SettingOwner + + .method public hidebysig specialname instance object + get_Value() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 44,44 : 19,32 '' + IL_0000: ldarg.0 + IL_0001: ldfld object Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::'value' + IL_0006: ret + } // end of method MirandaContactSettingEventArgs::get_Value + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType + get_ValueType() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 50,50 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::valueType + IL_0006: ret + } // end of method MirandaContactSettingEventArgs::get_ValueType + + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo, + string name, + string owner, + object 'value', + valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType valueType) cil managed + { + // Code size 57 (0x39) + .maxstack 8 + .line 57,58 : 9,32 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::.ctor(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + .line 60,60 : 13,44 '' + IL_0007: ldarg.2 + IL_0008: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000d: brfalse.s IL_001a + + .line 61,61 : 17,57 '' + IL_000f: ldstr "name" + IL_0014: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0019: throw + + .line 63,63 : 13,37 '' + IL_001a: ldarg.0 + IL_001b: ldarg.2 + IL_001c: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::settingName + .line 64,64 : 13,39 '' + IL_0021: ldarg.0 + IL_0022: ldarg.3 + IL_0023: stfld string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::settingOwner + .line 65,65 : 13,32 '' + IL_0028: ldarg.0 + IL_0029: ldarg.s 'value' + IL_002b: stfld object Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::'value' + .line 66,66 : 13,40 '' + IL_0030: ldarg.0 + IL_0031: ldarg.s valueType + IL_0033: stfld valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::valueType + .line 67,67 : 9,10 '' + IL_0038: ret + } // end of method MirandaContactSettingEventArgs::.ctor + + .property instance string SettingName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_SettingName() + } // end of property MirandaContactSettingEventArgs::SettingName + .property instance string SettingOwner() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_SettingOwner() + } // end of property MirandaContactSettingEventArgs::SettingOwner + .property instance object Value() + { + .get instance object Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_Value() + } // end of property MirandaContactSettingEventArgs::Value + .property instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType + ValueType() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_ValueType() + } // end of property MirandaContactSettingEventArgs::ValueType +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs + +.class public auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException + extends [mscorlib]System.Exception +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 28,28 : 9,40 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ConfigurationException.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Exception::.ctor() + .line 28,28 : 43,44 '' + IL_0006: ret + } // end of method ConfigurationException::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string message) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 29,29 : 9,70 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: call instance void [mscorlib]System.Exception::.ctor(string) + .line 29,29 : 73,74 '' + IL_0007: ret + } // end of method ConfigurationException::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string message, + class [mscorlib]System.Exception inner) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 30,30 : 9,94 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.Exception::.ctor(string, + class [mscorlib]System.Exception) + .line 30,30 : 97,98 '' + IL_0008: ret + } // end of method ConfigurationException::.ctor + + .method family hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 31,31 : 9,113 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.Exception::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext) + .line 31,31 : 116,117 '' + IL_0008: ret + } // end of method ConfigurationException::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + extends [mscorlib]System.Attribute +{ + .custom instance void [mscorlib]System.AttributeUsageAttribute::.ctor(valuetype [mscorlib]System.AttributeTargets) = ( 01 00 04 00 00 00 02 00 54 02 0D 41 6C 6C 6F 77 // ........T..Allow + 4D 75 6C 74 69 70 6C 65 00 54 02 09 49 6E 68 65 // Multiple.T..Inhe + 72 69 74 65 64 00 ) // rited. + .field private initonly class [mscorlib]System.Version version + .field private bool profileBound + .field private bool encrypt + .field private class [mscorlib]System.Type 'storage' + .field private class [mscorlib]System.Type encryption + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 30,30 : 9,49 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ConfigurationOptionsAttribute.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + .line 30,30 : 52,53 '' + IL_0006: ret + } // end of method ConfigurationOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string configurationVersion) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 32,32 : 9,116 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldc.i4.0 + IL_0003: ldc.i4.1 + IL_0004: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor(string, + bool, + bool) + .line 32,32 : 119,120 '' + IL_0009: ret + } // end of method ConfigurationOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(bool encrypt, + bool profileBound) cil managed + { + .custom instance void [mscorlib]System.ObsoleteAttribute::.ctor(string, + bool) = ( 01 00 37 57 69 6C 6C 20 62 65 20 72 65 6D 6F 76 // ..7Will be remov + 65 64 20 69 6E 20 66 75 74 75 72 65 2E 20 55 73 // ed in future. Us + 65 20 6E 61 6D 65 64 20 61 72 67 75 6D 65 6E 74 // e named argument + 73 20 69 6E 73 74 65 61 64 2E 01 00 00 ) // s instead.... + // Code size 10 (0xa) + .maxstack 8 + .line 34,35 : 9,114 '' + IL_0000: ldarg.0 + IL_0001: ldnull + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: call instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor(string, + bool, + bool) + .line 35,35 : 117,118 '' + IL_0009: ret + } // end of method ConfigurationOptionsAttribute::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(string configurationVersion, + bool encrypt, + bool profileBound) cil managed + { + .custom instance void [mscorlib]System.ObsoleteAttribute::.ctor(string, + bool) = ( 01 00 37 57 69 6C 6C 20 62 65 20 72 65 6D 6F 76 // ..7Will be remov + 65 64 20 69 6E 20 66 75 74 75 72 65 2E 20 55 73 // ed in future. Us + 65 20 6E 61 6D 65 64 20 61 72 67 75 6D 65 6E 74 // e named argument + 73 20 69 6E 73 74 65 61 64 2E 00 00 00 ) // s instead.... + // Code size 41 (0x29) + .maxstack 8 + .line 37,38 : 9,107 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Attribute::.ctor() + .line 40,40 : 13,61 '' + IL_0006: ldarg.1 + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: brtrue.s IL_001a + + .line 41,41 : 17,66 '' + IL_000e: ldarg.0 + IL_000f: ldarg.1 + IL_0010: newobj instance void [mscorlib]System.Version::.ctor(string) + IL_0015: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::version + .line 43,43 : 13,36 '' + IL_001a: ldarg.0 + IL_001b: ldarg.2 + IL_001c: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encrypt + .line 44,44 : 13,46 '' + IL_0021: ldarg.0 + IL_0022: ldarg.3 + IL_0023: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::profileBound + .line 45,45 : 9,10 '' + IL_0028: ret + } // end of method ConfigurationOptionsAttribute::.ctor + + .method public hidebysig specialname instance class [mscorlib]System.Version + get_Version() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 54,54 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::version + IL_0006: ret + } // end of method ConfigurationOptionsAttribute::get_Version + + .method public hidebysig specialname instance bool + get_ProfileBound() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 60,60 : 19,39 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::profileBound + IL_0006: ret + } // end of method ConfigurationOptionsAttribute::get_ProfileBound + + .method public hidebysig specialname instance void + set_ProfileBound(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 61,61 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::profileBound + .line 61,61 : 41,42 '' + IL_0007: ret + } // end of method ConfigurationOptionsAttribute::set_ProfileBound + + .method public hidebysig specialname instance bool + get_Encrypt() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 67,67 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encrypt + IL_0006: ret + } // end of method ConfigurationOptionsAttribute::get_Encrypt + + .method public hidebysig specialname instance void + set_Encrypt(bool 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 68,68 : 19,35 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encrypt + .line 68,68 : 36,37 '' + IL_0007: ret + } // end of method ConfigurationOptionsAttribute::set_Encrypt + + .method public hidebysig specialname instance class [mscorlib]System.Type + get_Storage() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 74,74 : 19,34 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::'storage' + IL_0006: ret + } // end of method ConfigurationOptionsAttribute::get_Storage + + .method public hidebysig specialname instance void + set_Storage(class [mscorlib]System.Type 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 75,75 : 19,35 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::'storage' + .line 75,75 : 36,37 '' + IL_0007: ret + } // end of method ConfigurationOptionsAttribute::set_Storage + + .method public hidebysig specialname instance class [mscorlib]System.Type + get_Encryption() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 81,81 : 19,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encryption + IL_0006: ret + } // end of method ConfigurationOptionsAttribute::get_Encryption + + .method public hidebysig specialname instance void + set_Encryption(class [mscorlib]System.Type 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 82,82 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encryption + .line 82,82 : 39,40 '' + IL_0007: ret + } // end of method ConfigurationOptionsAttribute::set_Encryption + + .method assembly hidebysig instance class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + Finalize() cil managed + { + // Code size 58 (0x3a) + .maxstack 8 + .line 91,91 : 13,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::'storage' + IL_0006: brtrue.s IL_0018 + + .line 92,92 : 17,51 '' + IL_0008: ldarg.0 + IL_0009: ldtoken Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage + IL_000e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0013: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::'storage' + .line 94,94 : 13,47 '' + IL_0018: ldarg.0 + IL_0019: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encrypt + IL_001e: brfalse.s IL_0038 + + IL_0020: ldarg.0 + IL_0021: ldfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encryption + IL_0026: brtrue.s IL_0038 + + .line 95,95 : 17,56 '' + IL_0028: ldarg.0 + IL_0029: ldtoken Virtuoso.Miranda.Plugins.Configuration.WindowsEncryption + IL_002e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0033: stfld class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::encryption + .line 97,97 : 13,25 '' + IL_0038: ldarg.0 + IL_0039: ret + } // end of method ConfigurationOptionsAttribute::Finalize + + .property instance class [mscorlib]System.Version + Version() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Version() + } // end of property ConfigurationOptionsAttribute::Version + .property instance bool ProfileBound() + { + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_ProfileBound(bool) + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_ProfileBound() + } // end of property ConfigurationOptionsAttribute::ProfileBound + .property instance bool Encrypt() + { + .get instance bool Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encrypt() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_Encrypt(bool) + } // end of property ConfigurationOptionsAttribute::Encrypt + .property instance class [mscorlib]System.Type + Storage() + { + .get instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Storage() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_Storage(class [mscorlib]System.Type) + } // end of property ConfigurationOptionsAttribute::Storage + .property instance class [mscorlib]System.Type + Encryption() + { + .get instance class [mscorlib]System.Type Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encryption() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_Encryption(class [mscorlib]System.Type) + } // end of property ConfigurationOptionsAttribute::Encryption +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Message = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Url = int32(0x00000001) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType File = int32(0x00000002) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Chat = int32(0x00000003) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType AwayMessage = int32(0x00000004) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType AuthorizationRequest = int32(0x00000005) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Added = int32(0x00000006) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType GetInfo = int32(0x00000007) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType SetInfo = int32(0x00000008) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Login = int32(0x00000009) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Search = int32(0x0000000A) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType NewUser = int32(0x0000000B) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Status = int32(0x0000000C) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Contacts = int32(0x0000000D) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType Avatar = int32(0x0000000E) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult + extends [mscorlib]System.Enum +{ + .field public specialname rtspecialname int32 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult Success = int32(0x00000000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult Failure = int32(0x00000001) +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol + extends Virtuoso.Miranda.Plugins.Infrastructure.Protocol +{ + .field private static literal string MS_PROTO_ADDTOCONTACT = "Proto/AddToContact" + .field private bool Registered + .field private valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR nativeDescriptor + .method assembly hidebysig specialname rtspecialname + instance void .ctor(string name, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType 'type') cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 40,40 : 9,84 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocols\\ManagedProtocol.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType) + .line 40,40 : 87,88 '' + IL_0008: ret + } // end of method ManagedProtocol::.ctor + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + get_NativeDescriptor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 49,49 : 19,43 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::nativeDescriptor + IL_0006: ret + } // end of method ManagedProtocol::get_NativeDescriptor + + .method assembly hidebysig instance void + Register() cil managed + { + // Code size 132 (0x84) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR descriptor, + [1] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 nativeHandle, + [2] int32 result) + .line 58,58 : 13,28 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Registered + IL_0006: brfalse.s IL_000e + + .line 59,59 : 17,55 '' + IL_0008: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_000d: throw + + .line 61,61 : 13,80 '' + IL_000e: ldloca.s descriptor + IL_0010: ldarg.0 + IL_0011: call instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_0016: ldarg.0 + IL_0017: call instance valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Type() + IL_001c: newobj instance void Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType) + IL_0021: stobj Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + .line 62,62 : 13,118 '' + IL_0026: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_002b: stloc.1 + .line 66,66 : 17,94 '' + .try + { + IL_002c: ldloca.s descriptor + IL_002e: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0033: stloc.1 + .line 67,67 : 17,126 '' + IL_0034: ldarg.0 + IL_0035: call instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::get_Context() + IL_003a: ldstr "Proto/RegisterModule" + IL_003f: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0044: ldloca.s nativeHandle + IL_0046: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_004b: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0050: stloc.2 + .line 69,69 : 17,33 '' + IL_0051: ldloc.2 + IL_0052: brfalse.s IL_006b + + .line 70,70 : 21,152 '' + IL_0054: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0059: ldloca.s result + IL_005b: call instance string [mscorlib]System.Int32::ToString() + IL_0060: call string [mscorlib]System.String::Format(string, + object) + IL_0065: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_006a: throw + + .line 72,72 : 17,52 '' + IL_006b: ldarg.0 + IL_006c: ldloc.0 + IL_006d: stfld valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::nativeDescriptor + .line 73,73 : 17,35 '' + IL_0072: ldarg.0 + IL_0073: ldc.i4.1 + IL_0074: stfld bool Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Registered + IL_0079: leave.s IL_0083 + + .line 77,77 : 17,37 '' + } // end .try + finally + { + IL_007b: ldloca.s nativeHandle + IL_007d: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_0082: endfinally + .line 79,79 : 9,10 '' + } // end handler + IL_0083: ret + } // end of method ManagedProtocol::Register + + .method assembly hidebysig instance void + Unregister() cil managed + { + // Code size 15 (0xf) + .maxstack 8 + .line 83,83 : 13,29 '' + IL_0000: ldarg.0 + IL_0001: ldfld bool Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Registered + IL_0006: brtrue.s IL_000e + + .line 84,84 : 17,55 '' + IL_0008: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_000d: throw + + .line 87,87 : 9,10 '' + IL_000e: ret + } // end of method ManagedProtocol::Unregister + + .method public hidebysig instance void + AddToContact(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contact) cil managed + { + // Code size 33 (0x21) + .maxstack 8 + .line 91,91 : 13,33 '' + IL_0000: ldarg.1 + IL_0001: ldnull + IL_0002: call bool Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality(class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo, + class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo) + IL_0007: brfalse.s IL_0014 + + .line 92,92 : 17,60 '' + IL_0009: ldstr "contact" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 94,94 : 13,49 '' + IL_0014: ldarg.0 + IL_0015: ldarg.1 + IL_0016: callvirt instance native int Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle() + IL_001b: call instance void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::AddToContact(native int) + .line 95,95 : 9,10 '' + IL_0020: ret + } // end of method ManagedProtocol::AddToContact + + .method public hidebysig instance void + AddToContact(native int contactHandle) cil managed + { + // Code size 61 (0x3d) + .maxstack 4 + .locals init ([0] int32 result) + .line 99,99 : 13,107 '' + IL_0000: ldarg.0 + IL_0001: call instance class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::get_Context() + IL_0006: ldstr "Proto/AddToContact" + IL_000b: ldarg.1 + IL_000c: ldarg.0 + IL_000d: call instance valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::get_NativeDescriptor() + IL_0012: ldfld native int Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::Name + IL_0017: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_001c: stloc.0 + .line 101,101 : 13,29 '' + IL_001d: ldloc.0 + IL_001e: brfalse.s IL_003c + + .line 102,102 : 17,171 '' + IL_0020: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0025: ldstr "Proto/AddToContact" + IL_002a: ldloca.s result + IL_002c: call instance string [mscorlib]System.Int32::ToString() + IL_0031: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0036: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_003b: throw + + .line 103,103 : 9,10 '' + IL_003c: ret + } // end of method ManagedProtocol::AddToContact + + .property instance valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + NativeDescriptor() + { + .get instance valuetype Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::get_NativeDescriptor() + } // end of property ManagedProtocol::NativeDescriptor +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.Security.SuppressUnmanagedCodeSecurityAttribute::.ctor() = ( 01 00 00 00 ) + .field private static literal string MS_PROTO_BROADCASTACK = "Proto/BroadcastAck" + .field private static class [mscorlib]System.Threading.WaitCallback 'CS$<>9__CachedAnonymousMethodDelegate1' + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .method private hidebysig static valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA + BuildAckData(native int pModuleName, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType 'type', + bool success, + native int contactHandle, + native int processHandle, + native int lParam) cil managed + { + // Code size 44 (0x2c) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA ack) + .line 40,40 : 13,122 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocols\\AckBroadcaster.cs' + IL_0000: ldloca.s ack + IL_0002: ldarg.0 + IL_0003: ldarg.1 + IL_0004: ldarg.2 + IL_0005: brtrue.s IL_000a + + IL_0007: ldc.i4.1 + IL_0008: br.s IL_000b + + IL_000a: ldc.i4.0 + IL_000b: call instance void Virtuoso.Miranda.Plugins.Native.ACKDATA::.ctor(native int, + int32, + int32) + .line 41,41 : 13,47 '' + IL_0010: ldloca.s ack + IL_0012: ldarg.3 + IL_0013: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ContactHandle + .line 42,42 : 13,47 '' + IL_0018: ldloca.s ack + IL_001a: ldarg.s processHandle + IL_001c: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ProcessHandle + .line 43,43 : 13,33 '' + IL_0021: ldloca.s ack + IL_0023: ldarg.s lParam + IL_0025: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::LParam + .line 45,45 : 13,24 '' + IL_002a: ldloc.0 + IL_002b: ret + } // end of method AckBroadcaster::BuildAckData + + .method private hidebysig static int32 + BroadcastAck(valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA* ack) cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 50,50 : 13,95 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "Proto/BroadcastAck" + IL_000a: ldc.i4.0 + IL_000b: conv.u + IL_000c: ldarg.0 + IL_000d: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe(string, + void*, + void*) + IL_0012: ret + } // end of method AckBroadcaster::BroadcastAck + + .method public hidebysig static int32 BroadcastAck(string moduleName, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType 'type', + bool success, + native int contactHandle, + native int processHandle, + native int lParam) cil managed + { + // Code size 46 (0x2e) + .maxstack 6 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle pModuleName, + [1] int32 CS$1$0000) + .line 59,59 : 13,77 '' + IL_0000: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_0005: stloc.0 + .line 63,63 : 17,90 '' + .try + { + IL_0006: ldarg.0 + IL_0007: ldc.i4.0 + IL_0008: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_000d: stloc.0 + .line 64,64 : 17,110 '' + IL_000e: ldloca.s pModuleName + IL_0010: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0015: ldarg.1 + IL_0016: ldarg.2 + IL_0017: ldarg.3 + IL_0018: ldarg.s processHandle + IL_001a: ldarg.s lParam + IL_001c: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType, + bool, + native int, + native int, + native int) + IL_0021: stloc.1 + IL_0022: leave.s IL_002c + + .line 68,68 : 17,36 '' + } // end .try + finally + { + IL_0024: ldloca.s pModuleName + IL_0026: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_002b: endfinally + .line 70,70 : 9,10 '' + } // end handler + IL_002c: ldloc.1 + IL_002d: ret + } // end of method AckBroadcaster::BroadcastAck + + .method public hidebysig static void BroadcastMessageAckAsync(native int pModuleName, + bool success, + native int contactHandle, + int32 processCookie) cil managed + { + // Code size 63 (0x3f) + .maxstack 6 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA ack) + .line 74,74 : 13,130 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.0 + IL_0002: ldarg.1 + IL_0003: ldarg.2 + IL_0004: ldarg.3 + IL_0005: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_000a: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000f: call valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BuildAckData(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType, + bool, + native int, + native int, + native int) + IL_0014: stloc.0 + .line 75,79 : 13,21 '' + IL_0015: ldsfld class [mscorlib]System.Threading.WaitCallback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_001a: brtrue.s IL_002d + + IL_001c: ldnull + IL_001d: ldftn void Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::'b__0'(object) + IL_0023: newobj instance void [mscorlib]System.Threading.WaitCallback::.ctor(object, + native int) + IL_0028: stsfld class [mscorlib]System.Threading.WaitCallback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_002d: ldsfld class [mscorlib]System.Threading.WaitCallback Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::'CS$<>9__CachedAnonymousMethodDelegate1' + IL_0032: ldloc.0 + IL_0033: box Virtuoso.Miranda.Plugins.Native.ACKDATA + IL_0038: call bool [mscorlib]System.Threading.ThreadPool::QueueUserWorkItem(class [mscorlib]System.Threading.WaitCallback, + object) + IL_003d: pop + .line 80,80 : 9,10 '' + IL_003e: ret + } // end of method AckBroadcaster::BroadcastMessageAckAsync + + .method public hidebysig static int32 BroadcastAck(native int pModuleName, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType 'type', + bool success, + native int contactHandle, + native int processHandle, + native int lParam) cil managed + { + // Code size 23 (0x17) + .maxstack 6 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA ack) + .line 84,84 : 13,106 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldarg.3 + IL_0004: ldarg.s processHandle + IL_0006: ldarg.s lParam + IL_0008: call valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BuildAckData(native int, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType, + bool, + native int, + native int, + native int) + IL_000d: stloc.0 + .line 85,85 : 13,39 '' + IL_000e: ldloca.s ack + IL_0010: conv.u + IL_0011: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck(valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA*) + IL_0016: ret + } // end of method AckBroadcaster::BroadcastAck + + .method private hidebysig static void 'b__0'(object ackObject) cil managed + { + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + // Code size 17 (0x11) + .maxstack 1 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA _ack) + .line 77,77 : 17,51 '' + IL_0000: ldarg.0 + IL_0001: unbox.any Virtuoso.Miranda.Plugins.Native.ACKDATA + IL_0006: stloc.0 + .line 78,78 : 17,37 '' + IL_0007: ldloca.s _ack + IL_0009: conv.u + IL_000a: call int32 Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck(valuetype Virtuoso.Miranda.Plugins.Native.ACKDATA*) + IL_000f: pop + IL_0010: ret + } // end of method AckBroadcaster::'b__0' + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster + +.class public auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData + extends [mscorlib]System.Object +{ + .field private class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo contactInfo + .field private string serviceName + .field private native uint wParam + .field private native int lParam + .field private native int ccsDataPtr + .method assembly hidebysig specialname rtspecialname + instance void .ctor(native int pCcsData) cil managed + { + // Code size 114 (0x72) + .maxstack 3 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.CCSDATA ccsData) + .line 29,29 : 9,58 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Protocols\\ContactChainData.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 31,31 : 13,41 '' + IL_0006: ldarg.1 + IL_0007: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_000c: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_0011: brfalse.s IL_001e + + .line 32,32 : 17,61 '' + IL_0013: ldstr "pCssData" + IL_0018: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_001d: throw + + .line 34,34 : 13,40 '' + IL_001e: ldarg.0 + IL_001f: ldarg.1 + IL_0020: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::ccsDataPtr + .line 36,36 : 13,63 '' + IL_0025: ldarga.s pCcsData + IL_0027: call instance void* [mscorlib]System.IntPtr::ToPointer() + IL_002c: ldobj Virtuoso.Miranda.Plugins.Native.CCSDATA + IL_0031: stloc.0 + .line 37,37 : 13,78 '' + IL_0032: ldarg.0 + IL_0033: ldloca.s ccsData + IL_0035: ldfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ContactHandle + IL_003a: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_003f: stfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::contactInfo + .line 38,38 : 13,42 '' + IL_0044: ldarg.0 + IL_0045: ldloca.s ccsData + IL_0047: ldfld native uint Virtuoso.Miranda.Plugins.Native.CCSDATA::WParam + IL_004c: stfld native uint Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::wParam + .line 39,39 : 13,42 '' + IL_0051: ldarg.0 + IL_0052: ldloca.s ccsData + IL_0054: ldfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::LParam + IL_0059: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::lParam + .line 40,40 : 13,96 '' + IL_005e: ldarg.0 + IL_005f: ldloca.s ccsData + IL_0061: ldfld native int Virtuoso.Miranda.Plugins.Native.CCSDATA::ServiceNamePtr + IL_0066: ldc.i4.0 + IL_0067: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_006c: stfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::serviceName + .line 41,41 : 9,10 '' + IL_0071: ret + } // end of method ContactChainData::.ctor + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_ContactInfo() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 50,50 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::contactInfo + IL_0006: ret + } // end of method ContactChainData::get_ContactInfo + + .method public hidebysig specialname instance string + get_ServiceName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 56,56 : 19,38 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::serviceName + IL_0006: ret + } // end of method ContactChainData::get_ServiceName + + .method public hidebysig specialname instance native uint + get_WParam() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 63,63 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld native uint Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::wParam + IL_0006: ret + } // end of method ContactChainData::get_WParam + + .method public hidebysig specialname instance native int + get_LParam() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 69,69 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::lParam + IL_0006: ret + } // end of method ContactChainData::get_LParam + + .method assembly hidebysig specialname + instance native int get_CcsDataPtr() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 75,75 : 19,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::ccsDataPtr + IL_0006: ret + } // end of method ContactChainData::get_CcsDataPtr + + .method public hidebysig instance string + GetLParamAsString(valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding encoding) cil managed + { + // Code size 13 (0xd) + .maxstack 8 + .line 84,84 : 13,57 '' + IL_0000: ldarg.0 + IL_0001: call instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_LParam() + IL_0006: ldarg.1 + IL_0007: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_000c: ret + } // end of method ContactChainData::GetLParamAsString + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + ContactInfo() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_ContactInfo() + } // end of property ContactChainData::ContactInfo + .property instance string ServiceName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_ServiceName() + } // end of property ContactChainData::ServiceName + .property instance native uint WParam() + { + .custom instance void [mscorlib]System.CLSCompliantAttribute::.ctor(bool) = ( 01 00 00 00 00 ) + .get instance native uint Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_WParam() + } // end of property ContactChainData::WParam + .property instance native int LParam() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_LParam() + } // end of property ContactChainData::LParam + .property instance native int CcsDataPtr() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_CcsDataPtr() + } // end of property ContactChainData::CcsDataPtr +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack + extends [mscorlib]System.Object +{ + .class auto ansi sealed nested private LanguagePackEncoding + extends [mscorlib]System.Enum + { + .field public specialname rtspecialname uint16 value__ + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack/LanguagePackEncoding Ansi = uint16(0x0000) + .field public static literal valuetype Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack/LanguagePackEncoding Unicode = uint16(0x1000) + } // end of class LanguagePackEncoding + + .field private static literal string MS_LANGPACK_TRANSLATESTRING = "LangPack/TranslateString" + .method public hidebysig static string + TranslateString(string str) cil managed + { + // Code size 133 (0x85) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle stringHandle, + [1] valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding mirandaEncoding, + [2] valuetype Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack/LanguagePackEncoding encoding, + [3] native int translatedPtr, + [4] class [mscorlib]System.Exception e, + [5] string CS$1$0000) + .line 48,48 : 13,43 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\LanguagePack.cs' + IL_0000: ldarg.0 + IL_0001: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_0006: brfalse.s IL_000a + + .line 49,49 : 17,28 '' + IL_0008: ldarg.0 + IL_0009: ret + + .line 51,51 : 13,78 '' + IL_000a: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_000f: stloc.0 + .line 55,55 : 17,91 '' + .try + { + .try + { + IL_0010: call valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaStringEncoding() + IL_0015: stloc.1 + .line 56,56 : 17,152 '' + IL_0016: ldloc.1 + IL_0017: ldc.i4.1 + IL_0018: beq.s IL_001d + + IL_001a: ldc.i4.0 + IL_001b: br.s IL_0022 + + IL_001d: ldc.i4 0x1000 + IL_0022: stloc.2 + .line 58,58 : 17,80 '' + IL_0023: ldarg.0 + IL_0024: ldloc.1 + IL_0025: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_002a: stloc.0 + .line 59,59 : 17,152 '' + IL_002b: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0030: ldstr "LangPack/TranslateString" + IL_0035: ldloc.2 + IL_0036: conv.u8 + IL_0037: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint64) + IL_003c: ldloca.s stringHandle + IL_003e: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0043: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0048: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_004d: stloc.3 + .line 61,61 : 17,120 '' + IL_004e: ldloc.3 + IL_004f: ldloca.s stringHandle + IL_0051: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_0056: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_005b: brtrue.s IL_0066 + + IL_005d: ldloc.3 + IL_005e: ldloc.1 + IL_005f: call string Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString(native int, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_0064: br.s IL_0067 + + IL_0066: ldarg.0 + IL_0067: stloc.s CS$1$0000 + IL_0069: leave.s IL_0082 + + .line 63,63 : 13,32 '' + } // end .try + catch [mscorlib]System.Exception + { + IL_006b: stloc.s e + .line 65,65 : 17,107 '' + IL_006d: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0072: ldloc.s e + IL_0074: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_0079: throw + + .line 69,69 : 17,37 '' + } // end handler + } // end .try + finally + { + IL_007a: ldloca.s stringHandle + IL_007c: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_0081: endfinally + .line 71,71 : 9,10 '' + } // end handler + IL_0082: ldloc.s CS$1$0000 + IL_0084: ret + } // end of method LanguagePack::TranslateString + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack + +.class public auto ansi sealed Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1<(Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs) TEventArgs> + extends [mscorlib]System.MulticastDelegate +{ + .method public hidebysig specialname rtspecialname + instance void .ctor(object 'object', + native int 'method') runtime managed + { + } // end of method MirandaEventHandler`1::.ctor + + .method public hidebysig newslot virtual + instance bool Invoke(object sender, + !TEventArgs e) runtime managed + { + } // end of method MirandaEventHandler`1::Invoke + + .method public hidebysig newslot virtual + instance class [mscorlib]System.IAsyncResult + BeginInvoke(object sender, + !TEventArgs e, + class [mscorlib]System.AsyncCallback callback, + object 'object') runtime managed + { + } // end of method MirandaEventHandler`1::BeginInvoke + + .method public hidebysig newslot virtual + instance bool EndInvoke(class [mscorlib]System.IAsyncResult result) runtime managed + { + } // end of method MirandaEventHandler`1::EndInvoke + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment + extends [mscorlib]System.Object +{ + .field private static bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Initialized + .field private static bool hyphenIsLoading + .method assembly hidebysig static void + Initialize() cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 45,45 : 13,32 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\RuntimeEnvironment.cs' + IL_0000: ldc.i4.1 + IL_0001: volatile. + IL_0003: stsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::Initialized + .line 46,46 : 9,10 '' + IL_0008: ret + } // end of method RuntimeEnvironment::Initialize + + .method private hidebysig static void VerifyInitialized() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 54,54 : 13,30 '' + IL_0000: volatile. + IL_0002: ldsfld bool modreq([mscorlib]System.Runtime.CompilerServices.IsVolatile) Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::Initialized + IL_0007: brtrue.s IL_000f + + .line 55,55 : 17,51 '' + IL_0009: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_000e: throw + + .line 56,56 : 9,10 '' + IL_000f: ret + } // end of method RuntimeEnvironment::VerifyInitialized + + .method public hidebysig specialname static + bool get_HyphenIsLoading() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 70,70 : 19,39 '' + IL_0000: call void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::VerifyInitialized() + .line 70,70 : 40,63 '' + IL_0005: ldsfld bool Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::hyphenIsLoading + IL_000a: ret + } // end of method RuntimeEnvironment::get_HyphenIsLoading + + .method assembly hidebysig specialname static + void set_HyphenIsLoading(bool 'value') cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 71,71 : 28,52 '' + IL_0000: ldarg.0 + IL_0001: stsfld bool Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::hyphenIsLoading + .line 71,71 : 53,54 '' + IL_0006: ret + } // end of method RuntimeEnvironment::set_HyphenIsLoading + + .method public hidebysig specialname static + bool get_IsolatedModePluginsLoaded() cil managed + { + // Code size 16 (0x10) + .maxstack 8 + .line 80,80 : 19,39 '' + IL_0000: call void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::VerifyInitialized() + .line 80,80 : 40,82 '' + IL_0005: call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance() + IL_000a: callvirt instance bool Virtuoso.Hyphen.Loader::get_PluginsLoaded() + IL_000f: ret + } // end of method RuntimeEnvironment::get_IsolatedModePluginsLoaded + + .property bool HyphenIsLoading() + { + .get bool Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::get_HyphenIsLoading() + .set void Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::set_HyphenIsLoading(bool) + } // end of property RuntimeEnvironment::HyphenIsLoading + .property bool IsolatedModePluginsLoaded() + { + .get bool Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::get_IsolatedModePluginsLoaded() + } // end of property RuntimeEnvironment::IsolatedModePluginsLoaded +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper + extends [mscorlib]System.Object +{ + .field private string serviceName + .method public hidebysig specialname instance string + get_ServiceName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 31,31 : 19,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\CallbackWrapper.cs' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::serviceName + IL_0006: ret + } // end of method CallbackWrapper::get_ServiceName + + .method family hidebysig specialname instance void + set_ServiceName(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 32,32 : 29,49 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::serviceName + .line 32,32 : 50,51 '' + IL_0007: ret + } // end of method CallbackWrapper::set_ServiceName + + .method private hidebysig specialname rtspecialname + instance void .ctor(string serviceName) cil managed + { + // Code size 33 (0x21) + .maxstack 8 + .line 39,39 : 9,52 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 41,41 : 13,51 '' + IL_0006: ldarg.1 + IL_0007: call bool [mscorlib]System.String::IsNullOrEmpty(string) + IL_000c: brfalse.s IL_0019 + + .line 42,42 : 17,64 '' + IL_000e: ldstr "serviceName" + IL_0013: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0018: throw + + .line 44,44 : 13,44 '' + IL_0019: ldarg.0 + IL_001a: ldarg.1 + IL_001b: stfld string Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::serviceName + .line 45,45 : 9,10 '' + IL_0020: ret + } // end of method CallbackWrapper::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Callback + Create(string serviceName) cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 49,49 : 13,76 '' + IL_0000: ldarg.0 + IL_0001: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::.ctor(string) + IL_0006: ldftn instance int32 Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::Callback(native uint, + native int) + IL_000c: newobj instance void Virtuoso.Miranda.Plugins.Callback::.ctor(object, + native int) + IL_0011: ret + } // end of method CallbackWrapper::Create + + .method family hidebysig instance int32 + Callback(native uint wParam, + native int lParam) cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 58,58 : 13,84 '' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldarg.0 + IL_0006: call instance string Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::get_ServiceName() + IL_000b: ldarg.1 + IL_000c: ldarg.2 + IL_000d: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_0012: ret + } // end of method CallbackWrapper::Callback + + .property instance string ServiceName() + { + .get instance string Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::get_ServiceName() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::set_ServiceName(string) + } // end of property CallbackWrapper::ServiceName +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.Skin + extends [mscorlib]System.Object +{ + .class abstract auto ansi sealed nested public beforefieldinit Icons + extends [mscorlib]System.Object + { + .field public static literal int32 Message = int32(0x00000064) + } // end of class Icons + + .field private static literal string MS_SKIN_LOADICON = "Skin/Icons/Load" + .field private static literal string MS_SKIN_LOADPROTOICON = "Skin/Icons/LoadProto" + .method public hidebysig static native int + LoadIcon(int32 id) cil managed + { + // Code size 32 (0x20) + .maxstack 8 + .line 51,51 : 13,113 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\Skin.cs' + IL_0000: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0005: ldstr "Skin/Icons/Load" + IL_000a: ldarg.0 + IL_000b: call native uint [mscorlib]System.UIntPtr::op_Explicit(uint32) + IL_0010: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0015: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_001a: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_001f: ret + } // end of method Skin::LoadIcon + + .method public hidebysig static native int + LoadProtocolIcon(valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode status) cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 56,56 : 13,59 '' + IL_0000: ldnull + IL_0001: ldarg.0 + IL_0002: call native int Virtuoso.Miranda.Plugins.Infrastructure.Skin::LoadProtocolIcon(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + IL_0007: ret + } // end of method Skin::LoadProtocolIcon + + .method public hidebysig static native int + LoadProtocolIcon(class Virtuoso.Miranda.Plugins.Infrastructure.Protocol protocol, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode status) cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 61,61 : 13,88 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_0006 + + IL_0003: ldnull + IL_0004: br.s IL_000c + + IL_0006: ldarg.0 + IL_0007: callvirt instance string Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name() + IL_000c: ldarg.1 + IL_000d: call native int Virtuoso.Miranda.Plugins.Infrastructure.Skin::LoadProtocolIcon(string, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode) + IL_0012: ret + } // end of method Skin::LoadProtocolIcon + + .method public hidebysig static native int + LoadProtocolIcon(string protocolName, + valuetype Virtuoso.Miranda.Plugins.Infrastructure.StatusMode status) cil managed + { + // Code size 61 (0x3d) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle protoNamePtr, + [1] native int CS$1$0000) + .line 66,66 : 13,78 '' + IL_0000: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Empty + IL_0005: stloc.0 + .line 70,70 : 17,93 '' + .try + { + IL_0006: ldarg.0 + IL_0007: ldc.i4.0 + IL_0008: newobj instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor(string, + valuetype Virtuoso.Miranda.Plugins.Native.StringEncoding) + IL_000d: stloc.0 + .line 71,71 : 17,127 '' + IL_000e: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0013: ldstr "Skin/Icons/LoadProto" + IL_0018: ldloca.s protoNamePtr + IL_001a: call instance native int Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr() + IL_001f: ldarg.1 + IL_0020: conv.i8 + IL_0021: call native int [mscorlib]System.IntPtr::op_Explicit(int64) + IL_0026: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native int, + native int) + IL_002b: call native int [mscorlib]System.IntPtr::op_Explicit(int32) + IL_0030: stloc.1 + IL_0031: leave.s IL_003b + + .line 75,75 : 17,37 '' + } // end .try + finally + { + IL_0033: ldloca.s protoNamePtr + IL_0035: call instance void Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free() + IL_003a: endfinally + .line 77,77 : 9,10 '' + } // end handler + IL_003b: ldloc.1 + IL_003c: ret + } // end of method Skin::LoadProtocolIcon + +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.Skin + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 + extends class [mscorlib]System.Collections.Generic.Dictionary`2 +{ + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 28,28 : 9,35 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Helpers\\TypeInstanceCache.cs' + IL_0000: ldarg.0 + IL_0001: call instance void class [mscorlib]System.Collections.Generic.Dictionary`2::.ctor() + .line 28,28 : 38,39 '' + IL_0006: ret + } // end of method TypeInstanceCache`1::.ctor + + .method public hidebysig instance !T Instantiate(class [mscorlib]System.Type 'type') cil managed + { + // Code size 60 (0x3c) + .maxstack 3 + .locals init ([0] !T 'instance', + [1] !T CS$1$0000, + [2] class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 CS$2$0001) + .line 36,36 : 13,24 '' + IL_0000: ldarg.0 + IL_0001: dup + IL_0002: stloc.2 + IL_0003: call void [mscorlib]System.Threading.Monitor::Enter(object) + .line 38,38 : 17,39 '' + .try + { + IL_0008: ldarg.0 + IL_0009: ldarg.1 + IL_000a: call instance bool class [mscorlib]System.Collections.Generic.Dictionary`2::ContainsKey(!0) + IL_000f: brfalse.s IL_001b + + .line 39,39 : 21,39 '' + IL_0011: ldarg.0 + IL_0012: ldarg.1 + IL_0013: call instance !1 class [mscorlib]System.Collections.Generic.Dictionary`2::get_Item(!0) + IL_0018: stloc.1 + IL_0019: leave.s IL_003a + + .line 42,42 : 21,68 '' + IL_001b: ldarg.1 + IL_001c: call object [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type) + IL_0021: unbox.any !T + IL_0026: stloc.0 + .line 43,43 : 21,43 '' + IL_0027: ldarg.0 + IL_0028: ldarg.1 + IL_0029: ldloc.0 + IL_002a: call instance void class [mscorlib]System.Collections.Generic.Dictionary`2::set_Item(!0, + !1) + .line 45,45 : 21,37 '' + IL_002f: ldloc.0 + IL_0030: stloc.1 + IL_0031: leave.s IL_003a + + } // end .try + finally + { + IL_0033: ldloc.2 + IL_0034: call void [mscorlib]System.Threading.Monitor::Exit(object) + IL_0039: endfinally + .line 48,48 : 9,10 '' + } // end handler + IL_003a: ldloc.1 + IL_003b: ret + } // end of method TypeInstanceCache`1::Instantiate + +} // end of class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache + extends class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 +{ + .field private static class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache singleton + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 35,35 : 9,38 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\StringResolverCache.cs' + IL_0000: ldarg.0 + IL_0001: call instance void class Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::.ctor() + .line 35,35 : 41,42 '' + IL_0006: ret + } // end of method StringResolverCache::.ctor + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache + get_Singleton() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 45,45 : 17,77 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::singleton + IL_0005: dup + IL_0006: brtrue.s IL_0014 + + IL_0008: pop + IL_0009: newobj instance void Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::.ctor() + IL_000e: dup + IL_000f: stsfld class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::singleton + IL_0014: ret + } // end of method StringResolverCache::get_Singleton + + .property class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache + Singleton() + { + .get class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::get_Singleton() + } // end of property StringResolverCache::Singleton +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Native.ACKDATA + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field public native int ModuleName + .field public native int ContactHandle + .field public int32 Type + .field public int32 Result + .field public native int ProcessHandle + .field public native int LParam + .method public hidebysig specialname rtspecialname + instance void .ctor(native int moduleName, + int32 'type', + int32 result) cil managed + { + // Code size 76 (0x4c) + .maxstack 2 + .line 38,38 : 13,42 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Native\\ACKDATA.cs' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ModuleName + .line 39,39 : 13,30 '' + IL_0007: ldarg.0 + IL_0008: ldarg.2 + IL_0009: stfld int32 Virtuoso.Miranda.Plugins.Native.ACKDATA::Type + .line 40,40 : 13,34 '' + IL_000e: ldarg.0 + IL_000f: ldarg.3 + IL_0010: stfld int32 Virtuoso.Miranda.Plugins.Native.ACKDATA::Result + .line 42,42 : 13,46 '' + IL_0015: ldarg.0 + IL_0016: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_001b: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ContactHandle + .line 43,43 : 13,46 '' + IL_0020: ldarg.0 + IL_0021: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0026: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::ProcessHandle + .line 44,44 : 13,39 '' + IL_002b: ldarg.0 + IL_002c: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0031: stfld native int Virtuoso.Miranda.Plugins.Native.ACKDATA::LParam + .line 46,46 : 13,57 '' + IL_0036: ldarg.0 + IL_0037: ldtoken Virtuoso.Miranda.Plugins.Native.ACKDATA + IL_003c: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0041: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0046: stfld int32 Virtuoso.Miranda.Plugins.Native.ACKDATA::Size + .line 47,47 : 9,10 '' + IL_004b: ret + } // end of method ACKDATA::.ctor + +} // end of class Virtuoso.Miranda.Plugins.Native.ACKDATA + +.class public sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + extends [mscorlib]System.Object +{ + .pack 4 + .size 0 + .field private initonly int32 Size + .field assembly native int ContactHandle + .field assembly native int IconHandle + .field assembly uint32 Flags + .field assembly native int EventHandle + .field assembly native int lParam + .field assembly string ServiceName + .field assembly string Tooltip + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 43,43 : 9,36 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Infrastructure\\ContactListEvent.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 45,45 : 13,41 '' + IL_0006: ldarg.0 + IL_0007: ldarg.0 + IL_0008: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(object) + IL_000d: stfld int32 Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::Size + .line 46,46 : 9,10 '' + IL_0012: ret + } // end of method ContactListEvent::.ctor + + .method public hidebysig static class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + FromPointer(native int pClistEvent) cil managed + { + // Code size 46 (0x2e) + .maxstack 8 + .line 50,50 : 13,44 '' + IL_0000: ldarg.0 + IL_0001: ldsfld native int [mscorlib]System.IntPtr::Zero + IL_0006: call bool [mscorlib]System.IntPtr::op_Equality(native int, + native int) + IL_000b: brfalse.s IL_0018 + + .line 51,51 : 17,70 '' + IL_000d: ldstr "pClistEventHandle" + IL_0012: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0017: throw + + .line 53,53 : 13,100 '' + IL_0018: ldarg.0 + IL_0019: ldtoken Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + IL_001e: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0023: call object [mscorlib]System.Runtime.InteropServices.Marshal::PtrToStructure(native int, + class [mscorlib]System.Type) + IL_0028: castclass Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + IL_002d: ret + } // end of method ContactListEvent::FromPointer + + .method public hidebysig specialname instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + get_Contact() cil managed + { + // Code size 12 (0xc) + .maxstack 8 + .line 62,62 : 19,64 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::ContactHandle + IL_0006: call class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle(native int) + IL_000b: ret + } // end of method ContactListEvent::get_Contact + + .method public hidebysig specialname instance native int + get_LParam() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 67,67 : 19,33 '' + IL_0000: ldarg.0 + IL_0001: ldfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::lParam + IL_0006: ret + } // end of method ContactListEvent::get_LParam + + .method assembly hidebysig specialname + instance void set_LParam(native int 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 68,68 : 28,43 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::lParam + .line 68,68 : 44,45 '' + IL_0007: ret + } // end of method ContactListEvent::set_LParam + + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + Contact() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::get_Contact() + } // end of property ContactListEvent::Contact + .property instance native int LParam() + { + .get instance native int Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::get_LParam() + .set instance void Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::set_LParam(native int) + } // end of property ContactListEvent::LParam +} // end of class Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs + extends [mscorlib]System.EventArgs +{ + .field private initonly valuetype Virtuoso.Miranda.Plugins.PluginState previousState + .field private initonly valuetype Virtuoso.Miranda.Plugins.PluginState currentState + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.PluginState + get_CurrentState() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 32,32 : 19,39 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\PluginStateChangeEventArgs.cs' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::currentState + IL_0006: ret + } // end of method PluginStateChangeEventArgs::get_CurrentState + + .method public hidebysig specialname instance valuetype Virtuoso.Miranda.Plugins.PluginState + get_PreviousState() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 37,37 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::previousState + IL_0006: ret + } // end of method PluginStateChangeEventArgs::get_PreviousState + + .method public hidebysig specialname rtspecialname + instance void .ctor(valuetype Virtuoso.Miranda.Plugins.PluginState previous, + valuetype Virtuoso.Miranda.Plugins.PluginState current) cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 44,44 : 9,85 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.EventArgs::.ctor() + .line 46,46 : 13,43 '' + IL_0006: ldarg.0 + IL_0007: ldarg.1 + IL_0008: stfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::previousState + .line 47,47 : 13,41 '' + IL_000d: ldarg.0 + IL_000e: ldarg.2 + IL_000f: stfld valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::currentState + .line 48,48 : 9,10 '' + IL_0014: ret + } // end of method PluginStateChangeEventArgs::.ctor + + .property instance valuetype Virtuoso.Miranda.Plugins.PluginState + CurrentState() + { + .get instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::get_CurrentState() + } // end of property PluginStateChangeEventArgs::CurrentState + .property instance valuetype Virtuoso.Miranda.Plugins.PluginState + PreviousState() + { + .get instance valuetype Virtuoso.Miranda.Plugins.PluginState Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::get_PreviousState() + } // end of property PluginStateChangeEventArgs::PreviousState +} // end of class Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs + +.class private auto ansi serializable beforefieldinit Virtuoso.Miranda.Plugins.PMConfiguration + extends Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration +{ + .custom instance void Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor(string) = ( 01 00 07 30 2E 31 2E 30 2E 30 01 00 54 02 0C 50 // ...0.1.0.0..T..P + 72 6F 66 69 6C 65 42 6F 75 6E 64 01 ) // rofileBound. + .field private static class Virtuoso.Miranda.Plugins.PMConfiguration singleton + .field private class [mscorlib]System.Collections.Generic.List`1 disabledPlugins + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 30,30 : 9,34 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\PMConfiguration.cs' + IL_0000: ldarg.0 + IL_0001: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::.ctor() + .line 30,30 : 37,38 '' + IL_0006: ret + } // end of method PMConfiguration::.ctor + + .method family hidebysig virtual instance void + InitializeDefaultConfiguration() cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 34,34 : 13,51 '' + IL_0000: ldarg.0 + IL_0001: ldc.i4.1 + IL_0002: newobj instance void class [mscorlib]System.Collections.Generic.List`1::.ctor(int32) + IL_0007: stfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::disabledPlugins + .line 35,35 : 13,51 '' + IL_000c: ldarg.0 + IL_000d: call instance void Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::InitializeDefaultConfiguration() + .line 36,36 : 9,10 '' + IL_0012: ret + } // end of method PMConfiguration::InitializeDefaultConfiguration + + .method public hidebysig static void Initialize() cil managed + { + // Code size 24 (0x18) + .maxstack 8 + .line 40,40 : 13,35 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::singleton + IL_0005: brfalse.s IL_000d + + .line 41,41 : 17,55 '' + IL_0007: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_000c: throw + + .line 43,43 : 13,49 '' + IL_000d: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Load() + IL_0012: stsfld class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::singleton + .line 44,44 : 9,10 '' + IL_0017: ret + } // end of method PMConfiguration::Initialize + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.PMConfiguration + get_Singleton() cil managed + { + // Code size 19 (0x13) + .maxstack 8 + .line 55,55 : 17,39 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::singleton + IL_0005: brtrue.s IL_000d + + .line 56,56 : 21,59 '' + IL_0007: newobj instance void [mscorlib]System.InvalidOperationException::.ctor() + IL_000c: throw + + .line 58,58 : 17,34 '' + IL_000d: ldsfld class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::singleton + IL_0012: ret + } // end of method PMConfiguration::get_Singleton + + .method public hidebysig specialname instance class [mscorlib]System.Collections.Generic.List`1 + get_DisabledPlugins() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 65,65 : 19,42 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::disabledPlugins + IL_0006: ret + } // end of method PMConfiguration::get_DisabledPlugins + + .method public hidebysig specialname instance void + set_DisabledPlugins(class [mscorlib]System.Collections.Generic.List`1 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 66,66 : 19,43 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::disabledPlugins + .line 66,66 : 44,45 '' + IL_0007: ret + } // end of method PMConfiguration::set_DisabledPlugins + + .method public hidebysig static void Reset() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 75,75 : 13,88 '' + IL_0000: call !!0 Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration() + IL_0005: stsfld class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::singleton + .line 76,76 : 9,10 '' + IL_000a: ret + } // end of method PMConfiguration::Reset + + .method public hidebysig static void Reload() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 80,80 : 13,26 '' + IL_0000: call void Virtuoso.Miranda.Plugins.PMConfiguration::Initialize() + .line 81,81 : 9,10 '' + IL_0005: ret + } // end of method PMConfiguration::Reload + + .property class Virtuoso.Miranda.Plugins.PMConfiguration + Singleton() + { + .get class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + } // end of property PMConfiguration::Singleton + .property instance class [mscorlib]System.Collections.Generic.List`1 + DisabledPlugins() + { + .get instance class [mscorlib]System.Collections.Generic.List`1 Virtuoso.Miranda.Plugins.PMConfiguration::get_DisabledPlugins() + .set instance void Virtuoso.Miranda.Plugins.PMConfiguration::set_DisabledPlugins(class [mscorlib]System.Collections.Generic.List`1) + } // end of property PMConfiguration::DisabledPlugins +} // end of class Virtuoso.Miranda.Plugins.PMConfiguration + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Configuration.PMConfigurator + extends [mscorlib]System.Object + implements Virtuoso.Miranda.Plugins.IInternalConfigurator, + Virtuoso.Miranda.Plugins.IConfigurablePlugin +{ + .field private static class Virtuoso.Miranda.Plugins.IConfigurablePlugin singleton + .field private class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] configuration + .method private hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 32,32 : 9,33 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Configuration\\PMConfigurator.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 32,32 : 36,37 '' + IL_0006: ret + } // end of method PMConfigurator::.ctor + + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.IConfigurablePlugin + get_Singleton() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 43,43 : 17,72 '' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::singleton + IL_0005: dup + IL_0006: brtrue.s IL_0014 + + IL_0008: pop + IL_0009: newobj instance void Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::.ctor() + IL_000e: dup + IL_000f: stsfld class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::singleton + IL_0014: ret + } // end of method PMConfigurator::get_Singleton + + .method public hidebysig newslot specialname virtual final + instance string get_Name() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 53,53 : 19,36 '' + IL_0000: ldstr "Plugins" + IL_0005: ret + } // end of method PMConfigurator::get_Name + + .method public hidebysig newslot specialname virtual final + instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + get_Configuration() cil managed + { + // Code size 36 (0x24) + .maxstack 4 + .locals init ([0] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$0$0000, + [1] class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] CS$0$0001) + .line 59,59 : 19,117 '' + IL_0000: ldarg.0 + IL_0001: ldfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::configuration + IL_0006: dup + IL_0007: brtrue.s IL_0023 + + IL_0009: pop + IL_000a: ldarg.0 + IL_000b: ldc.i4.1 + IL_000c: newarr Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + IL_0011: stloc.0 + IL_0012: ldloc.0 + IL_0013: ldc.i4.0 + IL_0014: call class Virtuoso.Miranda.Plugins.PMConfiguration Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton() + IL_0019: stelem.ref + IL_001a: ldloc.0 + IL_001b: dup + IL_001c: stloc.1 + IL_001d: stfld class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::configuration + IL_0022: ldloc.1 + IL_0023: ret + } // end of method PMConfigurator::get_Configuration + + .method public hidebysig newslot virtual final + instance void PopulateConfiguration(class Virtuoso.Miranda.Plugins.Configuration.CategoryCollection categories) cil managed + { + // Code size 73 (0x49) + .maxstack 3 + .locals init ([0] class Virtuoso.Miranda.Plugins.Configuration.Category category, + [1] class Virtuoso.Miranda.Plugins.Configuration.CategoryItem item) + .line 64,64 : 13,124 '' + IL_0000: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management() + IL_0005: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Description() + IL_000a: newobj instance void Virtuoso.Miranda.Plugins.Configuration.Category::.ctor(string, + string) + IL_000f: stloc.0 + .line 65,65 : 13,38 '' + IL_0010: ldarg.1 + IL_0011: ldloc.0 + IL_0012: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 67,67 : 13,177 '' + IL_0017: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins() + IL_001c: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins_Description() + IL_0021: ldtoken Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent + IL_0026: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_002b: newobj instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor(string, + string, + class [mscorlib]System.Type) + IL_0030: stloc.1 + .line 68,68 : 13,65 '' + IL_0031: ldloc.1 + IL_0032: call class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Management() + IL_0037: callvirt instance void Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_Image(class [System.Drawing]System.Drawing.Image) + .line 69,69 : 13,38 '' + IL_003c: ldloc.0 + IL_003d: callvirt instance class Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection Virtuoso.Miranda.Plugins.Configuration.Category::get_Items() + IL_0042: ldloc.1 + IL_0043: callvirt instance void class [mscorlib]System.Collections.Generic.List`1::Add(!0) + .line 70,70 : 9,10 '' + IL_0048: ret + } // end of method PMConfigurator::PopulateConfiguration + + .method public hidebysig newslot virtual final + instance void ResetConfiguration() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 74,74 : 13,37 '' + IL_0000: call void Virtuoso.Miranda.Plugins.PMConfiguration::Reset() + .line 75,75 : 9,10 '' + IL_0005: ret + } // end of method PMConfigurator::ResetConfiguration + + .method public hidebysig newslot virtual final + instance void ReloadConfiguration() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 79,79 : 13,38 '' + IL_0000: call void Virtuoso.Miranda.Plugins.PMConfiguration::Reload() + .line 80,80 : 9,10 '' + IL_0005: ret + } // end of method PMConfigurator::ReloadConfiguration + + .property class Virtuoso.Miranda.Plugins.IConfigurablePlugin + Singleton() + { + .get class Virtuoso.Miranda.Plugins.IConfigurablePlugin Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Singleton() + } // end of property PMConfigurator::Singleton + .property instance string Name() + { + .get instance string Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Name() + } // end of property PMConfigurator::Name + .property instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] + Configuration() + { + .get instance class Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration[] Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Configuration() + } // end of property PMConfigurator::Configuration +} // end of class Virtuoso.Miranda.Plugins.Configuration.PMConfigurator + +.class private auto ansi beforefieldinit Virtuoso.Miranda.Plugins.Properties.Resources + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.CodeDom.Compiler.GeneratedCodeAttribute::.ctor(string, + string) = ( 01 00 33 53 79 73 74 65 6D 2E 52 65 73 6F 75 72 // ..3System.Resour + 63 65 73 2E 54 6F 6F 6C 73 2E 53 74 72 6F 6E 67 // ces.Tools.Strong + 6C 79 54 79 70 65 64 52 65 73 6F 75 72 63 65 42 // lyTypedResourceB + 75 69 6C 64 65 72 07 34 2E 30 2E 30 2E 30 00 00 ) // uilder.4.0.0.0.. + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private static class [mscorlib]System.Resources.ResourceManager resourceMan + .field private static class [mscorlib]System.Globalization.CultureInfo resourceCulture + .method assembly hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 31,32 : 9,29 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Properties\\Resources.Designer.cs' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 33,33 : 9,10 '' + IL_0006: ret + } // end of method Resources::.ctor + + .method assembly hidebysig specialname static + class [mscorlib]System.Resources.ResourceManager + get_ResourceManager() cil managed + { + // Code size 51 (0x33) + .maxstack 2 + .locals init ([0] class [mscorlib]System.Resources.ResourceManager temp) + .line 41,41 : 17,63 '' + IL_0000: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::resourceMan + IL_0005: ldnull + IL_0006: call bool [mscorlib]System.Object::ReferenceEquals(object, + object) + IL_000b: brfalse.s IL_002d + + .line 42,42 : 21,191 '' + IL_000d: ldstr "Virtuoso.Miranda.Plugins.Properties.Resources" + IL_0012: ldtoken Virtuoso.Miranda.Plugins.Properties.Resources + IL_0017: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_001c: callvirt instance class [mscorlib]System.Reflection.Assembly [mscorlib]System.Type::get_Assembly() + IL_0021: newobj instance void [mscorlib]System.Resources.ResourceManager::.ctor(string, + class [mscorlib]System.Reflection.Assembly) + IL_0026: stloc.0 + .line 43,43 : 21,40 '' + IL_0027: ldloc.0 + IL_0028: stsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::resourceMan + .line 45,45 : 17,36 '' + IL_002d: ldsfld class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::resourceMan + IL_0032: ret + } // end of method Resources::get_ResourceManager + + .method assembly hidebysig specialname static + class [mscorlib]System.Globalization.CultureInfo + get_Culture() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 56,56 : 17,40 '' + IL_0000: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + IL_0005: ret + } // end of method Resources::get_Culture + + .method assembly hidebysig specialname static + void set_Culture(class [mscorlib]System.Globalization.CultureInfo 'value') cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 59,59 : 17,41 '' + IL_0000: ldarg.0 + IL_0001: stsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + .line 60,60 : 13,14 '' + IL_0006: ret + } // end of method Resources::set_Culture + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Icon_232_32x32() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 68,68 : 17,91 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager() + IL_0005: ldstr "Icon 232_32x32" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 69,69 : 17,55 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Bitmap + IL_001b: ret + } // end of method Resources::get_Icon_232_32x32 + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_Icon_256_32x32() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 78,78 : 17,91 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager() + IL_0005: ldstr "Icon 256_32x32" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 79,79 : 17,55 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Bitmap + IL_001b: ret + } // end of method Resources::get_Icon_256_32x32 + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_RibbonClick() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 88,88 : 17,88 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager() + IL_0005: ldstr "RibbonClick" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 89,89 : 17,55 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Bitmap + IL_001b: ret + } // end of method Resources::get_RibbonClick + + .method assembly hidebysig specialname static + class [System.Drawing]System.Drawing.Bitmap + get_RibbonHover() cil managed + { + // Code size 28 (0x1c) + .maxstack 3 + .locals init ([0] object obj) + .line 98,98 : 17,88 '' + IL_0000: call class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager() + IL_0005: ldstr "RibbonHover" + IL_000a: ldsfld class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::resourceCulture + IL_000f: callvirt instance object [mscorlib]System.Resources.ResourceManager::GetObject(string, + class [mscorlib]System.Globalization.CultureInfo) + IL_0014: stloc.0 + .line 99,99 : 17,55 '' + IL_0015: ldloc.0 + IL_0016: castclass [System.Drawing]System.Drawing.Bitmap + IL_001b: ret + } // end of method Resources::get_RibbonHover + + .property class [mscorlib]System.Resources.ResourceManager + ResourceManager() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .get class [mscorlib]System.Resources.ResourceManager Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager() + } // end of property Resources::ResourceManager + .property class [mscorlib]System.Globalization.CultureInfo + Culture() + { + .custom instance void [System]System.ComponentModel.EditorBrowsableAttribute::.ctor(valuetype [System]System.ComponentModel.EditorBrowsableState) = ( 01 00 02 00 00 00 00 00 ) + .get class [mscorlib]System.Globalization.CultureInfo Virtuoso.Miranda.Plugins.Properties.Resources::get_Culture() + .set void Virtuoso.Miranda.Plugins.Properties.Resources::set_Culture(class [mscorlib]System.Globalization.CultureInfo) + } // end of property Resources::Culture + .property class [System.Drawing]System.Drawing.Bitmap + Icon_232_32x32() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_232_32x32() + } // end of property Resources::Icon_232_32x32 + .property class [System.Drawing]System.Drawing.Bitmap + Icon_256_32x32() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_256_32x32() + } // end of property Resources::Icon_256_32x32 + .property class [System.Drawing]System.Drawing.Bitmap + RibbonClick() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_RibbonClick() + } // end of property Resources::RibbonClick + .property class [System.Drawing]System.Drawing.Bitmap + RibbonHover() + { + .get class [System.Drawing]System.Drawing.Bitmap Virtuoso.Miranda.Plugins.Properties.Resources::get_RibbonHover() + } // end of property Resources::RibbonHover +} // end of class Virtuoso.Miranda.Plugins.Properties.Resources + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.Properties.Settings + extends [System]System.Configuration.ApplicationSettingsBase +{ + .custom instance void [System]System.CodeDom.Compiler.GeneratedCodeAttribute::.ctor(string, + string) = ( 01 00 4B 4D 69 63 72 6F 73 6F 66 74 2E 56 69 73 // ..KMicrosoft.Vis + 75 61 6C 53 74 75 64 69 6F 2E 45 64 69 74 6F 72 // ualStudio.Editor + 73 2E 53 65 74 74 69 6E 67 73 44 65 73 69 67 6E // s.SettingsDesign + 65 72 2E 53 65 74 74 69 6E 67 73 53 69 6E 67 6C // er.SettingsSingl + 65 46 69 6C 65 47 65 6E 65 72 61 74 6F 72 08 31 // eFileGenerator.1 + 31 2E 30 2E 30 2E 30 00 00 ) // 1.0.0.0.. + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .field private static class Virtuoso.Miranda.Plugins.Properties.Settings defaultInstance + .method public hidebysig specialname static + class Virtuoso.Miranda.Plugins.Properties.Settings + get_Default() cil managed + { + // Code size 6 (0x6) + .maxstack 8 + .line 22,22 : 17,40 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\Properties\\Settings.Designer.cs' + IL_0000: ldsfld class Virtuoso.Miranda.Plugins.Properties.Settings Virtuoso.Miranda.Plugins.Properties.Settings::defaultInstance + IL_0005: ret + } // end of method Settings::get_Default + + .method public hidebysig specialname instance bool + get_ConfigurationDialog_HideExpertOptions_Checked() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 31,31 : 17,88 '' + IL_0000: ldarg.0 + IL_0001: ldstr "ConfigurationDialog_HideExpertOptions_Checked" + IL_0006: callvirt instance object [System]System.Configuration.SettingsBase::get_Item(string) + IL_000b: unbox.any [mscorlib]System.Boolean + IL_0010: ret + } // end of method Settings::get_ConfigurationDialog_HideExpertOptions_Checked + + .method public hidebysig specialname instance void + set_ConfigurationDialog_HideExpertOptions_Checked(bool 'value') cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 34,34 : 17,79 '' + IL_0000: ldarg.0 + IL_0001: ldstr "ConfigurationDialog_HideExpertOptions_Checked" + IL_0006: ldarg.1 + IL_0007: box [mscorlib]System.Boolean + IL_000c: callvirt instance void [System]System.Configuration.SettingsBase::set_Item(string, + object) + .line 35,35 : 13,14 '' + IL_0011: ret + } // end of method Settings::set_ConfigurationDialog_HideExpertOptions_Checked + + .method public hidebysig specialname instance valuetype [System.Windows.Forms]System.Windows.Forms.View + get_ConfigurationPanel_CategoryItems_View() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 43,43 : 17,109 '' + IL_0000: ldarg.0 + IL_0001: ldstr "ConfigurationPanel_CategoryItems_View" + IL_0006: callvirt instance object [System]System.Configuration.SettingsBase::get_Item(string) + IL_000b: unbox.any [System.Windows.Forms]System.Windows.Forms.View + IL_0010: ret + } // end of method Settings::get_ConfigurationPanel_CategoryItems_View + + .method public hidebysig specialname instance void + set_ConfigurationPanel_CategoryItems_View(valuetype [System.Windows.Forms]System.Windows.Forms.View 'value') cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 46,46 : 17,71 '' + IL_0000: ldarg.0 + IL_0001: ldstr "ConfigurationPanel_CategoryItems_View" + IL_0006: ldarg.1 + IL_0007: box [System.Windows.Forms]System.Windows.Forms.View + IL_000c: callvirt instance void [System]System.Configuration.SettingsBase::set_Item(string, + object) + .line 47,47 : 13,14 '' + IL_0011: ret + } // end of method Settings::set_ConfigurationPanel_CategoryItems_View + + .method public hidebysig specialname instance valuetype [System.Drawing]System.Drawing.Size + get_ConfigurationDialog_ClientSize() cil managed + { + // Code size 17 (0x11) + .maxstack 8 + .line 55,55 : 17,96 '' + IL_0000: ldarg.0 + IL_0001: ldstr "ConfigurationDialog_ClientSize" + IL_0006: callvirt instance object [System]System.Configuration.SettingsBase::get_Item(string) + IL_000b: unbox.any [System.Drawing]System.Drawing.Size + IL_0010: ret + } // end of method Settings::get_ConfigurationDialog_ClientSize + + .method public hidebysig specialname instance void + set_ConfigurationDialog_ClientSize(valuetype [System.Drawing]System.Drawing.Size 'value') cil managed + { + // Code size 18 (0x12) + .maxstack 8 + .line 58,58 : 17,64 '' + IL_0000: ldarg.0 + IL_0001: ldstr "ConfigurationDialog_ClientSize" + IL_0006: ldarg.1 + IL_0007: box [System.Drawing]System.Drawing.Size + IL_000c: callvirt instance void [System]System.Configuration.SettingsBase::set_Item(string, + object) + .line 59,59 : 13,14 '' + IL_0011: ret + } // end of method Settings::set_ConfigurationDialog_ClientSize + + .method public hidebysig specialname rtspecialname + instance void .ctor() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + IL_0000: ldarg.0 + IL_0001: call instance void [System]System.Configuration.ApplicationSettingsBase::.ctor() + IL_0006: ret + } // end of method Settings::.ctor + + .method private hidebysig specialname rtspecialname static + void .cctor() cil managed + { + // Code size 21 (0x15) + .maxstack 8 + .line 18,18 : 9,147 '' + IL_0000: newobj instance void Virtuoso.Miranda.Plugins.Properties.Settings::.ctor() + IL_0005: call class [System]System.Configuration.SettingsBase [System]System.Configuration.SettingsBase::Synchronized(class [System]System.Configuration.SettingsBase) + IL_000a: castclass Virtuoso.Miranda.Plugins.Properties.Settings + IL_000f: stsfld class Virtuoso.Miranda.Plugins.Properties.Settings Virtuoso.Miranda.Plugins.Properties.Settings::defaultInstance + IL_0014: ret + } // end of method Settings::.cctor + + .property class Virtuoso.Miranda.Plugins.Properties.Settings + Default() + { + .get class Virtuoso.Miranda.Plugins.Properties.Settings Virtuoso.Miranda.Plugins.Properties.Settings::get_Default() + } // end of property Settings::Default + .property instance bool ConfigurationDialog_HideExpertOptions_Checked() + { + .custom instance void [System]System.Configuration.UserScopedSettingAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.Configuration.DefaultSettingValueAttribute::.ctor(string) = ( 01 00 05 46 61 6C 73 65 00 00 ) // ...False.. + .set instance void Virtuoso.Miranda.Plugins.Properties.Settings::set_ConfigurationDialog_HideExpertOptions_Checked(bool) + .get instance bool Virtuoso.Miranda.Plugins.Properties.Settings::get_ConfigurationDialog_HideExpertOptions_Checked() + } // end of property Settings::ConfigurationDialog_HideExpertOptions_Checked + .property instance valuetype [System.Windows.Forms]System.Windows.Forms.View + ConfigurationPanel_CategoryItems_View() + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.Configuration.UserScopedSettingAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.Configuration.DefaultSettingValueAttribute::.ctor(string) = ( 01 00 04 54 69 6C 65 00 00 ) // ...Tile.. + .get instance valuetype [System.Windows.Forms]System.Windows.Forms.View Virtuoso.Miranda.Plugins.Properties.Settings::get_ConfigurationPanel_CategoryItems_View() + .set instance void Virtuoso.Miranda.Plugins.Properties.Settings::set_ConfigurationPanel_CategoryItems_View(valuetype [System.Windows.Forms]System.Windows.Forms.View) + } // end of property Settings::ConfigurationPanel_CategoryItems_View + .property instance valuetype [System.Drawing]System.Drawing.Size + ConfigurationDialog_ClientSize() + { + .custom instance void [mscorlib]System.Diagnostics.DebuggerNonUserCodeAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.Configuration.UserScopedSettingAttribute::.ctor() = ( 01 00 00 00 ) + .custom instance void [System]System.Configuration.DefaultSettingValueAttribute::.ctor(string) = ( 01 00 08 37 39 32 2C 20 35 36 32 00 00 ) // ...792, 562.. + .get instance valuetype [System.Drawing]System.Drawing.Size Virtuoso.Miranda.Plugins.Properties.Settings::get_ConfigurationDialog_ClientSize() + .set instance void Virtuoso.Miranda.Plugins.Properties.Settings::set_ConfigurationDialog_ClientSize(valuetype [System.Drawing]System.Drawing.Size) + } // end of property Settings::ConfigurationDialog_ClientSize +} // end of class Virtuoso.Miranda.Plugins.Properties.Settings + +.class private auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.RuntimeNotSupportedException + extends [mscorlib]System.NotSupportedException +{ + .field private class [mscorlib]System.Version requiredVersion + .field private class [mscorlib]System.Version availableVersion + .method public hidebysig specialname instance class [mscorlib]System.Version + get_AvailableVersion() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 35,35 : 19,43 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\RuntimeNotSupportedException.cs' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::availableVersion + IL_0006: ret + } // end of method RuntimeNotSupportedException::get_AvailableVersion + + .method public hidebysig specialname instance class [mscorlib]System.Version + get_RequiredVersion() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 40,40 : 19,42 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::requiredVersion + IL_0006: ret + } // end of method RuntimeNotSupportedException::get_RequiredVersion + + .method public hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Type pluginType, + class [mscorlib]System.Version requiredVersion) cil managed + { + // Code size 10 (0xa) + .maxstack 8 + .line 47,48 : 9,54 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: ldc.i4.1 + IL_0004: call instance void Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor(class [mscorlib]System.Type, + class [mscorlib]System.Version, + bool) + .line 48,48 : 57,58 '' + IL_0009: ret + } // end of method RuntimeNotSupportedException::.ctor + + .method public hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Type pluginType, + class [mscorlib]System.Version requiredVersion, + bool isHyphenVersion) cil managed + { + // Code size 113 (0x71) + .maxstack 6 + .line 50,53 : 9,142 '' + IL_0000: ldarg.0 + IL_0001: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable() + IL_0006: ldarg.1 + IL_0007: brfalse.s IL_0011 + + IL_0009: ldarg.1 + IL_000a: callvirt instance string [mscorlib]System.Type::get_FullName() + IL_000f: br.s IL_0016 + + IL_0011: ldsfld string [mscorlib]System.String::Empty + IL_0016: ldarg.2 + IL_0017: ldnull + IL_0018: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_001d: brtrue.s IL_003b + + IL_001f: ldstr "{0} {1}" + IL_0024: ldarg.3 + IL_0025: brfalse.s IL_002e + + IL_0027: ldstr "Hyphen" + IL_002c: br.s IL_0033 + + IL_002e: ldstr "Miranda" + IL_0033: ldarg.2 + IL_0034: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0039: br.s IL_0040 + + IL_003b: ldsfld string [mscorlib]System.String::Empty + IL_0040: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0045: call instance void [mscorlib]System.NotSupportedException::.ctor(string) + .line 55,55 : 13,41 '' + IL_004a: ldarg.2 + IL_004b: ldnull + IL_004c: call bool [mscorlib]System.Version::op_Equality(class [mscorlib]System.Version, + class [mscorlib]System.Version) + IL_0051: brfalse.s IL_005e + + .line 56,56 : 17,68 '' + IL_0053: ldstr "requiredVersion" + IL_0058: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_005d: throw + + .line 58,58 : 13,52 '' + IL_005e: ldarg.0 + IL_005f: ldarg.2 + IL_0060: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::requiredVersion + .line 59,59 : 13,58 '' + IL_0065: ldarg.0 + IL_0066: call class [mscorlib]System.Version Virtuoso.Hyphen.Loader::get_HyphenVersion() + IL_006b: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::availableVersion + .line 60,60 : 9,10 '' + IL_0070: ret + } // end of method RuntimeNotSupportedException::.ctor + + .method private hidebysig specialname rtspecialname + instance void .ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo info, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext context) cil managed + { + // Code size 9 (0x9) + .maxstack 8 + .line 62,62 : 9,117 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: ldarg.2 + IL_0003: call instance void [mscorlib]System.NotSupportedException::.ctor(class [mscorlib]System.Runtime.Serialization.SerializationInfo, + valuetype [mscorlib]System.Runtime.Serialization.StreamingContext) + .line 62,62 : 120,121 '' + IL_0008: ret + } // end of method RuntimeNotSupportedException::.ctor + + .property instance class [mscorlib]System.Version + AvailableVersion() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::get_AvailableVersion() + } // end of property RuntimeNotSupportedException::AvailableVersion + .property instance class [mscorlib]System.Version + RequiredVersion() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::get_RequiredVersion() + } // end of property RuntimeNotSupportedException::RequiredVersion +} // end of class Virtuoso.Miranda.Plugins.RuntimeNotSupportedException + +.class private sequential ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE + extends [mscorlib]System.ValueType +{ + .pack 4 + .size 0 + .field public int32 Size + .field public string ComponentName + .field public string VersionUrl + .field public string VersionPrefix + .field public int32 VersionPrefixLength + .field public string UpdateUrl + .field public string BetaVersionUrl + .field public string BetaVersionPrefix + .field public int32 BetaVersionPrefixLength + .field public string BetaUpdateUrl + .field public string Version + .field public int32 VersionLength + .field public string BetaChangelogUrl +} // end of class Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE + +.class public auto ansi beforefieldinit Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update + extends [mscorlib]System.Object +{ + .field private initonly string pluginName + .field private initonly class [mscorlib]System.Version currentVersion + .field private initonly class [System]System.Uri updateUrl + .field private initonly class [System]System.Uri versionUrl + .field private class [System]System.Uri betaVersionUrl + .field private class [System]System.Uri betaUpdateUrl + .field private class [System]System.Uri betaChangelogUrl + .field private initonly string versionTextPrefix + .field private string betaVersionTextPrefix + .method public hidebysig specialname instance string + get_PluginName() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 34,34 : 19,37 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\ThirdParty\\Updater\\Update.cs' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::pluginName + IL_0006: ret + } // end of method Update::get_PluginName + + .method public hidebysig specialname instance class [mscorlib]System.Version + get_CurrentVersion() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 41,41 : 19,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::currentVersion + IL_0006: ret + } // end of method Update::get_CurrentVersion + + .method public hidebysig specialname instance class [System]System.Uri + get_BetaChangelogUrl() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 49,49 : 19,43 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaChangelogUrl + IL_0006: ret + } // end of method Update::get_BetaChangelogUrl + + .method public hidebysig specialname instance void + set_BetaChangelogUrl(class [System]System.Uri 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 50,50 : 19,44 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaChangelogUrl + .line 50,50 : 45,46 '' + IL_0007: ret + } // end of method Update::set_BetaChangelogUrl + + .method public hidebysig specialname instance class [System]System.Uri + get_BetaUpdateUrl() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 55,55 : 19,40 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaUpdateUrl + IL_0006: ret + } // end of method Update::get_BetaUpdateUrl + + .method public hidebysig specialname instance void + set_BetaUpdateUrl(class [System]System.Uri 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 56,56 : 19,41 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaUpdateUrl + .line 56,56 : 42,43 '' + IL_0007: ret + } // end of method Update::set_BetaUpdateUrl + + .method public hidebysig specialname instance class [System]System.Uri + get_BetaVersionUrl() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 61,61 : 19,41 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionUrl + IL_0006: ret + } // end of method Update::get_BetaVersionUrl + + .method public hidebysig specialname instance void + set_BetaVersionUrl(class [System]System.Uri 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 62,62 : 19,42 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionUrl + .line 62,62 : 43,44 '' + IL_0007: ret + } // end of method Update::set_BetaVersionUrl + + .method public hidebysig specialname instance class [System]System.Uri + get_VersionUrl() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 67,67 : 19,37 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionUrl + IL_0006: ret + } // end of method Update::get_VersionUrl + + .method public hidebysig specialname instance class [System]System.Uri + get_UpdateUrl() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 72,72 : 19,36 '' + IL_0000: ldarg.0 + IL_0001: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::updateUrl + IL_0006: ret + } // end of method Update::get_UpdateUrl + + .method public hidebysig specialname instance string + get_BetaVersionTextPrefix() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 80,80 : 19,48 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionTextPrefix + IL_0006: ret + } // end of method Update::get_BetaVersionTextPrefix + + .method public hidebysig specialname instance void + set_BetaVersionTextPrefix(string 'value') cil managed + { + // Code size 8 (0x8) + .maxstack 8 + .line 81,81 : 19,49 '' + IL_0000: ldarg.0 + IL_0001: ldarg.1 + IL_0002: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionTextPrefix + .line 81,81 : 50,51 '' + IL_0007: ret + } // end of method Update::set_BetaVersionTextPrefix + + .method public hidebysig specialname instance string + get_VersionTextPrefix() cil managed + { + // Code size 7 (0x7) + .maxstack 8 + .line 86,86 : 19,44 '' + IL_0000: ldarg.0 + IL_0001: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionTextPrefix + IL_0006: ret + } // end of method Update::get_VersionTextPrefix + + .method public hidebysig specialname rtspecialname + instance void .ctor(class Virtuoso.Miranda.Plugins.MirandaPlugin plugin, + class [System]System.Uri updateUrl, + class [System]System.Uri versionUrl, + string versionTextPrefix) cil managed + { + // Code size 122 (0x7a) + .maxstack 2 + .line 93,93 : 9,101 '' + IL_0000: ldarg.0 + IL_0001: call instance void [mscorlib]System.Object::.ctor() + .line 95,95 : 13,32 '' + IL_0006: ldarg.1 + IL_0007: brtrue.s IL_0014 + + .line 95,95 : 33,75 '' + IL_0009: ldstr "plugin" + IL_000e: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0013: throw + + .line 96,96 : 13,35 '' + IL_0014: ldarg.2 + IL_0015: ldnull + IL_0016: call bool [System]System.Uri::op_Equality(class [System]System.Uri, + class [System]System.Uri) + IL_001b: brfalse.s IL_0028 + + .line 96,96 : 36,81 '' + IL_001d: ldstr "updateUrl" + IL_0022: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_0027: throw + + .line 97,97 : 13,36 '' + IL_0028: ldarg.3 + IL_0029: ldnull + IL_002a: call bool [System]System.Uri::op_Equality(class [System]System.Uri, + class [System]System.Uri) + IL_002f: brfalse.s IL_003c + + .line 97,97 : 37,83 '' + IL_0031: ldstr "versionUrl" + IL_0036: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_003b: throw + + .line 98,98 : 13,43 '' + IL_003c: ldarg.s versionTextPrefix + IL_003e: brtrue.s IL_004b + + .line 98,98 : 44,97 '' + IL_0040: ldstr "versionTextPrefix" + IL_0045: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_004a: throw + + .line 100,100 : 13,43 '' + IL_004b: ldarg.0 + IL_004c: ldarg.1 + IL_004d: callvirt instance string Virtuoso.Miranda.Plugins.MirandaPlugin::get_Name() + IL_0052: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::pluginName + .line 101,101 : 13,50 '' + IL_0057: ldarg.0 + IL_0058: ldarg.1 + IL_0059: callvirt instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.MirandaPlugin::get_Version() + IL_005e: stfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::currentVersion + .line 102,102 : 13,40 '' + IL_0063: ldarg.0 + IL_0064: ldarg.2 + IL_0065: stfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::updateUrl + .line 103,103 : 13,42 '' + IL_006a: ldarg.0 + IL_006b: ldarg.3 + IL_006c: stfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionUrl + .line 104,104 : 13,56 '' + IL_0071: ldarg.0 + IL_0072: ldarg.s versionTextPrefix + IL_0074: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionTextPrefix + .line 105,105 : 9,10 '' + IL_0079: ret + } // end of method Update::.ctor + + .method assembly hidebysig instance void + MarshalToNative([out] valuetype Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE& update) cil managed + { + // Code size 281 (0x119) + .maxstack 3 + .line 109,109 : 13,35 '' + IL_0000: ldarg.1 + IL_0001: initobj Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE + .line 110,110 : 13,58 '' + IL_0007: ldarg.1 + IL_0008: ldtoken Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE + IL_000d: call class [mscorlib]System.Type [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) + IL_0012: call int32 [mscorlib]System.Runtime.InteropServices.Marshal::SizeOf(class [mscorlib]System.Type) + IL_0017: stfld int32 Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::Size + .line 112,112 : 13,47 '' + IL_001c: ldarg.1 + IL_001d: ldarg.0 + IL_001e: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::pluginName + IL_0023: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::ComponentName + .line 113,113 : 13,53 '' + IL_0028: ldarg.1 + IL_0029: ldarg.0 + IL_002a: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::updateUrl + IL_002f: callvirt instance string [mscorlib]System.Object::ToString() + IL_0034: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::UpdateUrl + .line 115,115 : 13,55 '' + IL_0039: ldarg.1 + IL_003a: ldarg.0 + IL_003b: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionUrl + IL_0040: callvirt instance string [mscorlib]System.Object::ToString() + IL_0045: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::VersionUrl + .line 116,116 : 13,54 '' + IL_004a: ldarg.1 + IL_004b: ldarg.0 + IL_004c: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionTextPrefix + IL_0051: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::VersionPrefix + .line 117,117 : 13,67 '' + IL_0056: ldarg.1 + IL_0057: ldarg.0 + IL_0058: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::versionTextPrefix + IL_005d: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0062: stfld int32 Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::VersionPrefixLength + .line 119,119 : 13,57 '' + IL_0067: ldarg.1 + IL_0068: ldarg.0 + IL_0069: ldfld class [mscorlib]System.Version Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::currentVersion + IL_006e: ldc.i4.4 + IL_006f: callvirt instance string [mscorlib]System.Version::ToString(int32) + IL_0074: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::Version + .line 120,120 : 13,58 '' + IL_0079: ldarg.1 + IL_007a: ldarg.1 + IL_007b: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::Version + IL_0080: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0085: stfld int32 Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::VersionLength + .line 122,122 : 13,101 '' + IL_008a: ldarg.1 + IL_008b: ldarg.0 + IL_008c: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaChangelogUrl + IL_0091: ldnull + IL_0092: call bool [System]System.Uri::op_Inequality(class [System]System.Uri, + class [System]System.Uri) + IL_0097: brtrue.s IL_009c + + IL_0099: ldnull + IL_009a: br.s IL_00a7 + + IL_009c: ldarg.0 + IL_009d: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaChangelogUrl + IL_00a2: callvirt instance string [mscorlib]System.Object::ToString() + IL_00a7: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::BetaChangelogUrl + .line 123,123 : 13,92 '' + IL_00ac: ldarg.1 + IL_00ad: ldarg.0 + IL_00ae: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaUpdateUrl + IL_00b3: ldnull + IL_00b4: call bool [System]System.Uri::op_Inequality(class [System]System.Uri, + class [System]System.Uri) + IL_00b9: brtrue.s IL_00be + + IL_00bb: ldnull + IL_00bc: br.s IL_00c9 + + IL_00be: ldarg.0 + IL_00bf: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaUpdateUrl + IL_00c4: callvirt instance string [mscorlib]System.Object::ToString() + IL_00c9: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::BetaUpdateUrl + .line 124,124 : 13,95 '' + IL_00ce: ldarg.1 + IL_00cf: ldarg.0 + IL_00d0: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionUrl + IL_00d5: ldnull + IL_00d6: call bool [System]System.Uri::op_Inequality(class [System]System.Uri, + class [System]System.Uri) + IL_00db: brtrue.s IL_00e0 + + IL_00dd: ldnull + IL_00de: br.s IL_00eb + + IL_00e0: ldarg.0 + IL_00e1: ldfld class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionUrl + IL_00e6: callvirt instance string [mscorlib]System.Object::ToString() + IL_00eb: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::BetaVersionUrl + .line 125,125 : 13,62 '' + IL_00f0: ldarg.1 + IL_00f1: ldarg.0 + IL_00f2: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionTextPrefix + IL_00f7: stfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::BetaVersionPrefix + .line 126,126 : 13,111 '' + IL_00fc: ldarg.1 + IL_00fd: ldarg.0 + IL_00fe: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionTextPrefix + IL_0103: brtrue.s IL_0108 + + IL_0105: ldc.i4.0 + IL_0106: br.s IL_0113 + + IL_0108: ldarg.0 + IL_0109: ldfld string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::betaVersionTextPrefix + IL_010e: callvirt instance int32 [mscorlib]System.String::get_Length() + IL_0113: stfld int32 Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE::BetaVersionPrefixLength + .line 127,127 : 9,10 '' + IL_0118: ret + } // end of method Update::MarshalToNative + + .property instance string PluginName() + { + .get instance string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_PluginName() + } // end of property Update::PluginName + .property instance class [mscorlib]System.Version + CurrentVersion() + { + .get instance class [mscorlib]System.Version Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_CurrentVersion() + } // end of property Update::CurrentVersion + .property instance class [System]System.Uri + BetaChangelogUrl() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaChangelogUrl() + .set instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaChangelogUrl(class [System]System.Uri) + } // end of property Update::BetaChangelogUrl + .property instance class [System]System.Uri + BetaUpdateUrl() + { + .set instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaUpdateUrl(class [System]System.Uri) + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaUpdateUrl() + } // end of property Update::BetaUpdateUrl + .property instance class [System]System.Uri + BetaVersionUrl() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaVersionUrl() + .set instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaVersionUrl(class [System]System.Uri) + } // end of property Update::BetaVersionUrl + .property instance class [System]System.Uri + VersionUrl() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_VersionUrl() + } // end of property Update::VersionUrl + .property instance class [System]System.Uri + UpdateUrl() + { + .get instance class [System]System.Uri Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_UpdateUrl() + } // end of property Update::UpdateUrl + .property instance string BetaVersionTextPrefix() + { + .get instance string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaVersionTextPrefix() + .set instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaVersionTextPrefix(string) + } // end of property Update::BetaVersionTextPrefix + .property instance string VersionTextPrefix() + { + .get instance string Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_VersionTextPrefix() + } // end of property Update::VersionTextPrefix +} // end of class Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update + +.class public abstract auto ansi sealed beforefieldinit Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin + extends [mscorlib]System.Object +{ + .field private static literal string MS_UPDATE_REGISTER = "Update/Register" + .method public hidebysig static bool IsUpdateSupported() cil managed + { + // Code size 11 (0xb) + .maxstack 8 + .line 34,34 : 13,69 'c:\\Users\\netz\\Desktop\\Miranda\\hyphen-read-only\\tags\\v0.8.3000.909\\Plugins\\ThirdParty\\Updater\\UpdaterPlugin.cs' + IL_0000: ldstr "Update/Register" + IL_0005: call bool Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::ServiceExists(string) + IL_000a: ret + } // end of method UpdaterPlugin::IsUpdateSupported + + .method public hidebysig static void RegisterForUpdate(class Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update update) cil managed + { + // Code size 137 (0x89) + .maxstack 4 + .locals init ([0] valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 updateHandle, + [1] valuetype Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE updateNative, + [2] int32 result, + [3] class [mscorlib]System.Exception e) + .line 39,39 : 13,32 '' + IL_0000: ldarg.0 + IL_0001: brtrue.s IL_000e + + .line 39,39 : 33,75 '' + IL_0003: ldstr "update" + IL_0008: newobj instance void [mscorlib]System.ArgumentNullException::.ctor(string) + IL_000d: throw + + .line 40,40 : 13,38 '' + IL_000e: call bool Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin::IsUpdateSupported() + IL_0013: brtrue.s IL_001b + + .line 40,40 : 39,73 '' + IL_0015: newobj instance void [mscorlib]System.NotSupportedException::.ctor() + IL_001a: throw + + .line 42,42 : 13,94 '' + IL_001b: ldsfld valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Empty + IL_0020: stloc.0 + .line 47,47 : 17,58 '' + .try + { + .try + { + IL_0021: ldarg.0 + IL_0022: ldloca.s updateNative + IL_0024: callvirt instance void Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::MarshalToNative(valuetype Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE&) + .line 49,49 : 17,84 '' + IL_0029: ldloca.s updateNative + IL_002b: newobj instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor(!0&) + IL_0030: stloc.0 + .line 50,50 : 17,120 '' + IL_0031: call class Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current() + IL_0036: ldstr "Update/Register" + IL_003b: ldsfld native uint [mscorlib]System.UIntPtr::Zero + IL_0040: ldloca.s updateHandle + IL_0042: call instance native int valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr() + IL_0047: callvirt instance int32 Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService(string, + native uint, + native int) + IL_004c: stloc.2 + .line 52,52 : 17,33 '' + IL_004d: ldloc.2 + IL_004e: brfalse.s IL_006c + + .line 53,53 : 21,172 '' + IL_0050: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure() + IL_0055: ldstr "Update/Register" + IL_005a: ldloca.s result + IL_005c: call instance string [mscorlib]System.Int32::ToString() + IL_0061: call string [mscorlib]System.String::Format(string, + object, + object) + IL_0066: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string) + IL_006b: throw + + IL_006c: leave.s IL_007e + + .line 55,55 : 13,37 '' + } // end .try + catch Virtuoso.Miranda.Plugins.Native.MirandaException + { + IL_006e: pop + .line 57,57 : 17,23 '' + IL_006f: rethrow + .line 59,59 : 13,32 '' + } // end handler + catch [mscorlib]System.Exception + { + IL_0071: stloc.3 + .line 61,61 : 17,107 '' + IL_0072: call string Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService() + IL_0077: ldloc.3 + IL_0078: newobj instance void Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor(string, + class [mscorlib]System.Exception) + IL_007d: throw + + } // end handler + IL_007e: leave.s IL_0088 + + .line 65,65 : 17,37 '' + } // end .try + finally + { + IL_0080: ldloca.s updateHandle + IL_0082: call instance void valuetype Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free() + IL_0087: endfinally + .line 67,67 : 9,10 '' + } // end handler + IL_0088: ret + } // end of method UpdaterPlugin::RegisterForUpdate + +} // end of class Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin + +.class private auto ansi '{FD0927AC-A943-4855-87EE-E6F69D6BD04C}' + extends [mscorlib]System.Object +{ + .custom instance void [mscorlib]System.Runtime.CompilerServices.CompilerGeneratedAttribute::.ctor() = ( 01 00 00 00 ) + .class explicit ansi sealed nested private '__StaticArrayInitTypeSize=10' + extends [mscorlib]System.ValueType + { + .pack 1 + .size 10 + } // end of class '__StaticArrayInitTypeSize=10' + + .field static assembly valuetype '{FD0927AC-A943-4855-87EE-E6F69D6BD04C}'/'__StaticArrayInitTypeSize=10' '$$method0x6000651-1' at I_0000EF98 +} // end of class '{FD0927AC-A943-4855-87EE-E6F69D6BD04C}' + + +// ============================================================= + +.data cil I_0000EF98 = bytearray ( + 0D 4A 40 00 0B 80 20 2C 71 2A) // .J@... ,q* +// *********** DISASSEMBLY COMPLETE *********************** +// Warnung: Win32-Ressourcendatei "IL\Plugins.res" wurde erstellt. diff --git a/Hyphen/Plugins/bin/TabStripControlLibrary.dll b/Hyphen/Plugins/bin/TabStripControlLibrary.dll new file mode 100644 index 0000000..92448f0 Binary files /dev/null and b/Hyphen/Plugins/bin/TabStripControlLibrary.dll differ diff --git a/Hyphen/Plugins/bin/TabStripControlLibrary.pdb b/Hyphen/Plugins/bin/TabStripControlLibrary.pdb new file mode 100644 index 0000000..b1ee635 Binary files /dev/null and b/Hyphen/Plugins/bin/TabStripControlLibrary.pdb differ diff --git a/Hyphen/Plugins/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/Hyphen/Plugins/obj/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000..5a0a41a Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/Hyphen/Plugins/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Hyphen/Plugins/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..631280a Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/Hyphen/Plugins/obj/Debug/Hyphen.dll b/Hyphen/Plugins/obj/Debug/Hyphen.dll new file mode 100644 index 0000000..52b6e34 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Hyphen.dll differ diff --git a/Hyphen/Plugins/obj/Debug/Hyphen.pdb b/Hyphen/Plugins/obj/Debug/Hyphen.pdb new file mode 100644 index 0000000..22df7a0 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Hyphen.pdb differ diff --git a/Hyphen/Plugins/obj/Debug/Plugins.csproj.FileListAbsolute.txt b/Hyphen/Plugins/obj/Debug/Plugins.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..70d4a8e --- /dev/null +++ b/Hyphen/Plugins/obj/Debug/Plugins.csproj.FileListAbsolute.txt @@ -0,0 +1,23 @@ +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\bin\Hyphen.xml +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\bin\Hyphen.dll +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\bin\Hyphen.pdb +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\bin\TabStripControlLibrary.dll +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\bin\TabStripControlLibrary.pdb +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Resources.TextResources.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Resources.VisualResources.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Virtuoso.Miranda.Plugins.Properties.Resources.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Plugins.csproj.GenerateResource.Cache +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Hyphen.dll +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Debug\Hyphen.pdb diff --git a/Hyphen/Plugins/obj/Debug/Plugins.csproj.GenerateResource.Cache b/Hyphen/Plugins/obj/Debug/Plugins.csproj.GenerateResource.Cache new file mode 100644 index 0000000..712f741 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Plugins.csproj.GenerateResource.Cache differ diff --git a/Hyphen/Plugins/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll b/Hyphen/Plugins/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll new file mode 100644 index 0000000..5c1febe Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll differ diff --git a/Hyphen/Plugins/obj/Debug/TempPE/Resources.TextResources.Designer.cs.dll b/Hyphen/Plugins/obj/Debug/TempPE/Resources.TextResources.Designer.cs.dll new file mode 100644 index 0000000..5511bfe Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/TempPE/Resources.TextResources.Designer.cs.dll differ diff --git a/Hyphen/Plugins/obj/Debug/TempPE/Resources.VisualResources.Designer.cs.dll b/Hyphen/Plugins/obj/Debug/TempPE/Resources.VisualResources.Designer.cs.dll new file mode 100644 index 0000000..854e254 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/TempPE/Resources.VisualResources.Designer.cs.dll differ diff --git a/Hyphen/Plugins/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/Hyphen/Plugins/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/Hyphen/Plugins/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/Hyphen/Plugins/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs new file mode 100644 index 0000000..e69de29 diff --git a/Hyphen/Plugins/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/Hyphen/Plugins/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources new file mode 100644 index 0000000..51278b3 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources new file mode 100644 index 0000000..1558aac Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources new file mode 100644 index 0000000..96cef11 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources new file mode 100644 index 0000000..b035c7c Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources new file mode 100644 index 0000000..d680403 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources new file mode 100644 index 0000000..49ec6f6 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources new file mode 100644 index 0000000..0474222 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources new file mode 100644 index 0000000..9940e91 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Properties.Resources.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Properties.Resources.resources new file mode 100644 index 0000000..a784a01 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Properties.Resources.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Resources.TextResources.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Resources.TextResources.resources new file mode 100644 index 0000000..8b2cd21 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Resources.TextResources.resources differ diff --git a/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Resources.VisualResources.resources b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Resources.VisualResources.resources new file mode 100644 index 0000000..2ed4022 Binary files /dev/null and b/Hyphen/Plugins/obj/Debug/Virtuoso.Miranda.Plugins.Resources.VisualResources.resources differ diff --git a/Hyphen/Plugins/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache b/Hyphen/Plugins/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..d3a6b7a Binary files /dev/null and b/Hyphen/Plugins/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/Hyphen/Plugins/obj/Release/Hyphen.dll b/Hyphen/Plugins/obj/Release/Hyphen.dll new file mode 100644 index 0000000..550a6bd Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Hyphen.dll differ diff --git a/Hyphen/Plugins/obj/Release/Hyphen.pdb b/Hyphen/Plugins/obj/Release/Hyphen.pdb new file mode 100644 index 0000000..d91639f Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Hyphen.pdb differ diff --git a/Hyphen/Plugins/obj/Release/Plugins.csproj.FileListAbsolute.txt b/Hyphen/Plugins/obj/Release/Plugins.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..588b964 --- /dev/null +++ b/Hyphen/Plugins/obj/Release/Plugins.csproj.FileListAbsolute.txt @@ -0,0 +1,23 @@ +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\bin\Hyphen.XML +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\bin\Hyphen.dll +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\bin\Hyphen.pdb +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\bin\TabStripControlLibrary.dll +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\bin\TabStripControlLibrary.pdb +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Resources.TextResources.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Resources.VisualResources.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Virtuoso.Miranda.Plugins.Properties.Resources.resources +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Plugins.csproj.GenerateResource.Cache +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Hyphen.dll +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Plugins\obj\Release\Hyphen.pdb diff --git a/Hyphen/Plugins/obj/Release/Plugins.csproj.GenerateResource.Cache b/Hyphen/Plugins/obj/Release/Plugins.csproj.GenerateResource.Cache new file mode 100644 index 0000000..712f741 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Plugins.csproj.GenerateResource.Cache differ diff --git a/Hyphen/Plugins/obj/Release/TempPE/Properties.Resources.Designer.cs.dll b/Hyphen/Plugins/obj/Release/TempPE/Properties.Resources.Designer.cs.dll new file mode 100644 index 0000000..b72f09f Binary files /dev/null and b/Hyphen/Plugins/obj/Release/TempPE/Properties.Resources.Designer.cs.dll differ diff --git a/Hyphen/Plugins/obj/Release/TempPE/Resources.TextResources.Designer.cs.dll b/Hyphen/Plugins/obj/Release/TempPE/Resources.TextResources.Designer.cs.dll new file mode 100644 index 0000000..e095270 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/TempPE/Resources.TextResources.Designer.cs.dll differ diff --git a/Hyphen/Plugins/obj/Release/TempPE/Resources.VisualResources.Designer.cs.dll b/Hyphen/Plugins/obj/Release/TempPE/Resources.VisualResources.Designer.cs.dll new file mode 100644 index 0000000..be5a855 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/TempPE/Resources.VisualResources.Designer.cs.dll differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources new file mode 100644 index 0000000..51278b3 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Hyphen.Configuration.Controls.AboutContent.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources new file mode 100644 index 0000000..1558aac Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources new file mode 100644 index 0000000..96cef11 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources new file mode 100644 index 0000000..06c24d0 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources new file mode 100644 index 0000000..b035c7c Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources new file mode 100644 index 0000000..d680403 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources new file mode 100644 index 0000000..49ec6f6 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.ErrorDialog.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources new file mode 100644 index 0000000..0474222 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources new file mode 100644 index 0000000..9940e91 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Forms.InformationDialog.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Properties.Resources.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Properties.Resources.resources new file mode 100644 index 0000000..a784a01 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Properties.Resources.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Resources.TextResources.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Resources.TextResources.resources new file mode 100644 index 0000000..8b2cd21 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Resources.TextResources.resources differ diff --git a/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Resources.VisualResources.resources b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Resources.VisualResources.resources new file mode 100644 index 0000000..2ed4022 Binary files /dev/null and b/Hyphen/Plugins/obj/Release/Virtuoso.Miranda.Plugins.Resources.VisualResources.resources differ diff --git a/Hyphen/Thirdparty/TabStripControlLibrary.dll b/Hyphen/Thirdparty/TabStripControlLibrary.dll new file mode 100644 index 0000000..92448f0 Binary files /dev/null and b/Hyphen/Thirdparty/TabStripControlLibrary.dll differ diff --git a/Hyphen/Thirdparty/TabStripControlLibrary.pdb b/Hyphen/Thirdparty/TabStripControlLibrary.pdb new file mode 100644 index 0000000..b1ee635 Binary files /dev/null and b/Hyphen/Thirdparty/TabStripControlLibrary.pdb differ diff --git a/Hyphen/Virtuoso.Hyphen.Mini/Global.cs b/Hyphen/Virtuoso.Hyphen.Mini/Global.cs new file mode 100644 index 0000000..02b4c45 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen.Mini/Global.cs @@ -0,0 +1,76 @@ +using System; +using System.Runtime.CompilerServices; +using Virtuoso.Hyphen.Mini; + +namespace Virtuoso.Hyphen.Mini +{ + public class dll + { + [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.Synchronized)] + private static void Connect(bool ex) + { + if (Connection == null) + { + Connection = new Module(ex); + } + } + public static IntPtr DatabasePluginInfo(IntPtr pReserved) + { + return Connection.ExecuteCustomApiExport("DatabasePluginInfo", NewVector(pReserved)); + } + [MethodImpl(MethodImplOptions.NoInlining)] + private static IntPtr MirandaPluginInfo(uint version) + { + return Connection.MirandaPluginInfo(version); + } + public static IntPtr MirandaPluginInfoExThunk(uint version) + { + try + { + Connect(true); + } + catch (Exception) + { + return IntPtr.Zero; + } + return MirandaPluginInfo(version); + } + public static IntPtr MirandaPluginInfoThunk(uint version) + { + try + { + Connect(false); + } + catch (Exception) + { + return IntPtr.Zero; + } + return MirandaPluginInfo(version); + } + public static IntPtr MirandaPluginInterfaces() + { + return Connection.MirandaPluginInterfaces(); + } + public static int Unload() + { + return Connection.Unload(); + } + public static int CListInitialise(IntPtr pPluginLink) + { + return Load(pPluginLink); + } + public static int Load(IntPtr pPluginLink) + { + return Connection.Load(pPluginLink); + } + private static Module Connection; + internal static object[] NewVector(object A_0) + { + return new object[] { A_0 }; + } + } +} + + + + diff --git a/Hyphen/Virtuoso.Hyphen.Mini/Virtuoso.Hyphen.Mini.csproj b/Hyphen/Virtuoso.Hyphen.Mini/Virtuoso.Hyphen.Mini.csproj new file mode 100644 index 0000000..2d0ad80 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen.Mini/Virtuoso.Hyphen.Mini.csproj @@ -0,0 +1,43 @@ + + + + local + 7.10.377 + 2.0 + {0CAA5EA9-E303-452F-A469-DC53557A7114} + Debug + Virtuoso.Hyphen.Mini + Library + v4.5 + + + + x86 + true + full + false + bin\Debug\ + TRACE;DEBUG;a + prompt + 4 + false + + + x86 + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + + + ..\..\..\..\Plugins\Hyphen.dll + + + + + \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen.Mini/Virtuoso.Hyphen.Mini.v11.suo b/Hyphen/Virtuoso.Hyphen.Mini/Virtuoso.Hyphen.Mini.v11.suo new file mode 100644 index 0000000..a98f949 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen.Mini/Virtuoso.Hyphen.Mini.v11.suo differ diff --git a/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..902d475 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs new file mode 100644 index 0000000..e69de29 diff --git a/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs new file mode 100644 index 0000000..e69de29 diff --git a/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs new file mode 100644 index 0000000..e69de29 diff --git a/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/Virtuoso.Hyphen.Mini.csproj.FileListAbsolute.txt b/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/Virtuoso.Hyphen.Mini.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..a9514b7 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/Virtuoso.Hyphen.Mini.csproj.FileListAbsolute.txt @@ -0,0 +1 @@ +C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Virtuoso.Hyphen.Mini\obj\x86\Debug\Virtuoso.Hyphen.Mini.csprojResolveAssemblyReference.cache diff --git a/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/build.force b/Hyphen/Virtuoso.Hyphen.Mini/obj/x86/Debug/build.force new file mode 100644 index 0000000..e69de29 diff --git a/Hyphen/Virtuoso.Hyphen/Debug/Virtuoso.Hyphen.log b/Hyphen/Virtuoso.Hyphen/Debug/Virtuoso.Hyphen.log new file mode 100644 index 0000000..9281118 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Debug/Virtuoso.Hyphen.log @@ -0,0 +1,2299 @@ +Der Buildvorgang wurde am 11.03.2013 03:19:54 gestartet. + 1>Projekt "C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Virtuoso.Hyphen\Virtuoso.Hyphen.vcxproj" auf Knoten "2", Rebuild Ziel(e). + 1>Rebuild: + cd bin\Debug + del *.dll + del *.pdb + C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Virtuoso.Hyphen\bin\Debug\*.dll konnte nicht gefunden werden + C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Virtuoso.Hyphen\bin\Debug\*.pdb konnte nicht gefunden werden + if not exist "bin\Debug" mkdir "bin\Debug" + if not exist ".\MirandaOut\Debug\Plugins\" mkdir ".\MirandaOut\Debug\Plugins\" + + echo === Copying support files... === + copy /Y ..\Thirdparty\*.* bin\Debug\*.* + + echo === Coyping Docs === + copy /Y ..\Plugins\bin\*.xml bin\Debug\*.* + + echo === Assembling Hyphen... === + C:\Windows\Microsoft.NET\Framework\v2.0.50727\ilasm.exe LoaderStub.il ..\Plugins\bin\IL\Plugins.il /res:..\Plugins\bin\IL\Plugins.res /dll /pdb /key:..\Plugins\Virtuoso.Hyphen.snk /output:"bin\Debug\Hyphen.dll" + copy /Y "bin\Debug\*.*" ".\MirandaOut\Debug\Plugins\*.*" + + echo === Deploying configuration... === + copy /Y ..\Plugins\Resources\miranda32.exe.config ".\MirandaOut\Debug\Plugins\..\*.*" + + echo === Deploying test plugins... === + if not exist ".\MirandaOut\Debug\Plugins\managed" mkdir ".\MirandaOut\Debug\Plugins\managed" + if exist PluginsToTest\*.dll copy /Y PluginsToTest\*.* ".\MirandaOut\Debug\Plugins\managed\*.*" + === Copying support files... === + ..\Thirdparty\TabStripControlLibrary.dll + ..\Thirdparty\TabStripControlLibrary.pdb + 2 Datei(en) kopiert. + === Coyping Docs === + ..\Plugins\bin\Hyphen.xml + 1 Datei(en) kopiert. + === Assembling Hyphen... === + + Microsoft (R) .NET Framework IL Assembler. Version 2.0.50727.6387 + Copyright (c) Microsoft Corporation. All rights reserved. + Assembling 'LoaderStub.il' to DLL --> 'bin\Debug\Hyphen.dll' + Source file is ANSI + + Assembled global method LoaderInit + Assembled global method MirandaPluginInfo + Assembled global method MirandaPluginInfoEx + Assembled global method MirandaPluginInterfaces + Assembled global method Load + Assembled global method Unload + + Assembling '..\Plugins\bin\IL\Plugins.il' to DLL --> 'bin\Debug\Hyphen.dll' + Source file is ANSI + + Assembled method Virtuoso.Miranda.Plugins.ExposingPluginAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.ExposingPluginAttribute::get_PluginType + Assembled method Virtuoso.Hyphen.Mini.Module°AuxiliaryPluginManager::.ctor + Assembled method Virtuoso.Hyphen.Mini.Module°AuxiliaryPluginManager::FindAndLoadPlugins + Assembled method Virtuoso.Hyphen.Mini.Module°AuxiliaryPluginManager::GetInstance + Assembled method Virtuoso.Hyphen.Mini.Module°AuxiliaryPluginManager::FinishInitialization + Assembled method Virtuoso.Hyphen.Mini.Module°<>c__DisplayClass3`1::.ctor + Assembled method Virtuoso.Hyphen.Mini.Module°<>c__DisplayClass3`1::b__2 + Assembled method Virtuoso.Hyphen.Mini.Module::.ctor + Assembled method Virtuoso.Hyphen.Mini.Module::Finalize + Assembled method Virtuoso.Hyphen.Mini.Module::MirandaPluginInfo + Assembled method Virtuoso.Hyphen.Mini.Module::MirandaPluginInterfaces + Assembled method Virtuoso.Hyphen.Mini.Module::Load + Assembled method Virtuoso.Hyphen.Mini.Module::ModulesLoadedHandler + Assembled method Virtuoso.Hyphen.Mini.Module::Unload + Assembled method Virtuoso.Hyphen.Mini.Module::CanUnload + Assembled method Virtuoso.Hyphen.Mini.Module::PublishPluginInformation + Assembled method Virtuoso.Hyphen.Mini.Module::ProbeCustomApiExports + Assembled method Virtuoso.Hyphen.Mini.Module::LoadActualPlugin + Assembled method Virtuoso.Hyphen.Mini.Module::GetHashCode + Assembled method Virtuoso.Hyphen.Mini.Module::Equals + Assembled method Virtuoso.Hyphen.Mini.Module::get_StandalonePlugin + Assembled method Virtuoso.Hyphen.Mini.Module::get_IsPostV07Build20Api + Assembled method Virtuoso.Hyphen.Mini.Module::get_PluginLoaded + Assembled method Virtuoso.Hyphen.Mini.Module::get_PluginInitialized + Assembled method Virtuoso.Hyphen.Mini.Module::ExecuteCustomApiExport + Assembled method Virtuoso.Hyphen.Mini.Module::b__0 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject::InitializeLifetimeService + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker::get_Context + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::.ctor + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::.ctor + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::add_PrimaryPluginManagerInitialized + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::remove_PrimaryPluginManagerInitialized + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::add_FusionCompleted + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::remove_FusionCompleted + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::add_PluginStateChange + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::remove_PluginStateChange + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::FirePrimaryPluginManagerInitializedEvent + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::RaiseFusionCompletedEvent + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::FirePluginStateChangeEvent + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::get_Initialized + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::get_PluginDescriptors + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::get_LivingDomain + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::get_Plugins + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::get_FusionContext + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::GetExposedPlugins + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::DeclareInitialized + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::AccountPluginDescriptor + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::InstantiatePlugin + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::InstantiatePlugin + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::RegisterMenuItems + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::UnregisterMenuItems + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::HookPlugin + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::DoContextCallback + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::SetPluginState + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::LoadPlugin + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::EnablePlugin + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::DisablePlugin + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::IsEnabled + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::DestroyEvents + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::DestroyServices + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::UnhookEvents + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::Shutdown + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::LoadPlugin + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::HandleException + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::b__5 + Assembled method Virtuoso.Miranda.Plugins.PluginManagerBase::.cctor + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::get_ExportName + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute::.ctor + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::get_ExportName + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::get_Callback + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::.ctor + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor::Execute + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::.ctor + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::get_Singleton + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::get_Name + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::get_Author + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::get_Description + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::get_HomePage + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::get_Version + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::get_HasOptions + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::HandleException + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::Virtuoso.Miranda.Plugins.IExceptionReporter.ReportException + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen::.cctor + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::.ctor + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItems + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::get_Initialized + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::get_MenuItemsCollection + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::get_Descriptor + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::set_Descriptor + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::get_UniqueName + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::GetHashCode + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::Equals + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::ToString + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::GetExceptionHandler + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::AfterMenuItemsPopulationInternal + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::AfterMenuItemsPopulation + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::BeforeMirandaShutdownInternal + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::BeforeMirandaShutdown + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::BeforePluginDisableInternal + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::BeforePluginDisable + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginEnableInternal + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginEnable + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginInitializationInternal + Assembled method Virtuoso.Miranda.Plugins.MirandaPlugin::AfterPluginInitialization + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::.ctor + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::get_Module + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::set_Module + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::get_Flags + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::get_CustomApiHandlers + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::get_HasCustomPluginInterfaces + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::get_HasCustomPluginInfo + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::BeforeMirandaShutdownTriggerService + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::MirandaPluginInfo + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::MirandaPluginInterfaces + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::AfterModuleInitializationInternal + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::AfterModuleInitialization + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::LoadInternal + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::Load + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::UnloadInternal + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::Unload + Assembled method Virtuoso.Hyphen.Mini.StandalonePlugin::.cctor + Assembled method Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::.ctor + Assembled method Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::Finalize + Assembled method Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::DatabasePluginInfoThunk + Assembled method Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::InitPreThunk + Assembled method Virtuoso.Hyphen.Mini.Custom.DatabaseDriver::UnloadPreThunk + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::.ctor + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::GetCapabilityThunk + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::GetFriendlyNameThunk + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::InitThunk + Assembled method Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver::UnloadThunk + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_Options + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::set_Options + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_RequiredVersion + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::get_MinimalMirandaVersion + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::SupportsMirandaVersion + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::SupportsMirandaVersion + Assembled method Virtuoso.Miranda.Plugins.LoaderOptionsAttribute::Get + Assembled method Virtuoso.Hyphen.Mini.ModuleManager::.ctor + Assembled method Virtuoso.Hyphen.Mini.ModuleManager::get_Singleton + Assembled method Virtuoso.Hyphen.Mini.ModuleManager::get_RegisteredModules + Assembled method Virtuoso.Hyphen.Mini.ModuleManager::get_HasModules + Assembled method Virtuoso.Hyphen.Mini.ModuleManager::RegisterModule + Assembled method Virtuoso.Hyphen.Mini.ModuleManager::UnregisterModule + Assembled method Virtuoso.Hyphen.Mini.ModuleManager::.cctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::RequiresInterception + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::get_Item + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::set_Item + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Register + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager::Unregister + Assembled method Virtuoso.Miranda.Plugins.AssemblyProbe::.ctor + Assembled method Virtuoso.Miranda.Plugins.DefaultAssemblyProbe::.ctor + Assembled method Virtuoso.Miranda.Plugins.DefaultAssemblyProbe::FindAssemblies + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::get_MirandaHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject::set_MirandaHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::get_Owner + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::get_EventName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::FireEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::FireEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHandle::SetDefaultSubscriber + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::GetManagedSubdirectoryRelativePath + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaStringEncoding + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaStringEncoding + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaFolderPath + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaPluginsFolderPath + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_ManagedPluginsFolderPath + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaVersion + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::set_MirandaVersion + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_HyphenVersion + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::get_MirandaBootIniPath + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment::.cctor + Assembled method Virtuoso.Miranda.Plugins.Log::get_TraceSwitch + Assembled method Virtuoso.Miranda.Plugins.Log::.cctor + Assembled method Virtuoso.Miranda.Plugins.Log::DebuggerWrite + Assembled method Virtuoso.Miranda.Plugins.Log::Warning + Assembled method Virtuoso.Hyphen.FusionContext::.ctor + Assembled method Virtuoso.Hyphen.FusionContext::.ctor + Assembled method Virtuoso.Hyphen.FusionContext::CheckEmpty + Assembled method Virtuoso.Hyphen.FusionContext::get_IsInvalid + Assembled method Virtuoso.Hyphen.FusionContext::get_Empty + Assembled method Virtuoso.Hyphen.FusionContext::get_AssemblyProbe + Assembled method Virtuoso.Hyphen.FusionContext::get_NativePluginLink + Assembled method Virtuoso.Hyphen.FusionContext::get_Loader + Assembled method Virtuoso.Hyphen.Loader::get_HyphenVersion + Assembled method Virtuoso.Hyphen.Loader::get_PluginsLoaded + Assembled method Virtuoso.Hyphen.Loader::get_PluginInfo + Assembled method Virtuoso.Hyphen.Loader::Initialize + Assembled method Virtuoso.Hyphen.Loader::.ctor + Assembled method Virtuoso.Hyphen.Loader::InitializePluginInfo + Assembled method Virtuoso.Hyphen.Loader::PopulatePluginInfo + Assembled method Virtuoso.Hyphen.Loader::GetInstance + Assembled method Virtuoso.Hyphen.Loader::GetInstance + Assembled method Virtuoso.Hyphen.Loader::MirandaPluginInfo + Assembled method Virtuoso.Hyphen.Loader::MirandaPluginInfoEx + Assembled method Virtuoso.Hyphen.Loader::GetDummyPluginInfo + Assembled method Virtuoso.Hyphen.Loader::MirandaPluginInfoShared + Assembled method Virtuoso.Hyphen.Loader::SupportsMirandaVersion + Assembled method Virtuoso.Hyphen.Loader::SupportsMirandaVersion + Assembled method Virtuoso.Hyphen.Loader::MirandaPluginInterfaces + Assembled method Virtuoso.Hyphen.Loader::ModuleInducedLoad + Assembled method Virtuoso.Hyphen.Loader::Load + Assembled method Virtuoso.Hyphen.Loader::InitializeRuntimeContext + Assembled method Virtuoso.Hyphen.Loader::HookRuntimeEvents + Assembled method Virtuoso.Hyphen.Loader::CompleteInitialization + Assembled method Virtuoso.Hyphen.Loader::InitializeUpdater + Assembled method Virtuoso.Hyphen.Loader::InitializePluginsFolder + Assembled method Virtuoso.Hyphen.Loader::InitializeMenu + Assembled method Virtuoso.Hyphen.Loader::InitializeManagedMenu + Assembled method Virtuoso.Hyphen.Loader::Unload + Assembled method Virtuoso.Hyphen.Loader::PerformFullUnload + Assembled method Virtuoso.Hyphen.Loader::DisposePluginsWatcher + Assembled method Virtuoso.Hyphen.Loader::DisposePluginTasksMenu + Assembled method Virtuoso.Hyphen.Loader::UnloadOnShutdownService + Assembled method Virtuoso.Hyphen.Loader::BroadcastBeforeMirandaExitEvent + Assembled method Virtuoso.Hyphen.Loader::LoadUnloadPluginsService + Assembled method Virtuoso.Hyphen.Loader::ReloadPlugins + Assembled method Virtuoso.Hyphen.Loader::LoadPlugins + Assembled method Virtuoso.Hyphen.Loader::StartFusion + Assembled method Virtuoso.Hyphen.Loader::InitializeSandbox + Assembled method Virtuoso.Hyphen.Loader::InitializeFusionContext + Assembled method Virtuoso.Hyphen.Loader::LoadPluginManager + Assembled method Virtuoso.Hyphen.Loader::InitializePluginTasksMenu + Assembled method Virtuoso.Hyphen.Loader::InitializeUISyncContext + Assembled method Virtuoso.Hyphen.Loader::PromoteManagedMenuIntoAppDomain + Assembled method Virtuoso.Hyphen.Loader::ClearStringResolverCache + Assembled method Virtuoso.Hyphen.Loader::ShowManagedMenuService + Assembled method Virtuoso.Hyphen.Loader::ConfigureModulesService + Assembled method Virtuoso.Hyphen.Loader::ManagePluginsService + Assembled method Virtuoso.Hyphen.Loader::ManagePlugins + Assembled method Virtuoso.Hyphen.Loader::PluginsWatcherHandler + Assembled method Virtuoso.Hyphen.Loader::UnloadPlugins + Assembled method Virtuoso.Hyphen.Loader::UnloadPlugins + Assembled method Virtuoso.Hyphen.Loader::TrapUnhandledException + Assembled method Virtuoso.Hyphen.Loader::TrapUnhandledException + Assembled method Virtuoso.Hyphen.Loader::VerifyFxConfiguration + Assembled method Virtuoso.Hyphen.Loader::EnsureSingleInstance + Assembled method Virtuoso.Hyphen.Loader::GetSingletonMutexName + Assembled method Virtuoso.Hyphen.Loader::DoContextCallback + Assembled method Virtuoso.Hyphen.Loader::VerifyDefaultDomain + Assembled method Virtuoso.Hyphen.Loader::b__0 + Assembled method Virtuoso.Hyphen.Loader::b__1 + Assembled method Virtuoso.Hyphen.Loader::b__3 + Assembled method Virtuoso.Hyphen.Loader::.cctor + Assembled method Virtuoso.Hyphen.Native.NativePluginLink::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::.cctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::InitializeLifetimeService + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ShowUnderCursor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::RegisterInterceptors + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::UnregisterInterceptors + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItemServiceInterceptor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::AddMainMenuItem + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItemInterceptor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu::ModifyMenuItem + Assembled method Virtuoso.Miranda.Plugins.Native.CCSDATA::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.CCSDATA::Free + Assembled method Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::ExtractValue + Assembled method Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING::LogUnsupportedValue + Assembled method Virtuoso.Hyphen.Native.PLUGININFO::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.IconImageCache::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.IconImageCache::get_Singleton + Assembled method Virtuoso.Miranda.Plugins.Native.IconImageCache::GetIcon + Assembled method Virtuoso.Miranda.Plugins.Native.IconImageCache::GetStreamedIcon + Assembled method Virtuoso.Miranda.Plugins.Native.IconImageCache::ComputeStreamHandle + Assembled method Virtuoso.Miranda.Plugins.Native.IconImageCache::GetIconImage + Assembled method Virtuoso.Miranda.Plugins.Native.IconImageCache::IsCached + Assembled method Virtuoso.Miranda.Plugins.Native.IconImageCache::IsCached + Assembled method Virtuoso.Miranda.Plugins.Native.IconImageCache::Dispose + Assembled method Virtuoso.Miranda.Plugins.Native.IconImageCache::Dispose + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::Finalize + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::CheckLock + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_IntPtr + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle.Free + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::System.IDisposable.Dispose + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::Dispose + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Locked + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Size + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsIntPtr + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_SizeAsUIntPtr + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::get_Reserved + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::set_Reserved + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::GetHashCode + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::Equals + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::Lock + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::Unlock + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::Zero + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBuffer::op_Implicit + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool°<>c__DisplayClass2::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool°<>c__DisplayClass2::b__0 + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool::get_MaximumAvailableBufferSize + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Dispose + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool::Refresh + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool::VerifyPoolConsistency + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool::AcquireBuffer + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool::ReleaseBuffer + Assembled method Virtuoso.Miranda.Plugins.Native.InteropBufferPool::.cctor + Assembled method Virtuoso.Miranda.Plugins.Collections.EventHandleCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Add + Assembled method Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection::Find + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher::InvokeChainCancelable + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::get_SelectedContact + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::get_Transparency + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::set_Transparency + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::get_TransparencyEnabled + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::set_TransparencyEnabled + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::FireInfoTipEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_InfoTipShow + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_InfoTipShow + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_InfoTipHide + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_InfoTipHide + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ProtocolStatusChange + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ProtocolStatusChange + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ContactMenuShowing + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ContactMenuShowing + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::add_ContactDoubleClicked + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::remove_ContactDoubleClicked + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddMenuItem + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ModifyMenuItem + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::ShowBaloonTip + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::SetInfoTipHoverTime + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::GetInfoTipHoverTime + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::EnableContactSelectionTracking + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::HandleContactSelection + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::AddEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::RemoveEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::RemoveEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::b__0 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::b__1 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::b__2 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::b__3 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::b__4 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::b__5 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactList::.cctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_EventName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::set_EventName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_HookName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::get_HookType + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::get_EventData + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::get_Type + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem::.cctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo::get_Name + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo::get_IsExpanded + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::FromHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_PropertyType + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_PropertyValue + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_OwningModule + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_IsSelf + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_MeNeutral + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_Status + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_DisplayName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::get_UniqueID + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSettingAsBlob + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSettingAsBlob + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::WriteSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ReadSettingInternal + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::DeleteSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::DeleteSetting + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetUniqueIDs + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetDisplayNames + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetModuleNamePtr + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetDisplayName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetUniqueID + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetProperty + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::System.Runtime.Serialization.ISerializable.GetObjectData + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::UniqueIdAs + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::ToString + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Equality + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::op_Inequality + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::Equals + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetHashCode + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::CreateContact + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::Delete + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::GetProperty + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::CallContactService + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::CallContactService + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::SendMessage + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::OpenMessageWindow + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::OpenMessageWindow + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::b__0 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::b__1 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo::.cctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__6::System.Collections.Generic.IEnumerable.GetEnumerator + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__6::System.Collections.IEnumerable.GetEnumerator + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__6::MoveNext + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__6::System.Collections.Generic.IEnumerator.get_Current + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__6::System.Collections.IEnumerator.Reset + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__6::System.IDisposable.Dispose + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__6::System.Collections.IEnumerator.get_Current + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__6::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__c::System.Collections.Generic.IEnumerable.GetEnumerator + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__c::System.Collections.IEnumerable.GetEnumerator + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__c::MoveNext + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__c::System.Collections.Generic.IEnumerator.get_Current + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__c::System.Collections.IEnumerator.Reset + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__c::System.IDisposable.Dispose + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__c::System.Collections.IEnumerator.get_Current + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__c::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseDbEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_EventAdded + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_EventAdded + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_EventDeleted + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_EventDeleted + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_BeforeEventAdded + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_BeforeEventAdded + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseContactEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContactInfo + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::RaiseContactSettingEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_ContactAdded + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_ContactAdded + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_ContactDeleted + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_ContactDeleted + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::add_ContactSettingChanged + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::remove_ContactSettingChanged + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::get_ProfileName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::get_ProfilePath + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContactHandles + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContacts + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetContacts + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContact + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::FindContacts + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::AddEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::AddEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::AddEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetEventHandles + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::GetEventHandles + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::b__0 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::b__1 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::b__2 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::b__3 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::b__4 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase::b__5 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::FromHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::FromHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::PrepareDbEventInfo + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::MarshalEventInfo + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventInfo + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::PopulateBlobBuffer + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventTimestamp + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventModule + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetEventData + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_MirandaHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_OwningModule + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Timestamp + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Flags + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Type + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::get_Data + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::FromPointer + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetContactHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo::GetContactHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Text + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Text + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Flags + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Flags + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_PopUpPosition + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_PopUpPosition + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Position + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Position + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_UseEmbeddedIcon + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_UseEmbeddedIcon + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_HasIcon + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HasIcon + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IconID + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IconID + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Service + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Service + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_PopUpMenu + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_OwningModule + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_OwningModule + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_HotKey + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_HotKey + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_StringResolver + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_Tag + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_Tag + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IsContactMenuItem + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsContactMenuItem + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_MirandaHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_MirandaHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::get_IsAdditional + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::set_IsAdditional + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::ResolveStrings + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute::.cctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs::get_ContactInfo + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs::get_EventInfo + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.LanguagePackStringResolver::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.LanguagePackStringResolver::ResolveString + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::get_NewStatus + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::get_Protocol + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatus::ShowAwayMessage + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatus::GetStatusMessage + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_ServiceName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::set_ServiceName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_HookName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::get_HookType + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PresentModal + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::BindAndShow + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PrepareReportLink + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::DumpException + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::PluginErrorDialog_Shown + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::SendReportLBTN_LinkClicked + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::Dispose + Assembled method Virtuoso.Miranda.Plugins.Forms.ErrorDialog::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.FusionException::.ctor + Assembled method Virtuoso.Miranda.Plugins.FusionException::.ctor + Assembled method Virtuoso.Miranda.Plugins.FusionException::.ctor + Assembled method Virtuoso.Miranda.Plugins.FusionException::get_Assembly + Assembled method Virtuoso.Miranda.Plugins.FusionException::get_PluginType + Assembled method Virtuoso.Miranda.Plugins.FusionException::get_InstantiatedPlugin + Assembled method Virtuoso.Miranda.Plugins.FusionException::get_FusionLog + Assembled method Virtuoso.Miranda.Plugins.FusionException::Virtuoso.Miranda.Plugins.IExceptionDumpController.DumpException + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::Finalize + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::add_StatusChanged + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::remove_StatusChanged + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::AckRouter_AckReceived + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::CheckUnknown + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::CallProtocolService + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::GetProtoServiceName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::HasInChain + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::HasInChain + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_UnknownProtocol + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Status + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::set_Status + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Name + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_Type + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_IsUnknown + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::get_NamePtr + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocol::.cctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InitializeCurrent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::InvalidateCurrent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::AssociatePluginManager + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::DetachPluginManager + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::GetMMInterface + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateContextInformation + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateNetworkProtocols + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::PopulateEnvironmentInformation + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginLink + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaMemoryManager + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_PluginManager + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_HasPluginManager + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Current + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Initialized + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ServiceCallInterceptors + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_MirandaDatabase + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_Protocols + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::get_ContactList + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::add_ModulesLoaded + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::remove_ModulesLoaded + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::RaiseModulesLoadedEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::add_IsolatedModePluginsUnloading + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::remove_IsolatedModePluginsUnloading + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::RaiseIsolatedModePluginsUnloadingEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallService + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext::CallServiceUnsafe + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::.cctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::AttachDelegate + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::DetachDelegate + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::HookMirandaEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder::UnhookMirandaEvent + Assembled method Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection::get_Item + Assembled method Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection::Find + Assembled method Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection::get_Item + Assembled method Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection::Find + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_IsTreeFocused + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_IsGroup + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_Item + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_Point + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip::get_Rectangle + Assembled method Virtuoso.Miranda.Plugins.Native.CONTACTINFO::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.DBEVENTINFO::LayoutAnsiUniString + Assembled method Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING::Free + Assembled method Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_OriginalString + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_Encoding + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IntPtr + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::op_Implicit + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::op_Implicit + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_Size + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::get_IsValid + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::Free + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::System.IDisposable.Dispose + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle::.cctor + Assembled method Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary::get_Item + Assembled method Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf + Assembled method Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::FindDescriptorOf + Assembled method Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::ContainsDescriptorOf + Assembled method Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection::ContainsDescriptorOf + Assembled method Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection::FindDescriptorOf + Assembled method Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection::FindDescriptorOf + Assembled method Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection::ContainsDescriptorOf + Assembled method Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection::ContainsDescriptorOf + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToStatus + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToString + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToMirandaVersion + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::FromMirandaVersion + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ToBlob + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::ValueFromVariant + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Translate::.cctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SetUpAndStore + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::SafeCallbackStub + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::GetHashCode + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::Equals + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Name + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_MirandaHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_MirandaHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Callback + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_HookType + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_Owner + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::get_RegisteredManually + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor::set_RegisteredManually + Assembled method Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.MirandaException::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::op_Implicit + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::op_Implicit + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::get_IntPtr + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::MarshalBack + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::GetHashCode + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Equals + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Equals + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::System.IDisposable.Dispose + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::Free + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::FreePressure + Assembled method Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1::.cctor + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::.ctor + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::Initialize + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::SetUp + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodHooksByAttribute + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodHooks + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateTopLevelDeclaredMenuItems + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::PopulateMethodLevelDeclaredMenuItems + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::GetHashCode + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::Equals + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::SetPluginState + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::SetPluginState + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::AssociateHook + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::UpdatePluginState + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::get_PluginState + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::get_Plugin + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsStandalone + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::get_IsConfigurable + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHooks + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::get_ServiceFunctions + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::get_EventHandles + Assembled method Virtuoso.Miranda.Plugins.PluginDescriptor::.cctor + Assembled method Virtuoso.Miranda.Plugins.DefaultPluginManager::.ctor + Assembled method Virtuoso.Miranda.Plugins.DefaultPluginManager::FindAndLoadPlugins + Assembled method Virtuoso.Miranda.Plugins.DefaultPluginManager::LoadAssembly + Assembled method Virtuoso.Miranda.Plugins.DefaultPluginManager::LoadPluginFromType + Assembled method Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::.ctor + Assembled method Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM::LoadIcon + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::.ctor + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ResourceManager + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_Culture + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::set_Culture + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_Balloon_Text_FusionFinished + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_About + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_About_Description + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_General_Description + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Description + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_Config_Management_Plugins_Description + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CallInvalidForUnknownNetworkProtocol + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotDetectMirandaDefaultStringEncoding + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotFinishMarshaling + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotOpenHomePage + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_CannotRegisterBuiltinProtocol + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ConfigurationFailed + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_DuplicitLoaderOptions + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileCallingMirandaService + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_ErrorWhileLoadingPlugins + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_FeatureNotAvailableInDomain + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_AssemblyLoadError + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_CannotLoadStringResolver + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_EventHookingFailed + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ExplicitPluginLoadForbidden + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_InvalidMethodSignature + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_NoValidPluginCtorFound + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionAlreadyExists + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_ServiceFunctionCreationFailed + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnableToLoadMasterType + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnableToSetUpPluginDescriptor + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnauthorizedToInstantiatePlugin + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable1_UnmanagedImageFound + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_ErrorWhileInstantiatingPlugin + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_MirandaServiceReturnedFailure + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable2_RuntimeVersionNotAvailable + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_Formatable3_MenuItemServiceAlreadySet + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_HookNotFound + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_HyphenSxSNotSupported + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InternalErrorOccurred + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InteropBufferNotLocked + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InteropBufferNotUnlocked + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidCrossThreadInteropBufferUnlock + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidFusionContext + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidHandle + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_InvalidValueToTranslate + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_IOErrorOccurred + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaContextNotAvailable + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_MirandaRestartRequired + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_OwnerUnknown + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginAlreadyInitialized + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginManagerAlreadyInitialized + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_PluginNotInitialized + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_SingletonNotInitializedYet + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToLoadConfiguration_StorageError + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToSaveConfiguration_StorageError + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_ExceptionMsg_UnableToUnloadPluginMangerFromCurrentAppDomain + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_HyphenCrashed + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_HyphenLoadFailed + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_LoadUnloadPlugins + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_LoadUnloadPluginsFailure + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_NoOptionsAvailable + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_NoPluginsLoaded + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_PluginReloadComplete + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_RuntimeVersionNotAvailable + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Caption_Warning + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Caption_PluginError + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Caption_PluginUpdated + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_HyphenLoadFailed + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_LoadUnloadPluginsFailure + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable1_Text_ModuleError + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Formatable2_Text_PluginError + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_GenericPluginError + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_HyphenCrashed + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_LoadUnloadPlugins_Unload + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_MirandaRestartRequired + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_NoOptionsAvailable + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_NoPluginsLoaded + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_PluginReloadComplete + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_PluginUpdated + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_MsgBox_Text_UnableToReportError + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Caption_Configure + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Caption_Error + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Formatable1_Text_PluginCrashed + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Empty + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_SelectPluginToDisplayDescr + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Label_Unknown + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ConfigureStandaloneModules + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Hyphen + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_LoadUnloadPlugins + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ManagePlugins + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_No + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_ShowManagedMainMenu + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_Text_Yes + Assembled method Virtuoso.Miranda.Plugins.Resources.TextResources::get_UI_ToolTip_HyphenTrayIcon + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::.ctor + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_ResourceManager + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Culture + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::set_Culture + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Engine + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_16x16_Configuration + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_16x16_Hyphen + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_32x32_Configuration + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Icon_32x32_ConfigurationWarning + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_48x48_Warning + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Configuration + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Information + Assembled method Virtuoso.Miranda.Plugins.Resources.VisualResources::get_Image_64x67_Management + Assembled method Virtuoso.Miranda.Plugins.SynchronizationHelper::VerifyNotNull + Assembled method Virtuoso.Miranda.Plugins.SynchronizationHelper::EndUpdate + Assembled method Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginPluginUpdate + Assembled method Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginDescriptorUpdate + Assembled method Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginMenuItemUpdate + Assembled method Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate + Assembled method Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginCollectionUpdate + Assembled method Virtuoso.Miranda.Plugins.SynchronizationHelper::BeginHandleUpdate + Assembled method Virtuoso.Miranda.Plugins.Collections.ControlCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.ModuleCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.ConfigurationValues::.ctor + Assembled method Virtuoso.Miranda.Plugins.Collections.ConfigurationValues::.ctor + Assembled method Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::get_PluginConfiguration + Assembled method Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::Virtuoso.Miranda.Plugins.IConfigurablePlugin.get_Configuration + Assembled method Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::.ctor + Assembled method Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::AfterPluginInitializationInternal + Assembled method Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::BeforePluginDisableInternal + Assembled method Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::BeforeMirandaShutdownInternal + Assembled method Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::SaveConfiguration + Assembled method Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::ResetConfiguration + Assembled method Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::ReloadConfiguration + Assembled method Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1::get_HasOptions + Assembled method Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Plugin + Assembled method Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::get_Categories + Assembled method Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor::set_Categories + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_IsDirty + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::set_IsDirty + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_ParentItem + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_ConfigurationParameter + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::set_ConfigurationParameter + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::get_HasUI + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnSelected + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnShow + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::OnHide + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::Save + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::Close + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::SetControlDirtyHandler + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::Initialize + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl::CloseDialog + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginManager_PluginStateChange + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::Close + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::OnShow + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::CommitListViewChanges + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PublishPlugins + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::PluginsLVIEW_ItemSelectionChanged + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::DisablePluginBTN_Click + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::EnablePluginBTN_Click + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::HomePageLBTN_LinkClicked + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::Dispose + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent::b__0 + Assembled method Virtuoso.Miranda.Plugins.Forms.RemotableForm::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.RemotableForm::InitializeLifetimeService + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog°<>c__DisplayClass2::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog°<>c__DisplayClass2::b__0 + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog°<>c__DisplayClass5::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog°<>c__DisplayClass5::b__4 + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::OnShown + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::OnClosed + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::Dispose + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::get_Context + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::RegisterDialog + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterDialog + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::CloseDialogs + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::UnregisterAndGetActiveDialogs + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::ExecuteOnSTAThread + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::ExecuteOnSTAThread + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::Application_ThreadException + Assembled method Virtuoso.Miranda.Plugins.Forms.PluginDialog::.cctor + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_VisibleDialogs + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::get_SingletonName + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::set_SingletonName + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::RegisterDialog + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::UnregisterDialog + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::GetSingleton + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::GetSingleton + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::ShowSingleton + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::DoShowSingleton + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::GetDefaultName + Assembled method Virtuoso.Miranda.Plugins.Forms.SingletonDialog::.cctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Present + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::OkBTN_Click + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CancelBTN_Click + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ConfigurationDialog_FormClosing + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::ProcessChanges + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreatePath + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreatePath + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::SetPath + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanNavigateTo + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanNavigateTo + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Populate + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateItems + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateIsolatedPlugins + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateStandalonePlugins + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateHyphenConfiguration + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::PopulateCategoryPanel + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreateButton + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreateCategoryPanel + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CreateAndRegisterEntityPage + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::CanDismissActiveControl + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::RibbonButton_Click + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::Dispose + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Name + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Description + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Image + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_Image + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_Control + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_ControlInitialized + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::get_IsExpertOption + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItem::set_IsExpertOption + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_Image + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Image + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_HeaderText + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderText + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_Color + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_Color + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_ForeColor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_ForeColor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::get_HeaderFont + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::set_HeaderFont + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::Dispose + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::OnSelected + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl::get_HasUI + Assembled method Virtuoso.Miranda.Plugins.Configuration.Category::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Category::get_Description + Assembled method Virtuoso.Miranda.Plugins.Configuration.Category::get_Name + Assembled method Virtuoso.Miranda.Plugins.Configuration.Category::get_Items + Assembled method Virtuoso.Miranda.Plugins.Configuration.CategoryCollection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::get_SectionName + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_SectionName + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::get_Color + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::set_Color + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::Dispose + Assembled method Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Configuration.StorageBase::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.StorageBase::GetFileName + Assembled method Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::OpenRead + Assembled method Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::OpenWrite + Assembled method Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Exists + Assembled method Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage::Dispose + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::Encrypt + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::Decrypt + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::CreateEncryptor + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::CreateDecryptor + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::GetSecretBytes + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableEncryption::.cctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableStorage::GetPath + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableStorage::OpenRead + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableStorage::OpenWrite + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableStorage::Exists + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableStorage::Dispose + Assembled method Virtuoso.Miranda.Plugins.Configuration.PortableStorage::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.WindowsEncryption::Encrypt + Assembled method Virtuoso.Miranda.Plugins.Configuration.WindowsEncryption::Decrypt + Assembled method Virtuoso.Miranda.Plugins.Configuration.WindowsEncryption::.ctor + Assembled method Virtuoso.Miranda.Plugins.DefaultExceptionHandler::get_Plugin + Assembled method Virtuoso.Miranda.Plugins.DefaultExceptionHandler::.ctor + Assembled method Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create + Assembled method Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Create + Assembled method Virtuoso.Miranda.Plugins.DefaultExceptionHandler::HandleException + Assembled method Virtuoso.Miranda.Plugins.DefaultExceptionHandler::Virtuoso.Miranda.Plugins.IExceptionReporter.ReportException + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::add_FilterContact + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::remove_FilterContact + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemTag + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::CreateItemText + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::GetImageIndex + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::LoadContacts + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::InsertContact + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::InsertContact + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::RemoveContact + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView::FindContactItem + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::get_Contact + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::set_Contact + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::get_Skip + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs::set_Skip + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_BannerText + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerText + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_BannerForeColor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerForeColor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_BannerFont + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_BannerFont + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::get_FocusSelect + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::set_FocusSelect + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::OnEnter + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::OnTextAlignChanged + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::OnPaint + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::WndProc + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::DrawTextPrompt + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox::DrawTextPrompt + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_GradientColor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_GradientColor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::get_Rotation + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::set_Rotation + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel::OnPaint + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_PopUpMenu + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_Service + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::get_Handle + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::ManagedMainMenuItem_Click + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem::.cctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu::ManagePluginsITEM_Click + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager::Dispose + Assembled method Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::ShowDialog + Assembled method Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionProgressDialog_Shown + Assembled method Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker_DoWork + Assembled method Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::FusionWorker_RunWorkerCompleted + Assembled method Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::Dispose + Assembled method Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog::b__0 + Assembled method Virtuoso.Miranda.Plugins.Forms.InformationDialog::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.InformationDialog::PresentModal + Assembled method Virtuoso.Miranda.Plugins.Forms.InformationDialog::InformationDialog_Shown + Assembled method Virtuoso.Miranda.Plugins.Forms.InformationDialog::Dispose + Assembled method Virtuoso.Miranda.Plugins.Forms.InformationDialog::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::get_NonLocalizableControls + Assembled method Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::get_TranslateFlags + Assembled method Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::set_TranslateFlags + Assembled method Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::.ctor + Assembled method Virtuoso.Miranda.Plugins.Forms.LocalizableDialog::OnLoad + Assembled method Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::get_FriendlyName + Assembled method Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::set_FriendlyName + Assembled method Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute::GetFriendlyNames + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::add_MessageSending + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::remove_MessageSending + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::add_MessageSent + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::remove_MessageSent + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::.ctor + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::InitializeQueueThread + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Finalize + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Suspended + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_WaitHandle + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Queue + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_Enabled + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueHasItems + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_ClearQueueWhenDisabled + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::ProcessQueue + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::DequeueAndSendMessage + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::SendMessage + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueItemProcessedWaitTime + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::get_QueueProcessedWaitTime + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::SuspendQueue + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::ResumeQueue + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::EnqueueMessage + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::SetState + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::RaiseMessageForwardingEvent + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::RaiseMessageForwardedEvent + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Wait + Assembled method Virtuoso.Miranda.Plugins.Helpers.MessageQueue::Wait + Assembled method Virtuoso.Miranda.Plugins.Helpers.Utilities::GetTimestamp + Assembled method Virtuoso.Miranda.Plugins.Helpers.Utilities::GetTimestamp + Assembled method Virtuoso.Hyphen.Configuration.Controls.AboutContent::.ctor + Assembled method Virtuoso.Hyphen.Configuration.Controls.AboutContent::OnShow + Assembled method Virtuoso.Hyphen.Configuration.Controls.AboutContent::HomepageLINK_LinkClicked + Assembled method Virtuoso.Hyphen.Configuration.Controls.AboutContent::Dispose + Assembled method Virtuoso.Hyphen.Configuration.Controls.AboutContent::InitializeComponent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::InitializeDefaultConfiguration + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::add_ConfigurationChanged + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::remove_ConfigurationChanged + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::RaiseChangedEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::get_Values + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::get_IsDirty + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::set_IsDirty + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::OnBeforeSerialization + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::OnAfterDeserialization + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::MarkDirty + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetOptions + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::FetchStream + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::FlushCaches + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Save + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Serialize + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::SerializeEncrypted + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Load + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::Deserialize + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::DeserializeEncrypted + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::GetDefaultConfiguration + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration::.cctor + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::.ctor + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Singleton + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_Initialized + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::InitializeDefaultConfiguration + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomPluginManagerTypeName + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_CustomPluginManagerTypeName + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomAssemblyProbeTypeName + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_CustomAssemblyProbeTypeName + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_CustomFusionAssemblyName + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_CustomFusionAssemblyName + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_LoadPluginsOnStartup + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_LoadPluginsOnStartup + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::get_UseLazyUnload + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::set_UseLazyUnload + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Initialize + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Reset + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfiguration::Reload + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfigurator::.ctor + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Singleton + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Name + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfigurator::get_Configuration + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfigurator::ResetConfiguration + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfigurator::ReloadConfiguration + Assembled method Virtuoso.Hyphen.Configuration.RuntimeConfigurator::PopulateConfiguration + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::.ctor + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::get_PluginInterfaces + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::LoadInternal + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::UnloadInternal + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::PSGetName + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::PSGetStatus + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::PSSetStatus + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::PSLoadIcon + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::PSGetCaps + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::PSSSendMessage + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ThisProtocol + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ThisProtocol + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::get_NamePtr + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedAwayStatusModes + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::get_SupportedStatusModes + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::get_ProtocolStatus + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::set_ProtocolStatus + Assembled method Virtuoso.Hyphen.Mini.ProtocolPlugin::SendMessage + Assembled method Virtuoso.Hyphen.MirandaPluginLink::.ctor + Assembled method Virtuoso.Hyphen.MirandaPluginLink::FromPointer + Assembled method Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLinkPtr + Assembled method Virtuoso.Hyphen.MirandaPluginLink::get_NativePluginLink + Assembled method Virtuoso.Hyphen.Native.PLUGININFOEX::.ctor + Assembled method Virtuoso.Hyphen.Native.PLUGININFOEX::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventManager::CreateEventHook + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventManager::RemoveEventHook + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventManager::CreateEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventManager::CreateEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.EventManager::RemoveEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookManager°<>c__DisplayClass2::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookManager°<>c__DisplayClass2::b__0 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHooks + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateHook + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookManager::CreateServiceFunction + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookManager::HookEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyHook + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookManager::UnhookEvent + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.HookManager::DestroyServiceFunction + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::CreateServiceFunction + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::ServiceExists + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::GetService + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager::RemoveServiceFunction + Assembled method Virtuoso.Miranda.Plugins.Native.UUID::get_HyphenUUID + Assembled method Virtuoso.Miranda.Plugins.Native.UUID::get_HyphenInterfaceUUIDs + Assembled method Virtuoso.Miranda.Plugins.Native.UUID::get_Last + Assembled method Virtuoso.Miranda.Plugins.Native.UUID::get_ProtocolUUID + Assembled method Virtuoso.Miranda.Plugins.Native.UUID::.cctor + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox°MirandaContextInitHelper::.ctor + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::get_HostingAppDomain + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::.ctor + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::Unload + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::InitializeAppDomainSetup + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::OnSandboxUnload + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::GetStrongName + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::SetUpHostingAppDomain + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::SetUpHostingAppDomain + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::UnloadHostingAppDomain + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObject + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::InstantiateRemoteObjectFrom + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::InitializeRemoteContext + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::SetUnhandledExceptionHandler + Assembled method Virtuoso.Miranda.Plugins.Helpers.Sandbox::RemoveUnhandledExceptionHandler + Assembled method Virtuoso.Hyphen.PluginsSandbox::get_AssemblyProbe + Assembled method Virtuoso.Hyphen.PluginsSandbox::get_PluginManager + Assembled method Virtuoso.Hyphen.PluginsSandbox::.ctor + Assembled method Virtuoso.Hyphen.PluginsSandbox::InitializeAppDomainSetup + Assembled method Virtuoso.Hyphen.PluginsSandbox::LoadAssemblyProbe + Assembled method Virtuoso.Hyphen.PluginsSandbox::LoadPluginManager + Assembled method Virtuoso.Hyphen.PluginsSandbox::get_HostingAppDomainPrivateBinPath + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::.ctor + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::AddCategory + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::DeleteCategory + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::RenameCategory + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetCategories + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetCategoryName + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::AddValue + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetValue + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetValue + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetKeyName + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::DeleteValue + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::RenameKey + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::ModifyValue + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetKeys + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::WriteIni + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::WriteIni + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::WriteFile + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::BuildComment + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::CreateData + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::CreateData + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::ReadIni + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::InterpretIni + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::ReadFile + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::GetDataFromLine + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::IsLineACategoryDef + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::DivideToLines + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::ContainsMoreThanOne + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::LineVerify + Assembled method Virtuoso.Miranda.Plugins.Helpers.IniStructure::RemoveAndVerifyIni + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Protocol + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Contact + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Type + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_Result + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_ProcessHandle + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::get_LParam + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs::FromACKDATA + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::add_AckReceived + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::remove_AckReceived + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::ChainSend + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::ChainSend + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::ChainReceive + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::ChainReceive + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter::b__0 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_SettingName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_SettingOwner + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_Value + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::get_ValueType + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Version + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_ProfileBound + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_ProfileBound + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encrypt + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_Encrypt + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Storage + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_Storage + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::get_Encryption + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::set_Encryption + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute::Finalize + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::get_NativeDescriptor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Register + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::Unregister + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::AddToContact + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol::AddToContact + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BuildAckData + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastMessageAckAsync + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::BroadcastAck + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster::b__0 + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_ContactInfo + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_ServiceName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_WParam + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_LParam + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::get_CcsDataPtr + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData::GetLParamAsString + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack::TranslateString + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::Initialize + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::VerifyInitialized + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::get_HyphenIsLoading + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::set_HyphenIsLoading + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment::get_IsolatedModePluginsLoaded + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::get_ServiceName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::set_ServiceName + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::Create + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper::Callback + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Skin::LoadIcon + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Skin::LoadProtocolIcon + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Skin::LoadProtocolIcon + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.Skin::LoadProtocolIcon + Assembled method Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::.ctor + Assembled method Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1::Instantiate + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache::get_Singleton + Assembled method Virtuoso.Miranda.Plugins.Native.ACKDATA::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::.ctor + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::FromPointer + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::get_Contact + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::get_LParam + Assembled method Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent::set_LParam + Assembled method Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::get_CurrentState + Assembled method Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::get_PreviousState + Assembled method Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs::.ctor + Assembled method Virtuoso.Miranda.Plugins.PMConfiguration::.ctor + Assembled method Virtuoso.Miranda.Plugins.PMConfiguration::InitializeDefaultConfiguration + Assembled method Virtuoso.Miranda.Plugins.PMConfiguration::Initialize + Assembled method Virtuoso.Miranda.Plugins.PMConfiguration::get_Singleton + Assembled method Virtuoso.Miranda.Plugins.PMConfiguration::get_DisabledPlugins + Assembled method Virtuoso.Miranda.Plugins.PMConfiguration::set_DisabledPlugins + Assembled method Virtuoso.Miranda.Plugins.PMConfiguration::Reset + Assembled method Virtuoso.Miranda.Plugins.PMConfiguration::Reload + Assembled method Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::.ctor + Assembled method Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Singleton + Assembled method Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Name + Assembled method Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::get_Configuration + Assembled method Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::PopulateConfiguration + Assembled method Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::ResetConfiguration + Assembled method Virtuoso.Miranda.Plugins.Configuration.PMConfigurator::ReloadConfiguration + Assembled method Virtuoso.Miranda.Plugins.Properties.Resources::.ctor + Assembled method Virtuoso.Miranda.Plugins.Properties.Resources::get_ResourceManager + Assembled method Virtuoso.Miranda.Plugins.Properties.Resources::get_Culture + Assembled method Virtuoso.Miranda.Plugins.Properties.Resources::set_Culture + Assembled method Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_232_32x32 + Assembled method Virtuoso.Miranda.Plugins.Properties.Resources::get_Icon_256_32x32 + Assembled method Virtuoso.Miranda.Plugins.Properties.Resources::get_RibbonClick + Assembled method Virtuoso.Miranda.Plugins.Properties.Resources::get_RibbonHover + Assembled method Virtuoso.Miranda.Plugins.Properties.Settings::get_Default + Assembled method Virtuoso.Miranda.Plugins.Properties.Settings::get_ConfigurationDialog_HideExpertOptions_Checked + Assembled method Virtuoso.Miranda.Plugins.Properties.Settings::set_ConfigurationDialog_HideExpertOptions_Checked + Assembled method Virtuoso.Miranda.Plugins.Properties.Settings::get_ConfigurationPanel_CategoryItems_View + Assembled method Virtuoso.Miranda.Plugins.Properties.Settings::set_ConfigurationPanel_CategoryItems_View + Assembled method Virtuoso.Miranda.Plugins.Properties.Settings::get_ConfigurationDialog_ClientSize + Assembled method Virtuoso.Miranda.Plugins.Properties.Settings::set_ConfigurationDialog_ClientSize + Assembled method Virtuoso.Miranda.Plugins.Properties.Settings::.ctor + Assembled method Virtuoso.Miranda.Plugins.Properties.Settings::.cctor + Assembled method Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::get_AvailableVersion + Assembled method Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::get_RequiredVersion + Assembled method Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor + Assembled method Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor + Assembled method Virtuoso.Miranda.Plugins.RuntimeNotSupportedException::.ctor + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_PluginName + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_CurrentVersion + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaChangelogUrl + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaChangelogUrl + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaUpdateUrl + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaUpdateUrl + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaVersionUrl + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaVersionUrl + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_VersionUrl + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_UpdateUrl + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_BetaVersionTextPrefix + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::set_BetaVersionTextPrefix + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::get_VersionTextPrefix + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::.ctor + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update::MarshalToNative + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin::IsUpdateSupported + Assembled method Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin::RegisterForUpdate + Creating PE file + + Emitting classes: + Class 1: Virtuoso.Hyphen.Loader + Class 2: Virtuoso.Miranda.Plugins.ExposingPluginAttribute + Class 3: Virtuoso.Hyphen.Mini.Module + Class 4: Virtuoso.Hyphen.Mini.Module°AuxiliaryPluginManager + Class 5: Virtuoso.Miranda.Plugins.PluginManagerBase + Class 6: Virtuoso.Hyphen.FusionContext + Class 7: Virtuoso.Miranda.Plugins.Infrastructure.MirandaContext + Class 8: Virtuoso.Hyphen.Mini.Module°<>c__DisplayClass3`1 + Class 9: Virtuoso.Hyphen.Mini.Custom.CustomApiExportDescriptor + Class 10: Virtuoso.Hyphen.Mini.StandalonePlugin + Class 11: Virtuoso.Miranda.Plugins.PluginDescriptor + Class 12: Virtuoso.Miranda.Plugins.LoaderOptions + Class 13: Virtuoso.Miranda.Plugins.Log + Class 14: Virtuoso.Miranda.Plugins.RuntimeNotSupportedException + Class 15: Virtuoso.Miranda.Plugins.DefaultExceptionHandler + Class 16: Virtuoso.Miranda.Plugins.MirandaPlugin + Class 17: Virtuoso.Miranda.Plugins.Resources.TextResources + Class 18: Virtuoso.Hyphen.Mini.ModuleManager + Class 19: Virtuoso.Miranda.Plugins.PluginState + Class 20: Virtuoso.Miranda.Plugins.Infrastructure.PluginConfiguration + Class 21: Virtuoso.Miranda.Plugins.LoaderOptionsAttribute + Class 22: Virtuoso.Miranda.Plugins.LoaderOptionsOwner + Class 23: Virtuoso.Hyphen.Mini.Custom.CustomApiExportHandlerAttribute + Class 24: Virtuoso.Hyphen.Mini.Custom.CustomApiExportCallback + Class 25: Virtuoso.Miranda.Plugins.Collections.CustomApiExportDescriptorCollection + Class 26: Virtuoso.Miranda.Plugins.Infrastructure.RemoteObject + Class 27: Virtuoso.Miranda.Plugins.Infrastructure.ContextWorker + Class 28: Virtuoso.Miranda.Plugins.IExceptionHandler + Class 29: Virtuoso.Miranda.Plugins.PluginManagerBase°PluginManagerContextCallback`1 + Class 30: Virtuoso.Miranda.Plugins.Collections.PluginDescriptorCollection + Class 31: Virtuoso.Miranda.Plugins.Collections.PluginDescriptorReadOnlyCollection + Class 32: Virtuoso.Miranda.Plugins.PluginStateChangeEventArgs + Class 33: Virtuoso.Hyphen.MirandaPluginLink + Class 34: Virtuoso.Miranda.Plugins.PMConfiguration + Class 35: Virtuoso.Miranda.Plugins.SynchronizationHelper + Class 36: Virtuoso.Miranda.Plugins.Infrastructure.MirandaEnvironment + Class 37: Virtuoso.Miranda.Plugins.Infrastructure.ContactList + Class 38: Virtuoso.Miranda.Plugins.Infrastructure.MenuItemDeclarationAttribute + Class 39: Virtuoso.Miranda.Plugins.IDescriptor + Class 40: Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationCollection + Class 41: Virtuoso.Miranda.Plugins.Collections.MenuItemDeclarationReadOnlyCollection + Class 42: Virtuoso.Miranda.Plugins.Infrastructure.MenuItemProperties + Class 43: Virtuoso.Miranda.Plugins.Infrastructure.HotKeys + Class 44: Virtuoso.Miranda.Plugins.Collections.HookDescriptorCollection + Class 45: Virtuoso.Miranda.Plugins.Infrastructure.HookDescriptor + Class 46: Virtuoso.Miranda.Plugins.Infrastructure.HookManager + Class 47: Virtuoso.Miranda.Plugins.Forms.PluginDialog + Class 48: Virtuoso.Miranda.Plugins.Infrastructure.EventHandle + Class 49: Virtuoso.Miranda.Plugins.Collections.EventHandleCollection + Class 50: Virtuoso.Miranda.Plugins.Infrastructure.IMirandaObject + Class 51: Virtuoso.Miranda.Plugins.Infrastructure.EventManager + Class 52: Virtuoso.Miranda.Plugins.Forms.ErrorDialog + Class 53: Virtuoso.Miranda.Plugins.IExceptionReporter + Class 54: Virtuoso.Miranda.Plugins.Infrastructure.ISettingOwner + Class 55: Virtuoso.Miranda.Plugins.MirandaPlugin°Hyphen + Class 56: Virtuoso.Hyphen.Native.PluginFlags + Class 57: Virtuoso.Miranda.Plugins.Infrastructure.EventHookAttribute + Class 58: Virtuoso.Hyphen.Native.PLUGININFO + Class 59: Virtuoso.Hyphen.Native.PLUGININFOEX + Class 60: Virtuoso.Miranda.Plugins.Infrastructure.Translate + Class 61: Virtuoso.Miranda.Plugins.Native.UUID + Class 62: Virtuoso.Hyphen.Mini.Custom.DatabaseDriver + Class 63: Virtuoso.Miranda.Plugins.Native.UnmanagedStructHandle`1 + Class 64: Virtuoso.Hyphen.Mini.Custom.DatabaseLink + Class 65: Virtuoso.Hyphen.Mini.Custom.GetCapabilityPrototype + Class 66: Virtuoso.Hyphen.Mini.Custom.GetFriendlyNamePrototype + Class 67: Virtuoso.Hyphen.Mini.Custom.GrokHeaderPrototype + Class 68: Virtuoso.Hyphen.Mini.Custom.InitPrototype + Class 69: Virtuoso.Hyphen.Mini.Custom.MakeDatabasePrototype + Class 70: Virtuoso.Hyphen.Mini.Custom.UnloadPrototype + Class 71: Virtuoso.Hyphen.Mini.Custom.CustomizedDatabaseDriver + Class 72: Virtuoso.Miranda.Plugins.Collections.ModuleCollection + Class 73: Virtuoso.Miranda.Plugins.Collections.ModuleReadOnlyCollection + Class 74: Virtuoso.Miranda.Plugins.Infrastructure.ServiceCallInterceptionManager + Class 75: Virtuoso.Miranda.Plugins.Callback + Class 76: Virtuoso.Miranda.Plugins.AssemblyProbe + Class 77: Virtuoso.Miranda.Plugins.DefaultAssemblyProbe + Class 78: Virtuoso.Miranda.Plugins.Infrastructure.MirandaObject + Class 79: Virtuoso.Hyphen.Native.NativePluginLink + Class 80: Virtuoso.Hyphen.Native.NotifyEventHooksPrototype + Class 81: Virtuoso.Hyphen.Native.SetHookDefaultForHookableEventPrototype + Class 82: Virtuoso.Miranda.Plugins.Native.MirandaException + Class 83: Virtuoso.Miranda.Plugins.Native.StringEncoding + Class 84: Virtuoso.Hyphen.PluginsSandbox + Class 85: Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu + Class 86: Virtuoso.Miranda.Plugins.Infrastructure.RuntimeEnvironment + Class 87: Virtuoso.Hyphen.Configuration.RuntimeConfiguration + Class 88: Virtuoso.Miranda.Plugins.Infrastructure.HookType + Class 89: Virtuoso.Miranda.Plugins.ThirdParty.Updater.Update + Class 90: Virtuoso.Miranda.Plugins.ThirdParty.Updater.UpdaterPlugin + Class 91: Virtuoso.Miranda.Plugins.Native.InteropBufferPool + Class 92: Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog + Class 93: Virtuoso.Miranda.Plugins.Forms.FusionProgressDialog°WorkerDelegate + Class 94: Virtuoso.Miranda.Plugins.Helpers.Sandbox + Class 95: Virtuoso.Miranda.Plugins.Infrastructure.StringResolverCache + Class 96: Virtuoso.Miranda.Plugins.Infrastructure.IStringResolver + Class 97: Virtuoso.Miranda.Plugins.Configuration.Forms.ConfigurationDialog + Class 98: Virtuoso.Miranda.Plugins.IConfigurablePlugin + Class 99: Virtuoso.Miranda.Plugins.Configuration.PMConfigurator + Class 100: Virtuoso.Hyphen.Native.CreateHookableEventPrototype + Class 101: Virtuoso.Hyphen.Native.DestroyHookableEventPrototype + Class 102: Virtuoso.Hyphen.Native.HookEventPrototype + Class 103: Virtuoso.Hyphen.Native.HookEventMessagePrototype + Class 104: Virtuoso.Hyphen.Native.UnhookEventPrototype + Class 105: Virtuoso.Hyphen.Native.CreateServiceFunctionPrototype + Class 106: Virtuoso.Hyphen.Native.CreateTransientServiceFunctionPrototype + Class 107: Virtuoso.Hyphen.Native.DestroyServiceFunctionPrototype + Class 108: Virtuoso.Hyphen.Native.CallServicePrototype + Class 109: Virtuoso.Hyphen.Native.ServiceExistsPrototype + Class 110: Virtuoso.Hyphen.Native.CallServiceSyncPrototype + Class 111: Virtuoso.Hyphen.Native.CallFunctionAsyncPrototype + Class 112: Virtuoso.Hyphen.Native.AsyncFunctionCall + Class 113: Virtuoso.Hyphen.Native.CallServiceUnsafePrototype + Class 114: Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu°AddMainMenuItemInvoker + Class 115: Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenuItem + Class 116: Virtuoso.Miranda.Plugins.Forms.Controls.ManagedMainMenu°ModifyMenuItemInvoker + Class 117: Virtuoso.Miranda.Plugins.Native.CLISTMENUITEM + Class 118: Virtuoso.Miranda.Plugins.Native.IconImageCache + Class 119: Virtuoso.Miranda.Plugins.Native.MenuItemModifyFlags + Class 120: Virtuoso.Miranda.Plugins.Native.CCSDATA + Class 121: Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo + Class 122: Virtuoso.Miranda.Plugins.Native.UnmanagedStringHandle + Class 123: Virtuoso.Miranda.Plugins.Native.DBCONTACTWRITESETTING + Class 124: Virtuoso.Miranda.Plugins.Native.DBVARIANT + Class 125: Virtuoso.Miranda.Plugins.Infrastructure.DatabaseSettingType + Class 126: Virtuoso.Miranda.Plugins.Native.DBVARIANT_TEXT + Class 127: Virtuoso.Miranda.Plugins.Native.DBVARIANT_PRIMITIVE + Class 128: Virtuoso.Miranda.Plugins.Native.DBVARIANT_BLOB + Class 129: Virtuoso.Miranda.Plugins.Native.DBCONTACTGETSETTING + Class 130: Virtuoso.Miranda.Plugins.Native.DbVariantValue + Class 131: Virtuoso.Miranda.Plugins.Native.IUnmanagedMemoryHandle + Class 132: Virtuoso.Miranda.Plugins.Native.InteropBuffer + Class 133: Virtuoso.Miranda.Plugins.Native.InteropBufferPool°<>c__DisplayClass2 + Class 134: Virtuoso.Miranda.Plugins.Collections.ITagSearchable`1 + Class 135: Virtuoso.Miranda.Plugins.Infrastructure.EventPublisher + Class 136: Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventArgs + Class 137: Virtuoso.Miranda.Plugins.Infrastructure.MirandaEventHandler`1 + Class 138: Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventArgs`1 + Class 139: Virtuoso.Miranda.Plugins.Infrastructure.ContactListInfoTip + Class 140: Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusChangeEventArgs + Class 141: Virtuoso.Miranda.Plugins.Infrastructure.LazyEventBinder + Class 142: Virtuoso.Miranda.Plugins.Native.MIRANDASYSTRAYNOTIFY + Class 143: Virtuoso.Miranda.Plugins.Infrastructure.ContactListEventProperties + Class 144: Virtuoso.Miranda.Plugins.Infrastructure.ContactListEvent + Class 145: Virtuoso.Miranda.Plugins.Infrastructure.Protocol + Class 146: Virtuoso.Miranda.Plugins.Infrastructure.ProtocolType + Class 147: Virtuoso.Miranda.Plugins.Infrastructure.StatusMode + Class 148: Virtuoso.Miranda.Plugins.Infrastructure.HookAttribute + Class 149: Virtuoso.Miranda.Plugins.Infrastructure.MirandaItem + Class 150: Virtuoso.Miranda.Plugins.Infrastructure.ItemType + Class 151: Virtuoso.Miranda.Plugins.Infrastructure.GroupInfo + Class 152: Virtuoso.Miranda.Plugins.Infrastructure.ContactInfo°ContactDisplayNameOptions + Class 153: Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyType + Class 154: Virtuoso.Miranda.Plugins.Collections.ProtocolDictionary + Class 155: Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoProperty + Class 156: Virtuoso.Miranda.Plugins.Native.CONTACTINFO + Class 157: Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase + Class 158: Virtuoso.Miranda.Plugins.Infrastructure.ContactInfoPropertyFlags + Class 159: Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__6 + Class 160: Virtuoso.Miranda.Plugins.Infrastructure.ServiceManager + Class 161: Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabase°d__c + Class 162: Virtuoso.Miranda.Plugins.Infrastructure.MirandaDatabaseEventArgs + Class 163: Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactEventArgs + Class 164: Virtuoso.Miranda.Plugins.Infrastructure.MirandaContactSettingEventArgs + Class 165: Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventInfo + Class 166: Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventType + Class 167: Virtuoso.Miranda.Plugins.Infrastructure.DatabaseEventProperties + Class 168: Virtuoso.Miranda.Plugins.Native.DBEVENTINFO + Class 169: Virtuoso.Miranda.Plugins.Helpers.Utilities + Class 170: Virtuoso.Miranda.Plugins.Native.DBTIMETOSTRING + Class 171: Virtuoso.Miranda.Plugins.Native.DBEVENTGETTEXT + Class 172: Virtuoso.Miranda.Plugins.Native.MM_INTERFACE + Class 173: Virtuoso.Miranda.Plugins.Native.MMI_FreePrototype + Class 174: Virtuoso.Miranda.Plugins.Infrastructure.ProtocolFlagsKind + Class 175: Virtuoso.Miranda.Plugins.Infrastructure.ProtocolCapabilities + Class 176: Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatusModes + Class 177: Virtuoso.Miranda.Plugins.Infrastructure.CallbackResult + Class 178: Virtuoso.Miranda.Plugins.Infrastructure.EventResult + Class 179: Virtuoso.Miranda.Plugins.Infrastructure.LanguagePackStringResolver + Class 180: Virtuoso.Miranda.Plugins.FusionException + Class 181: Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack + Class 182: Virtuoso.Miranda.Plugins.Infrastructure.ProtocolStatus + Class 183: Virtuoso.Miranda.Plugins.Infrastructure.ServiceFunctionAttribute + Class 184: Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemHeader + Class 185: Virtuoso.Miranda.Plugins.IExceptionDumpController + Class 186: Virtuoso.Miranda.Plugins.Native.PROTOCOLDESCRIPTOR + Class 187: Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckEventArgs + Class 188: Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckRouter + Class 189: Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckType + Class 190: Virtuoso.Miranda.Plugins.Infrastructure.MirandaEvents + Class 191: Virtuoso.Miranda.Plugins.Helpers.EnumValueFriendlyNameAttribute + Class 192: Virtuoso.Miranda.Plugins.Infrastructure.MirandaServices + Class 193: Virtuoso.Miranda.Plugins.Native.MarshalKind + Class 194: Virtuoso.Miranda.Plugins.DefaultPluginManager + Class 195: Virtuoso.Miranda.Plugins.Infrastructure.Skin + Class 196: Virtuoso.Miranda.Plugins.Resources.VisualResources + Class 197: Virtuoso.Miranda.Plugins.Collections.ControlCollection + Class 198: Virtuoso.Miranda.Plugins.Collections.ConfigurationValues + Class 199: Virtuoso.Miranda.Plugins.Configuration.CategoryCollection + Class 200: Virtuoso.Miranda.Plugins.IConfigurablePluginBase`1 + Class 201: Virtuoso.Miranda.Plugins.ConfigurableMirandaPlugin`1 + Class 202: Virtuoso.Miranda.Plugins.Configuration.ConfigurableEntityDescriptor + Class 203: Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemControl + Class 204: Virtuoso.Miranda.Plugins.Configuration.CategoryItem + Class 205: Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.PluginManagementContent + Class 206: Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemSection + Class 207: Virtuoso.Miranda.Plugins.Forms.RemotableForm + Class 208: Virtuoso.Miranda.Plugins.Forms.PluginDialog°<>c__DisplayClass2 + Class 209: Virtuoso.Miranda.Plugins.Forms.PluginDialog°<>c__DisplayClass5 + Class 210: Virtuoso.Miranda.Plugins.Forms.SingletonDialog + Class 211: Virtuoso.Miranda.Plugins.Forms.SingletonDialog°ShowSingletonInvoker + Class 212: Virtuoso.Miranda.Plugins.Properties.Settings + Class 213: Virtuoso.Miranda.Plugins.Configuration.Category + Class 214: Virtuoso.Miranda.Plugins.Configuration.CategoryItemCollection + Class 215: Virtuoso.Hyphen.Configuration.RuntimeConfigurator + Class 216: Virtuoso.Miranda.Plugins.Properties.Resources + Class 217: Virtuoso.Miranda.Plugins.IInternalConfigurator + Class 218: Virtuoso.Miranda.Plugins.Configuration.CategoryItem°Command + Class 219: Virtuoso.Miranda.Plugins.Configuration.Forms.Controls.CategoryItemCommandControl + Class 220: Virtuoso.Miranda.Plugins.Forms.Controls.GradientPanel + Class 221: Virtuoso.Miranda.Plugins.Configuration.IEncryption + Class 222: Virtuoso.Miranda.Plugins.Configuration.IStorage + Class 223: Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationOptionsAttribute + Class 224: Virtuoso.Miranda.Plugins.Configuration.StorageBase + Class 225: Virtuoso.Miranda.Plugins.Configuration.IsolatedStorage + Class 226: Virtuoso.Miranda.Plugins.Configuration.PortableEncryption + Class 227: {3FFF4D13-FF0A-429D-9B95-394048CE8C68} + Class 228: {3FFF4D13-FF0A-429D-9B95-394048CE8C68}°__StaticArrayInitTypeSize=10 + Class 229: Virtuoso.Miranda.Plugins.Configuration.PortableStorage + Class 230: Virtuoso.Miranda.Plugins.Configuration.WindowsEncryption + Class 231: Virtuoso.Miranda.Plugins.Forms.Controls.CommandButton + Class 232: Virtuoso.Miranda.Plugins.Forms.Controls.ContactListView + Class 233: Virtuoso.Miranda.Plugins.Forms.Controls.ContactFilterEventArgs + Class 234: Virtuoso.Miranda.Plugins.Forms.Controls.CueBannerTextBox + Class 235: Virtuoso.Miranda.Plugins.Forms.Controls.TrayContextMenu + Class 236: Virtuoso.Miranda.Plugins.Forms.Controls.TrayMenuManager + Class 237: Virtuoso.Miranda.Plugins.Forms.InformationDialog + Class 238: Virtuoso.Miranda.Plugins.Forms.ISynchronizedSubscriber + Class 239: Virtuoso.Miranda.Plugins.Forms.FormTranslationFlags + Class 240: Virtuoso.Miranda.Plugins.Forms.LocalizableDialog + Class 241: Virtuoso.Miranda.Plugins.Helpers.MessageQueue + Class 242: Virtuoso.Miranda.Plugins.Helpers.MessageQueue°CommonWaitTime + Class 243: Virtuoso.Hyphen.Configuration.Controls.AboutContent + Class 244: Virtuoso.Miranda.Plugins.Helpers.TypeInstanceCache`1 + Class 245: Virtuoso.Miranda.Plugins.Infrastructure.ConfigurationException + Class 246: Virtuoso.Hyphen.Mini.ProtocolPlugin + Class 247: Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ManagedProtocol + Class 248: Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckBroadcaster + Class 249: Virtuoso.Miranda.Plugins.Infrastructure.Protocols.ContactChainData + Class 250: Virtuoso.Miranda.Plugins.Infrastructure.HookManager°<>c__DisplayClass2 + Class 251: Virtuoso.Miranda.Plugins.Infrastructure.CallbackWrapper + Class 252: Virtuoso.Miranda.Plugins.Native.MMI_MallocPrototype + Class 253: Virtuoso.Miranda.Plugins.Native.MMI_ReallocPrototype + Class 254: Virtuoso.Miranda.Plugins.Helpers.Sandbox°MirandaContextInitHelper + Class 255: Virtuoso.Miranda.Plugins.Helpers.IniStructure + Class 256: Virtuoso.Miranda.Plugins.Helpers.IniStructure°LineType + Class 257: Virtuoso.Miranda.Plugins.Infrastructure.Protocols.AckResult + Class 258: Virtuoso.Miranda.Plugins.Native.ACKDATA + Class 259: Virtuoso.Miranda.Plugins.Infrastructure.LanguagePack°LanguagePackEncoding + Class 260: Virtuoso.Miranda.Plugins.Infrastructure.Skin°Icons + Class 261: Virtuoso.Miranda.Plugins.ThirdParty.Updater.Native.UPDATE + + Emitting fields and methods: + Global Fields: 1; Methods: 6; + Class 1 Fields: 29; Methods: 60; + Class 2 Fields: 1; Methods: 2; + Class 3 Fields: 17; Methods: 19; + Class 4 Fields: 1; Methods: 4; + Class 5 Fields: 12; Methods: 40; + Class 6 Fields: 4; Methods: 8; + Class 7 Fields: 12; Methods: 33; + Class 8 Fields: 1; Methods: 2; + Class 9 Fields: 2; Methods: 4; + Class 10 Fields: 5; Methods: 22; + Class 11 Fields: 10; Methods: 21; + Class 12 Fields: 4; + Class 13 Fields: 1; Methods: 4; + Class 14 Fields: 2; Methods: 5; + Class 15 Fields: 1; Methods: 6; + Class 16 Fields: 3; Methods: 27; + Class 17 Fields: 2; Methods: 97; + Class 18 Fields: 4; Methods: 7; + Class 19 Fields: 4; + Class 20 Fields: 6; Methods: 22; + Class 21 Fields: 3; Methods: 12; + Class 22 Fields: 3; + Class 23 Fields: 1; Methods: 2; + Class 24 Methods: 4; + Class 25 Methods: 1; + Class 26 Methods: 2; + Class 27 Methods: 2; + Class 28 Methods: 1; + Class 29 Methods: 4; + Class 30 Methods: 5; + Class 31 Methods: 5; + Class 32 Fields: 2; Methods: 3; + Class 33 Fields: 3; Methods: 4; + Class 34 Fields: 2; Methods: 8; + Class 35 Methods: 8; + Class 36 Fields: 9; Methods: 11; + Class 37 Fields: 18; Methods: 40; + Class 38 Fields: 17; Methods: 38; + Class 39 + Class 40 Methods: 3; + Class 41 Methods: 3; + Class 42 Fields: 10; + Class 43 Fields: 5; + Class 44 Methods: 3; + Class 45 Fields: 7; Methods: 15; + Class 46 Methods: 7; + Class 47 Fields: 1; Methods: 13; + Class 48 Fields: 2; Methods: 6; + Class 49 Methods: 1; + Class 50 Methods: 1; + Class 51 Methods: 5; + Class 52 Fields: 13; Methods: 12; + Class 53 Methods: 1; + Class 54 Methods: 1; + Class 55 Fields: 1; Methods: 11; + Class 56 Fields: 2; + Class 57 Fields: 1; Methods: 5; + Class 58 Fields: 10; Methods: 1; + Class 59 Fields: 1; Methods: 2; + Class 60 Fields: 1; Methods: 13; + Class 61 Fields: 4; Methods: 5; + Class 62 Fields: 3; Methods: 11; + Class 63 Fields: 7; Methods: 17; + Class 64 Fields: 7; + Class 65 Methods: 4; + Class 66 Methods: 4; + Class 67 Methods: 4; + Class 68 Methods: 4; + Class 69 Methods: 4; + Class 70 Methods: 4; + Class 71 Methods: 11; + Class 72 Methods: 1; + Class 73 Methods: 1; + Class 74 Fields: 1; Methods: 6; + Class 75 Methods: 4; + Class 76 Methods: 2; + Class 77 Methods: 2; + Class 78 Fields: 1; Methods: 3; + Class 79 Fields: 14; Methods: 1; + Class 80 Methods: 4; + Class 81 Methods: 4; + Class 82 Methods: 3; + Class 83 Fields: 4; + Class 84 Fields: 2; Methods: 7; + Class 85 Fields: 5; Methods: 10; + Class 86 Fields: 2; Methods: 5; + Class 87 Fields: 6; Methods: 17; + Class 88 Fields: 4; + Class 89 Fields: 9; Methods: 15; + Class 90 Fields: 1; Methods: 2; + Class 91 Fields: 6; Methods: 9; + Class 92 Fields: 5; Methods: 8; + Class 93 Methods: 4; + Class 94 Fields: 1; Methods: 14; + Class 95 Fields: 1; Methods: 2; + Class 96 Methods: 1; + Class 97 Fields: 15; Methods: 27; + Class 98 Methods: 5; + Class 99 Fields: 2; Methods: 7; + Class 100 Methods: 4; + Class 101 Methods: 4; + Class 102 Methods: 4; + Class 103 Methods: 4; + Class 104 Methods: 4; + Class 105 Methods: 4; + Class 106 Methods: 4; + Class 107 Methods: 4; + Class 108 Methods: 4; + Class 109 Methods: 4; + Class 110 Methods: 4; + Class 111 Methods: 4; + Class 112 Methods: 4; + Class 113 Methods: 4; + Class 114 Methods: 4; + Class 115 Fields: 4; Methods: 6; + Class 116 Methods: 4; + Class 117 Fields: 10; Methods: 2; + Class 118 Fields: 4; Methods: 10; + Class 119 Fields: 7; + Class 120 Fields: 4; Methods: 2; + Class 121 Fields: 19; Methods: 52; + Class 122 Fields: 4; Methods: 11; + Class 123 Fields: 3; Methods: 2; + Class 124 Fields: 4; + Class 125 Fields: 9; + Class 126 Fields: 2; + Class 127 Fields: 6; + Class 128 Fields: 2; + Class 129 Fields: 3; + Class 130 Fields: 10; + Class 131 Methods: 2; + Class 132 Fields: 8; Methods: 19; + Class 133 Fields: 1; Methods: 2; + Class 134 Methods: 1; + Class 135 Methods: 3; + Class 136 Methods: 1; + Class 137 Methods: 4; + Class 138 Fields: 1; Methods: 2; + Class 139 Fields: 6; Methods: 5; + Class 140 Fields: 2; Methods: 3; + Class 141 Fields: 1; Methods: 5; + Class 142 Fields: 6; Methods: 1; + Class 143 Fields: 4; + Class 144 Fields: 8; Methods: 5; + Class 145 Fields: 12; Methods: 20; + Class 146 Fields: 7; + Class 147 Fields: 12; + Class 148 Methods: 3; + Class 149 Fields: 2; Methods: 4; + Class 150 Fields: 4; + Class 151 Fields: 1; Methods: 3; + Class 152 Fields: 5; + Class 153 Fields: 6; + Class 154 Methods: 2; + Class 155 Fields: 16; + Class 156 Fields: 6; Methods: 1; + Class 157 Fields: 20; Methods: 37; + Class 158 Fields: 2; + Class 159 Fields: 7; Methods: 8; + Class 160 Methods: 4; + Class 161 Fields: 8; Methods: 8; + Class 162 Fields: 1; Methods: 2; + Class 163 Fields: 1; Methods: 2; + Class 164 Fields: 4; Methods: 5; + Class 165 Fields: 11; Methods: 20; + Class 166 Fields: 7; + Class 167 Fields: 7; + Class 168 Fields: 7; Methods: 2; + Class 169 Methods: 2; + Class 170 Fields: 3; Methods: 2; + Class 171 Fields: 3; + Class 172 Fields: 4; + Class 173 Methods: 4; + Class 174 Fields: 4; + Class 175 Fields: 39; + Class 176 Fields: 11; + Class 177 Fields: 2; + Class 178 Fields: 2; + Class 179 Methods: 2; + Class 180 Fields: 4; Methods: 8; + Class 181 Fields: 1; Methods: 1; + Class 182 Fields: 2; Methods: 2; + Class 183 Fields: 1; Methods: 5; + Class 184 Fields: 4; Methods: 13; + Class 185 Methods: 1; + Class 186 Fields: 3; Methods: 1; + Class 187 Fields: 6; Methods: 8; + Class 188 Fields: 5; Methods: 7; + Class 189 Fields: 16; + Class 190 Fields: 8; + Class 191 Fields: 1; Methods: 4; + Class 192 Fields: 11; + Class 193 Fields: 3; + Class 194 Fields: 2; Methods: 4; + Class 195 Fields: 2; Methods: 4; + Class 196 Fields: 2; Methods: 13; + Class 197 Methods: 1; + Class 198 Methods: 2; + Class 199 Methods: 1; + Class 200 Methods: 1; + Class 201 Fields: 2; Methods: 11; + Class 202 Fields: 2; Methods: 4; + Class 203 Fields: 3; Methods: 16; + Class 204 Fields: 6; Methods: 11; + Class 205 Fields: 13; Methods: 13; + Class 206 Fields: 3; Methods: 7; + Class 207 Methods: 2; + Class 208 Fields: 1; Methods: 2; + Class 209 Fields: 1; Methods: 2; + Class 210 Fields: 2; Methods: 13; + Class 211 Methods: 4; + Class 212 Fields: 1; Methods: 9; + Class 213 Fields: 3; Methods: 4; + Class 214 Methods: 1; + Class 215 Fields: 2; Methods: 7; + Class 216 Fields: 2; Methods: 8; + Class 217 + Class 218 Methods: 4; + Class 219 Fields: 1; Methods: 3; + Class 220 Fields: 2; Methods: 6; + Class 221 Methods: 2; + Class 222 Methods: 3; + Class 223 Fields: 5; Methods: 14; + Class 224 Methods: 6; + Class 225 Fields: 1; Methods: 5; + Class 226 Fields: 1; Methods: 8; + Class 227 Fields: 1; + Class 228 + Class 229 Methods: 6; + Class 230 Methods: 3; + Class 231 Methods: 2; + Class 232 Fields: 3; Methods: 12; + Class 233 Fields: 2; Methods: 5; + Class 234 Fields: 9; Methods: 15; + Class 235 Fields: 1; Methods: 3; + Class 236 Fields: 1; Methods: 2; + Class 237 Fields: 7; Methods: 5; + Class 238 Methods: 1; + Class 239 Fields: 4; + Class 240 Fields: 3; Methods: 7; + Class 241 Fields: 7; Methods: 26; + Class 242 Fields: 4; + Class 243 Fields: 9; Methods: 5; + Class 244 Methods: 2; + Class 245 Methods: 4; + Class 246 Fields: 3; Methods: 21; + Class 247 Fields: 3; Methods: 6; + Class 248 Fields: 2; Methods: 6; + Class 249 Fields: 5; Methods: 7; + Class 250 Fields: 1; Methods: 2; + Class 251 Fields: 1; Methods: 5; + Class 252 Methods: 4; + Class 253 Methods: 4; + Class 254 Methods: 1; + Class 255 Fields: 1; Methods: 29; + Class 256 Fields: 7; + Class 257 Fields: 3; + Class 258 Fields: 7; Methods: 1; + Class 259 Fields: 3; + Class 260 Fields: 1; + Class 261 Fields: 13; + Resolving local member refs: 5181 -> 5242 defs, 0 refs, 0 unresolved + + Emitting events and properties: + Global + Class 1 Props: 3; + Class 2 Props: 1; + Class 3 Props: 4; + Class 4 + Class 5 Events: 3; Props: 5; + Class 6 Props: 5; + Class 7 Events: 2; Props: 10; + Class 8 + Class 9 Props: 2; + Class 10 Props: 10; + Class 11 Props: 7; + Class 12 + Class 13 Props: 1; + Class 14 Props: 2; + Class 15 Props: 1; + Class 16 Props: 11; + Class 17 Props: 95; + Class 18 Props: 3; + Class 19 + Class 20 Events: 1; Props: 2; + Class 21 Props: 3; + Class 22 + Class 23 Props: 1; + Class 24 + Class 25 + Class 26 + Class 27 Props: 1; + Class 28 + Class 29 + Class 30 + Class 31 + Class 32 Props: 2; + Class 33 Props: 2; + Class 34 Props: 2; + Class 35 + Class 36 Props: 7; + Class 37 Events: 5; Props: 3; + Class 38 Props: 16; + Class 39 + Class 40 Props: 1; + Class 41 Props: 1; + Class 42 + Class 43 + Class 44 + Class 45 Props: 6; + Class 46 + Class 47 Props: 1; + Class 48 Props: 2; + Class 49 + Class 50 Props: 1; + Class 51 + Class 52 + Class 53 + Class 54 Props: 1; + Class 55 Props: 7; + Class 56 + Class 57 Props: 3; + Class 58 + Class 59 + Class 60 + Class 61 Props: 4; + Class 62 + Class 63 Props: 1; + Class 64 + Class 65 + Class 66 + Class 67 + Class 68 + Class 69 + Class 70 + Class 71 + Class 72 + Class 73 + Class 74 Props: 1; + Class 75 + Class 76 + Class 77 + Class 78 Props: 1; + Class 79 + Class 80 + Class 81 + Class 82 + Class 83 + Class 84 Props: 3; + Class 85 + Class 86 Props: 2; + Class 87 Props: 7; + Class 88 + Class 89 Props: 9; + Class 90 + Class 91 Props: 1; + Class 92 + Class 93 + Class 94 Props: 1; + Class 95 Props: 1; + Class 96 + Class 97 + Class 98 Props: 2; + Class 99 Props: 3; + Class 100 + Class 101 + Class 102 + Class 103 + Class 104 + Class 105 + Class 106 + Class 107 + Class 108 + Class 109 + Class 110 + Class 111 + Class 112 + Class 113 + Class 114 + Class 115 Props: 3; + Class 116 + Class 117 + Class 118 Props: 1; + Class 119 + Class 120 + Class 121 Props: 8; + Class 122 Props: 5; + Class 123 + Class 124 + Class 125 + Class 126 + Class 127 + Class 128 + Class 129 + Class 130 + Class 131 Props: 1; + Class 132 Props: 6; + Class 133 + Class 134 + Class 135 + Class 136 + Class 137 + Class 138 Props: 1; + Class 139 Props: 5; + Class 140 Props: 2; + Class 141 + Class 142 + Class 143 + Class 144 Props: 2; + Class 145 Events: 1; Props: 6; + Class 146 + Class 147 + Class 148 Props: 2; + Class 149 Props: 1; + Class 150 + Class 151 Props: 2; + Class 152 + Class 153 + Class 154 Props: 1; + Class 155 + Class 156 + Class 157 Events: 6; Props: 2; + Class 158 + Class 159 Props: 2; + Class 160 + Class 161 Props: 2; + Class 162 Props: 1; + Class 163 Props: 1; + Class 164 Props: 4; + Class 165 Props: 6; + Class 166 + Class 167 + Class 168 + Class 169 + Class 170 + Class 171 + Class 172 + Class 173 + Class 174 + Class 175 + Class 176 + Class 177 + Class 178 + Class 179 + Class 180 Props: 4; + Class 181 + Class 182 + Class 183 Props: 3; + Class 184 Props: 5; + Class 185 + Class 186 + Class 187 Props: 6; + Class 188 Events: 1; + Class 189 + Class 190 + Class 191 Props: 1; + Class 192 + Class 193 + Class 194 + Class 195 + Class 196 Props: 11; + Class 197 + Class 198 + Class 199 + Class 200 Props: 1; + Class 201 Props: 3; + Class 202 Props: 2; + Class 203 Props: 4; + Class 204 Props: 6; + Class 205 + Class 206 Props: 2; + Class 207 + Class 208 + Class 209 + Class 210 Props: 2; + Class 211 + Class 212 Props: 4; + Class 213 Props: 3; + Class 214 + Class 215 Props: 3; + Class 216 Props: 6; + Class 217 + Class 218 + Class 219 Props: 1; + Class 220 Props: 2; + Class 221 + Class 222 + Class 223 Props: 5; + Class 224 + Class 225 + Class 226 + Class 227 + Class 228 + Class 229 + Class 230 + Class 231 + Class 232 Events: 1; + Class 233 Props: 2; + Class 234 Props: 4; + Class 235 + Class 236 + Class 237 + Class 238 Props: 1; + Class 239 + Class 240 Props: 2; + Class 241 Events: 2; Props: 8; + Class 242 + Class 243 + Class 244 + Class 245 + Class 246 Props: 9; + Class 247 Props: 1; + Class 248 + Class 249 Props: 5; + Class 250 + Class 251 Props: 1; + Class 252 + Class 253 + Class 254 + Class 255 + Class 256 + Class 257 + Class 258 + Class 259 + Class 260 + Class 261 + Method Implementations (total): 23 + Resolving local member refs: 0 -> 0 defs, 0 refs, 0 unresolved + Writing PE file + Signing file with strong name + Operation completed successfully + bin\Debug\Hyphen.dll + bin\Debug\Hyphen.pdb + bin\Debug\Hyphen.xml + bin\Debug\TabStripControlLibrary.dll + bin\Debug\TabStripControlLibrary.pdb + 5 Datei(en) kopiert. + === Deploying configuration... === + 1 Datei(en) kopiert. + === Deploying test plugins... === + PluginsToTest\Virtuoso.Miranda.Plugins.TestPlugin.dll + PluginsToTest\Virtuoso.Miranda.Plugins.TestPlugin.pdb + 2 Datei(en) kopiert. + 1>Die Erstellung des Projekts "C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Virtuoso.Hyphen\Virtuoso.Hyphen.vcxproj" ist abgeschlossen, Rebuild Ziel(e). + +Build erfolgreich. + +Verstrichene Zeit 00:00:00.89 diff --git a/Hyphen/Virtuoso.Hyphen/Docs/Readme.txt b/Hyphen/Virtuoso.Hyphen/Docs/Readme.txt new file mode 100644 index 0000000..04904e7 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Docs/Readme.txt @@ -0,0 +1,38 @@ +Hyphen plugin for Miranda - allows you to write managed plugins in Microsoft.NET languages. +You and an user must have the .NET FX 2.0 RTM installed in order to use and load this plugin. + +Disclaimer +================================================================================================================================================================================================================================================================================================ +Still beta, comes with no warranty. +Some features are not fully implemented yet, so expect exceptions and bugs. Some APIs may change in the future, no binary compatibility guaranteed. + + +API +================================================================================================================================================================================================================================================================================================ +Documentation is not done yet (because of the amount of changes Hyphen is going through) so you have to help yourself with VS (Express) IntelliSense, Object explorer, ildasm or Reflector. + +In a nutshell, you have to derive your plugins from the Virtuoso.Miranda.Plugins.MirandaPlugin class. Then, decorate your methods matching the Virtuoso.Miranda.Plugins.Callback delegate signature with the Virtuoso.Miranda.Plugins.ServiceFunction / EventHook attributes. +To declare menu items, decorate your plugin class with the Virtuoso.Miranda.Plugins.MenuItemDeclaration attributes. + +Hyphen.dll (Hyphen.dll and Virtuoso.Miranda.Plugins.dll were merged) +Partially written in IL assembler and C#; contains 3 unmanaged Miranda API exports. Represents a proxy between the unmanaged Miranda API and the .NET world. Instantiates the PluginManager class which does all the stuff. +This is the assembly you have to compile your plugins againts (just add the reference in the VS, but DON'T allow it to copy the assembly locally!). +This assembly contains the PluginManager class that loads/unloads plugins and provides elementary functionality to your managed plugins. +As far as the API uses non-CLS compliant features (unsigned data types, for example), you probably will not be able to interface with the API from VB.NET. + +To load your plugin, mark its assembly with the Virtuoso.Miranda.Plugins.ExposingPluginAttribute attribute and put it into the \plugins\managed folder. + + +Requirements +================================================================================================================================================================================================================================================================================================ +To compile the sample plugin, you will need MS Visual C# Express or thoroughbred Visual Studio 2005 installed. +.NET Framework 2.0 RTM is required to compile and LOAD managed plugins as well. + + +Licence +================================================================================================================================================================================================================================================================================================ +I will release the source under the LGPL licence as soon as the beta stage is left. + +Any questions or bugs found? You can reach me at ICQ 177-147-220 (GMT+1h) or deml.tomas@seznam.cz. +Enjoy! + diff --git a/Hyphen/Virtuoso.Hyphen/Icons/Engine.ico b/Hyphen/Virtuoso.Hyphen/Icons/Engine.ico new file mode 100644 index 0000000..521e141 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Icons/Engine.ico differ diff --git a/Hyphen/Virtuoso.Hyphen/Icons/Management.ico b/Hyphen/Virtuoso.Hyphen/Icons/Management.ico new file mode 100644 index 0000000..66705c3 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Icons/Management.ico differ diff --git a/Hyphen/Virtuoso.Hyphen/Icons/Thumbs.db b/Hyphen/Virtuoso.Hyphen/Icons/Thumbs.db new file mode 100644 index 0000000..5a56056 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Icons/Thumbs.db differ diff --git a/Hyphen/Virtuoso.Hyphen/Icons/User.ico b/Hyphen/Virtuoso.Hyphen/Icons/User.ico new file mode 100644 index 0000000..486a6af Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Icons/User.ico differ diff --git a/Hyphen/Virtuoso.Hyphen/LoaderStub.il b/Hyphen/Virtuoso.Hyphen/LoaderStub.il new file mode 100644 index 0000000..2143aea --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/LoaderStub.il @@ -0,0 +1,124 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +/***********************************************************************/ +/* DO NOT EDIT THIS FILE UNLESS YOU KNOW WHAT EXACTLY YOU ARE DOING */ +/***********************************************************************/ + +.assembly extern mscorlib +{ + .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) + .ver 2:0:0:0 +} + +.assembly extern System +{ + .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) + .ver 2:0:0:0 +} + +.corflags 0x00000002 + +.vtfixup [5] int32 fromunmanaged at VT +.data VT = int32[5] + +.field private static class Virtuoso.Hyphen.Loader Loader + +.method private static void LoaderInit() cil managed synchronized +{ + ldsfld class Virtuoso.Hyphen.Loader Loader + brtrue INITIALIZED + + call void Virtuoso.Hyphen.Loader::Initialize() + + call class Virtuoso.Hyphen.Loader Virtuoso.Hyphen.Loader::GetInstance() + stsfld class Virtuoso.Hyphen.Loader Loader + + INITIALIZED: + ret +} + +.method public static native int + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) MirandaPluginInfo(unsigned int32 version) cil managed +{ + .vtentry 1:1 + .export [1] as MirandaPluginInfo + + call void LoaderInit() + + ldsfld class Virtuoso.Hyphen.Loader Loader + ldarg.0 + + call instance native int Virtuoso.Hyphen.Loader::MirandaPluginInfo(unsigned int32) + ret +} + +// Miranda 0.7#20+ API +.method public static native int + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) MirandaPluginInfoEx(unsigned int32 version) cil managed +{ + .vtentry 1:2 + .export [2] as MirandaPluginInfoEx + + call void LoaderInit() + + ldsfld class Virtuoso.Hyphen.Loader Loader + ldarg.0 + + call instance native int Virtuoso.Hyphen.Loader::MirandaPluginInfoEx(unsigned int32) + ret +} + +// Miranda 0.7#20+ API +.method public static native int + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) MirandaPluginInterfaces() cil managed +{ + .vtentry 1:3 + .export [3] as MirandaPluginInterfaces + + call void LoaderInit() + + ldsfld class Virtuoso.Hyphen.Loader Loader + + call instance native int Virtuoso.Hyphen.Loader::MirandaPluginInterfaces() + ret +} + +.method public static int32 + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) Load(native int pluginLink) cil managed +{ + .vtentry 1:4 + .export [4] as Load + + ldsfld class Virtuoso.Hyphen.Loader Loader + ldarg.0 + + call instance int32 Virtuoso.Hyphen.Loader::Load(native int) + ret +} + +.method public static int32 + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) Unload() cil managed +{ + .vtentry 1:5 + .export [5] as Unload + + ldsfld class Virtuoso.Hyphen.Loader Loader + + call instance int32 Virtuoso.Hyphen.Loader::Unload() + ret +} \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Desktop.ini b/Hyphen/Virtuoso.Hyphen/Mini/Desktop.ini new file mode 100644 index 0000000..835c78e --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/Desktop.ini @@ -0,0 +1,6 @@ +[.ShellClassInfo] +IconFile=%SystemRoot%\system32\SHELL32.dll +IconIndex=19 +[.ShellClassInfo.A] +[.ShellClassInfo.W] +IconFile=+ACU-SystemDrive+ACUAXA-Nemazat+AFw-Tom+AOEBYQ-ovo+AFw-XP+AFw-Xp Icons+AFw-XP Folders3+AFw-My VB XP.ico diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Mini.il b/Hyphen/Virtuoso.Hyphen/Mini/Mini.il new file mode 100644 index 0000000..abdc7ba --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/Mini.il @@ -0,0 +1,232 @@ +/***********************************************************************\ + * Virtuoso.Miranda.Plugins (Hyphen) * + * Provides a managed wrapper for API of IM client Miranda. * + * Copyright (C) 2006-2009 virtuoso * + * deml.tomas@seznam.cz * + * * + * This library is free software; you can redistribute it and/or * + * modify it under the terms of the GNU Lesser General Public * + * License as published by the Free Software Foundation; either * + * version 2.1 of the License, or (at your option) any later version. * + * * + * This library is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * + * Lesser General Public License for more details. * +\***********************************************************************/ + +/***********************************************************************/ +/* DO NOT EDIT THIS FILE UNLESS YOU KNOW WHAT EXACTLY YOU ARE DOING */ +/***********************************************************************/ + +.assembly extern mscorlib +{ + .publickeytoken = (B7 7A 5C 56 19 34 E0 89) + .ver 2:0:0:0 +} + +.assembly extern System +{ + .publickeytoken = (B7 7A 5C 56 19 34 E0 89) + .ver 2:0:0:0 +} + +.assembly extern Hyphen as core + { + .publickeytoken = (87 bb 0d 20 45 1d fb 58) + .ver 0:8:5:1101 + } + +.module 'Virtuoso.Hyphen.Mini.dll' + +/* THIS REALLY MUST NOT BE CHANGED */ +/* First 3 numbers declare minimal supported version of Hyphen. */ +.assembly 'Virtuoso.Hyphen.Mini' +{ + .ver 0:8:5:0 +} + +/* THIS REALLY MUST NOT BE CHANGED */ +.corflags 0x00000002 + +.vtfixup [7] int32 fromunmanaged at VT +.data VT = int32[7] + +.field private static class [core]Virtuoso.Hyphen.Mini.Module Connection + +.method private static void Connect(bool ex) cil managed synchronized noinlining +{ + ldsfld class [core]Virtuoso.Hyphen.Mini.Module Connection + brtrue CONNECTED + + ldarg.0 + newobj instance void [core]Virtuoso.Hyphen.Mini.Module::.ctor(bool) + stsfld class [core]Virtuoso.Hyphen.Mini.Module Connection + + CONNECTED: + ret +} + +.method public static native int + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) MirandaPluginInfoThunk(unsigned int32 version) cil managed +{ + .vtentry 1:1 + .export [1] as MirandaPluginInfo + + .try { + // False, pre-0.7#20 API + ldc.i4.0 + + // Catch potential exceptions caused by loader incompatibility + call void Connect(bool) + leave.s SUCCESS + } + catch [mscorlib]System.Exception { + leave.s FAILURE + } + + SUCCESS: + // version + ldarg.0 + tail. call native int modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) MirandaPluginInfo(unsigned int32) + ret + + FAILURE: + ldc.i4.0 + ret +} + +.method public static native int + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) MirandaPluginInfoExThunk(unsigned int32 version) cil managed +{ + .vtentry 1:2 + .export [2] as MirandaPluginInfoEx + + .try { + // True, post-v0.7#20 API + ldc.i4.1 + + // Catch potential exceptions caused by loader incompatibility + call void Connect(bool) + leave.s SUCCESS + } + catch [mscorlib]System.Exception { + leave.s FAILURE + } + + SUCCESS: + // version + ldarg.0 + tail. call native int modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) MirandaPluginInfo(unsigned int32) + ret + + FAILURE: + ldc.i4.0 + ret +} + +.method private static native int + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) MirandaPluginInfo(unsigned int32 version) cil managed noinlining +{ + // this + ldsfld class [core]Virtuoso.Hyphen.Mini.Module Connection + + // version + ldarg.0 + + call instance native int [core]Virtuoso.Hyphen.Mini.Module::MirandaPluginInfo(unsigned int32) + ret +} + +.method public static native int + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) MirandaPluginInterfaces() cil managed +{ + .vtentry 1:3 + .export [3] as MirandaPluginInterfaces + + // this + ldsfld class [core]Virtuoso.Hyphen.Mini.Module Connection + + call instance native int [core]Virtuoso.Hyphen.Mini.Module::MirandaPluginInterfaces() + ret +} + +.method public static int32 + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) Load(native int pPluginLink) cil managed +{ + .vtentry 1:4 + .export [4] as Load + + ldsfld class [core]Virtuoso.Hyphen.Mini.Module Connection + ldarg.0 + + call instance int32 [core]Virtuoso.Hyphen.Mini.Module::Load(native int) + ret +} + +.method public static int32 + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) Unload() cil managed +{ + .vtentry 1:5 + .export [5] as Unload + + ldsfld class [core]Virtuoso.Hyphen.Mini.Module Connection + call instance int32 [core]Virtuoso.Hyphen.Mini.Module::Unload() + + ret +} + +/***************************************************************************************************************************/ +/* HELPERS */ +/***************************************************************************************************************************/ + +.method assembly static object[] NewVector(object) cil managed +{ + ldc.i4.1 + newarr [mscorlib]System.Object + dup + + ldc.i4.0 + ldarg.0 + + stelem.ref + ret +} + +/***************************************************************************************************************************/ +/* SPECIAL EXPORTS */ +/***************************************************************************************************************************/ + +/* CList Exports + * int CListInitialise(PLUGINLINK* pluginLink); */ +.method public static int32 + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) CListInitialise(native int pPluginLink) cil managed +{ + .vtentry 1:6 + .export [6] as CListInitialise + + ldarg.0 + call int32 modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) Load(native int) + + ret +} + + +/* DB Exports + * DATABASELINK* DatabasePluginInfo(void* reserved); */ +.method public static native int + modopt([mscorlib]System.Runtime.CompilerServices.CallConvCdecl) DatabasePluginInfo(native int pReserved) cil managed +{ + .vtentry 1:7 + .export [7] as DatabasePluginInfo + + ldsfld class [core]Virtuoso.Hyphen.Mini.Module Connection + ldstr "DatabasePluginInfo" + + ldarg.0 + box [mscorlib]System.IntPtr + call object[] NewVector(object) + + call instance !!0 [core]Virtuoso.Hyphen.Mini.Module::ExecuteCustomApiExport(string, object[]) + ret +} \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Mini.sdf b/Hyphen/Virtuoso.Hyphen/Mini/Mini.sdf new file mode 100644 index 0000000..0f1a695 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Mini/Mini.sdf differ diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Mini.sln b/Hyphen/Virtuoso.Hyphen/Mini/Mini.sln new file mode 100644 index 0000000..dacdebc --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/Mini.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Hyphen.Mini", "Mini.vcxproj", "{6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Debug|Win32.ActiveCfg = Debug|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Debug|Win32.Build.0 = Debug|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Release|Win32.ActiveCfg = Release|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Mini.v11.suo b/Hyphen/Virtuoso.Hyphen/Mini/Mini.v11.suo new file mode 100644 index 0000000..d8bc2a7 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Mini/Mini.v11.suo differ diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj new file mode 100644 index 0000000..e54cfa6 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj.DEML.Tomáš.user b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj.DEML.Tomáš.user new file mode 100644 index 0000000..97f26b0 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj.DEML.Tomáš.user @@ -0,0 +1,65 @@ + + + + + + + + + + + diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj.DEML1.Tomáš.user b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj.DEML1.Tomáš.user new file mode 100644 index 0000000..3c9fbbb --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj.DEML1.Tomáš.user @@ -0,0 +1,65 @@ + + + + + + + + + + + diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj.EFNM.Tomáš.user b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj.EFNM.Tomáš.user new file mode 100644 index 0000000..b1fdbb4 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcproj.EFNM.Tomáš.user @@ -0,0 +1,65 @@ + + + + + + + + + + + diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcxproj b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcxproj new file mode 100644 index 0000000..3d7f048 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcxproj @@ -0,0 +1,74 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + + Hyphen.Mini + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD} + ILTest + MakeFileProj + + + + Makefile + v110 + + + Makefile + v110 + + + + + + + + + + + + + <_ProjectFileVersion>11.0.50727.1 + + + E:\Root\Tomášovo\Development\C++\Miranda\BINARIES\LatestStable\Plugins\ + $(Configuration)\ + C:\Windows\Microsoft.NET\Framework\v2.0.50727\ilasm Mini.il /dll /pdb /key:Virtuoso.Hyphen.Mini.snk /output:bin\Hyphen.Mini.dll +REM copy bin\*.* "$(OutDir)*.*" + + cd bin\$(Configuration) +del *.dll +del *.pdb + $(OutDir)Mini.dll + WIN32;_DEBUG;$(NMakePreprocessorDefinitions) + + + E:\Root\Tomášovo\Development\C++\Miranda\BINARIES\LatestStable\Plugins\ + $(Configuration)\ + C:\Windows\Microsoft.NET\Framework\v2.0.50727\ilasm Mini.il /dll /pdb /key:Virtuoso.Hyphen.Mini.snk /output:bin\Hyphen.Mini.dll +REM copy bin\*.* "$(OutDir)*.*" + + cd bin\$(Configuration) +del *.dll +del *.pdb + $(OutDir)Mini.dll + WIN32;NDEBUG;$(NMakePreprocessorDefinitions) + + + + + + + + + + + \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcxproj.user b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcxproj.user new file mode 100644 index 0000000..7cbb321 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/Mini.vcxproj.user @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen/Mini/PublicKey.txt b/Hyphen/Virtuoso.Hyphen/Mini/PublicKey.txt new file mode 100644 index 0000000..2cb7572 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/PublicKey.txt @@ -0,0 +1,3 @@ +00240000048000009400000006020000002400005253413100040000010001005d9bd3582d0c01dcd54854ac2f36c94f7bef235b2e2b5479248efddd65431bceef6c92d759d7f23f3692704cd18f0c5b7ee3436a0f7b9b2eaf8fbf205b85150d171a0fbb7658fb50c1531f6eee3ec70239ae38ac383dd742a754691c965cc23cd716618b8c89b25ca04402ea4a579a66bdf50335e4b6d2b0c72bd183328487b5 + +Public key token is a201f919c878eac2 \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Release/Hyphen.dll b/Hyphen/Virtuoso.Hyphen/Mini/Release/Hyphen.dll new file mode 100644 index 0000000..311c431 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Mini/Release/Hyphen.dll differ diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Release/Mini.log b/Hyphen/Virtuoso.Hyphen/Mini/Release/Mini.log new file mode 100644 index 0000000..18f4a6d --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Mini/Release/Mini.log @@ -0,0 +1,31 @@ +Der Buildvorgang wurde am 11.03.2013 01:04:11 gestartet. + 1>Projekt "C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Virtuoso.Hyphen\Mini\Mini.vcxproj" auf Knoten "2", Build Ziel(e). + 1>Build: + C:\Windows\Microsoft.NET\Framework\v2.0.50727\ilasm Mini.il /dll /pdb /key:Virtuoso.Hyphen.Mini.snk /output:bin\Hyphen.Mini.dll + REM copy bin\*.* "E:\Root\Tomášovo\Development\C++\Miranda\BINARIES\LatestStable\Plugins\*.*" + + Microsoft (R) .NET Framework IL Assembler. Version 2.0.50727.6387 + Copyright (c) Microsoft Corporation. All rights reserved. + Assembling 'Mini.il' to DLL --> 'bin\Hyphen.Mini.dll' + Source file is ANSI + + Assembled global method Connect + Assembled global method MirandaPluginInfoThunk + Assembled global method MirandaPluginInfoExThunk + Assembled global method MirandaPluginInfo + Assembled global method MirandaPluginInterfaces + Assembled global method Load + Assembled global method Unload + Assembled global method NewVector + Assembled global method CListInitialise + Assembled global method DatabasePluginInfo + + ***** FAILURE ***** + error -- Failed to define a document writer + 1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.MakeFile.Targets(38,5): error MSB3073: Der Befehl "C:\Windows\Microsoft.NET\Framework\v2.0.50727\ilasm Mini.il /dll /pdb /key:Virtuoso.Hyphen.Mini.snk /output:bin\Hyphen.Mini.dll +C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V110\Microsoft.MakeFile.Targets(38,5): error MSB3073: REM copy bin\*.* "E:\Root\Tomášovo\Development\C++\Miranda\BINARIES\LatestStable\Plugins\*.*"" wurde mit dem Code 1 beendet. + 1>Die Erstellung des Projekts "C:\Users\netz\Desktop\Miranda\hyphen-read-only\tags\v0.8.3000.909\Virtuoso.Hyphen\Mini\Mini.vcxproj" ist abgeschlossen, Build Ziel(e) -- FEHLER. + +Fehler beim Buildvorgang. + +Verstrichene Zeit 00:00:00.12 diff --git a/Hyphen/Virtuoso.Hyphen/Mini/Virtuoso.Hyphen.Mini.snk b/Hyphen/Virtuoso.Hyphen/Mini/Virtuoso.Hyphen.Mini.snk new file mode 100644 index 0000000..cc5824e Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Mini/Virtuoso.Hyphen.Mini.snk differ diff --git a/Hyphen/Virtuoso.Hyphen/Mini/bin/Hyphen.Mini.dll b/Hyphen/Virtuoso.Hyphen/Mini/bin/Hyphen.Mini.dll new file mode 100644 index 0000000..10705cb Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Mini/bin/Hyphen.Mini.dll differ diff --git a/Hyphen/Virtuoso.Hyphen/Mini/bin/Hyphen.Mini.pdb b/Hyphen/Virtuoso.Hyphen/Mini/bin/Hyphen.Mini.pdb new file mode 100644 index 0000000..b2007db Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Mini/bin/Hyphen.Mini.pdb differ diff --git a/Hyphen/Virtuoso.Hyphen/Miranda Perf Counters.msc b/Hyphen/Virtuoso.Hyphen/Miranda Perf Counters.msc new file mode 100644 index 0000000..3935745 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Miranda Perf Counters.msc @@ -0,0 +1,871 @@ + + + {55BB23E9-01F5-4B97-823B-7DEEFB4AED96} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {C96401CF-0E17-11D3-885B-00C04F72C717} + + + + + + {C96401CF-0E17-11D3-885B-00C04F72C717} + + + + + + + + + + + + + + + + + + + + + + + {C96401CC-0E17-11D3-885B-00C04F72C717} + + + + + + + + + + + + {00000000-0000-0000-0000-000000000000} + + + + {00000000-0000-0000-0000-000000000000} + + + + + + + {71E5B33E-1064-11D2-808F-0000F875A9CE} + + Kořenový adresář konzoly + Sledování systému + Výstrahy a protokolování výkonu + Výkon + Oblíbené položky + {C4D2D8E0-D1DD-11CE-940F-008029004347} + + + + + +SUwBAQEAAgAEACAAIAD/////EQD//////////0JNNgAAAAAAAAA2AAAAKAAAAIAAAAAgAAAAAQAQ +AAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +EEIQQhBCEEIQQhBCEEIQQhBCEEIQQhBCEEIQQhBCEEIQQhBCEEIQQhBCEEIQQhBCAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEL/fxhjGGMYYxhjGGMYYxhjGGMYYxhjGGMYYxhjGGMY +YxhjGGMYY+AD4AMAABBCEEIYYxBCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBC/38Y +YxBC/3//f/9//3//f/9//3//f/9//3//f/9//3//f/9//3//f/9/AAAAABBCGGMQQgAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQQv9/GGMQQgAAEEIQQhBCEEIQQhBCEEIQQhBCEEIQQhBC +EEIQQhBCEEIAABBCAAAQQhhjEEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEL/fxhj +EEIAABhjGGMYYxhjGGMAfBhjGGMYYxhjGGMYYxhjGGMYYwAA4H/gfwAAEEIYYxBCAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAABBC/38YYxBCAAD/f/9//3//f/9/AHwAfP9//3//f/9//3// +f/9/AADgfwAA4H8AAP9/GGMQQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQQv9/GGMQ +QgAAAHwAfBhjGGMYYwB8GGMAfBhjGGMYYxhjAHwAAOB/4H/gfwAAEEL/fxhjEEIAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAEEL/fxhjEEIAAP9//38AfP9/AHwAfP9/AHz/f/9//38AfAAA +4H8AAOB/AAAAfBBC/38YYxBCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBC/38YYxBC +AAAYYxhjGGMAfBhjAHwYYwB8AHwYYwB8AADgf+B/4H8AAAB8GGMQQv9/GGMQQgAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAQQv9/GGMQQgAAHwD/f/9//3//fwB8/3//fwB8/38AAOB/AADg +fwAA/38AfP9/EEL/fxhjEEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEL/fxhjEEIA +ABhjHwAYYxhjGGMAfBhjGGMAfAAA4H/gf+B/AAAYYxhjAHwYYxBC/38YYxBCAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAABBC/38YYxBCAAD/f/9/HwD/f/9/AHz/f/9/AADgfwAA4H8AAB8A +/3//f/9//38QQv9/GGMQQgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQQv9/GGMQQgAA +GGMYYx8AGGMfAAB8GGMAAOB/4H/gfwAAGGMYYx8AHwAYYxhjEEL/fxhjEEIAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAEEL/fxhjEEIAAP9//3//fx8A/38AfAAA4H8AAOB/AAD/f/9//3// +fx8A/38fABBC/38YYxBCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBC/38YYxBCAAAY +YxhjGGMfABhjAADgf+B/4H8AAB8AGGMYYxhjGGMfAB8AGGMQQv9/GGMQQgAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAQQv9/GGMQQgAA/3//f/9//38AAOB/AADgfwAA/38fAP9//3//f/9/ +HwD/f/9/EEL/fxhjEEIAABhjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEL/fxhjEEIAABhj +GGMYYwAA4H/gf+B/AAAYYxhjGGMYYxhjGGMYYxhjGGMYYxBC/38YYxBCAAAAABhjAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAABBC/38YYxBCAAAAAAAAAADgfwAA4H8AAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAP9/GGMQQgAAAAAQQhhjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQQv9/GGMQQhBCEEIQ +QgAA4H/gfwAAEEIQQhBCEEIQQhBCEEIQQhBCEEIQQhBCEEIYYxhjEEIAAAAAAAAYYwAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAEEL/fxhjGGMYYxBCAAAAABBCAAAYYxhjGGMYYxhjGGMYYxhjGGMYYxhj +GGMYYxhjGGMYYxBCAAAAAAAAGGMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEL/f/9/EEIAABhj +AAAQQhBCAAD/f/9//3//f/9//3//f/9//3//f/9//3//f/9//38AAAAAAAAAABhjAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAEEIQQgAAGGP/fxhjAAAQQhBCEEIQQhBCEEIQQhBCEEIQQhBCEEIQ +QhBCEEIQQhBCAAAAAAAAEEIYYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBCAAAYY/9/GGP/ +fxhjAAAQQhBCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEIQQhhjAAAQQgAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAEEIAABhj/38YY/9/GGP/fxhjAAAQQgAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAGGMAAAAAAAAYYwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQQgAAGGP/fxhj/38YY/9/ +GGMAAP9/EEIAAAAAAAAAABhjAAAAAAAAAAAAAAAAAAAAABBCGGMAABBCGGMAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAEEIYY/9/GGP/fxhj/38YYwAA/3//fxBCAAAAAAAAAAAYYxBCAAAAAAAAAAAA +AAAAEEIAAAAAAAAYYwAAEEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEIYY/9/GGP/fxhjAAD/ +f/9/EEIAAAAAAAAAAAAAGGMQQhBCAAAAAAAAAAAAAAAAAAAAAAAAGGMAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAEEIYY/9/GGMAAP9//38QQgAAAAAAAAAAAAAAAAAAGGMYYxBCEEIQQhBC +EEIQQhBCEEIQQhBCEEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEIYYwAA/3//fxBC +AAAAAAAAAAAAAAAAAAAAAAAAAAAYYxhjGGMYYxhjGGMYYxhjGGMYYxBCEEIAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAEEL/f/9/EEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAGGMQQhBCEEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEIQQgAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGGMQQhhjAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAQk0+AAAAAAAAAD4AAAAoAAAAgAAAACAAAAABAAEAAAAAAAACAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAP///wDAAAA/AAAAAAAAAAAAAAAAgAAAHwAAAAAAAAAAAAAAAAAAAA8AAAAAAAAA +AAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAP +AAAAAAAAAAAAAAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAA +AAAAAAAADwAAAAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAADwAA +AAAAAAAAAAAAAAAAAA8AAAAAAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAA +AAAAAAkAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAwAAAAA +AAAAAAAAAACAAAAcAAAAAAAAAAAAAAAAwAAAOAAAAAAAAAAAAAAAAMAP/+AAAAAAAAAAAAAAAACA +D7+ZAAAAAAAAAAAAAAAAAA8/kQAAAAAAAAAAAAAAAAAPH3EAAAAAAAAAAAAAAACAHwADAAAAAAAA +AAAAAAAAwD+AAQAAAAAAAAAAAAAAAOB/4AAAAAAAAAAAAAAAAADw///wAAAAAAAAAAAAAAAA+f// ++AAAAAAAAAAAAAAAAA== + + +SUwBAQEAAgAEABAAEAD/////EQD//////////0JNNgAAAAAAAAA2AAAAKAAAAEAAAAAQAAAAAQAQ +AAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEIYYxhjGGMYYxhjGGMYYxhj +GGMYYwAAGGMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQQhhj +AAD/f/9/AHwAfP9//3//fwAA4H8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAABBCGGMAAAB8AHwAfP9/AHz/fwAA4H8QQv9/AAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEIYYwAA/3//fwB8/38AfAAA4H/gfxBC/38AAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQQhhjAAAfAP9/AHz/fwAA4H8Q +QgB8EEL/fwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBCGGMA +AB8A/38AfAAA4H/gfx8AAHwQQv9/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAEEIYYwAA/38fAAAA4H8QQh8A/3//fxBC/38AAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQQhhjAAAYYwAA4H/gfxhjHwAYYx8AEEL/fwAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBCGGMAAAAA4H8QQgAAAAAAAAAA +AAAAAP9/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEIYYxBC +AAAQQhBCGGMYYxhjGGMYYxhjGGMAABhjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAEEIYYxBCAAAQQhBCEEIQQhBCEEIQQgAAEEIAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAABBCEEIYY/9/EEIAAAAAAAAQQgAAAAAAAAAAAAAQQgAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEEIYY/9/EEL/fwAAAAAAAAAAEEIA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABBCEEL/ +fxBCAAAAAAAAAAAAABBCEEIQQhBCEEIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAQQhBCAAAAAAAAAAAAAAAAAAAAAAAAAAAQQgAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAQk0+AAAAAAAAAD4AAAAoAAAAQAAAABAAAAABAAEAAAAAAIAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wCABwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAwAAAAAA +AAADAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAABAAAAAAAAAAIAAAAAAAAAAgAAAAAAAAAAAAAAAAAA +gAQAAAAAAAADPAAAAAAAAAOBAAAAAAAAh8AAAAAAAADP/AAAAAAAAA== + + +SUwBAQIAAwAEABAAEAD/////CRD//////////0JNNgQAAAAAAAA2BAAAKAAAAEAAAAAQAAAAAQAI +AAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAADAwMAA +wNzAAPDKpgAzAAAAAAAzADMAMwAzMwAAFhYWABwcHAAiIiIAKSkpAFVVVQBNTU0AQkJCADk5OQCA +fP8AUFD/AJMA1gD/7MwAxtbvANbn5wCQqa0AAP8zAAAAZgAAAJkAAADMAAAzAAAAMzMAADNmAAAz +mQAAM8wAADP/AABmAAAAZjMAAGZmAABmmQAAZswAAGb/AACZAAAAmTMAAJlmAACZmQAAmcwAAJn/ +AADMAAAAzDMAAMxmAADMmQAAzMwAAMz/AAD/ZgAA/5kAAP/MADP/AAD/ADMAMwBmADMAmQAzAMwA +MwD/AP8zAAAzMzMAMzNmADMzmQAzM8wAMzP/ADNmAAAzZjMAM2ZmADNmmQAzZswAM2b/ADOZAAAz +mTMAM5lmADOZmQAzmcwAM5n/ADPMAAAzzDMAM8xmADPMmQAzzMwAM8z/ADP/MwAz/2YAM/+ZADP/ +zAAz//8AZgAAAGYAMwBmAGYAZgCZAGYAzABmAP8AZjMAAGYzMwBmM2YAZjOZAGYzzABmM/8AZmYA +AGZmMwBmZmYAZmaZAGZmzABmmQAAZpkzAGaZZgBmmZkAZpnMAGaZ/wBmzAAAZswzAGbMmQBmzMwA +Zsz/AGb/AABm/zMAZv+ZAGb/zADMAP8A/wDMAJmZAACZM5kAmQCZAJkAzACZAAAAmTMzAJkAZgCZ +M8wAmQD/AJlmAACZZjMAmTNmAJlmmQCZZswAmTP/AJmZMwCZmWYAmZmZAJmZzACZmf8AmcwAAJnM +MwBmzGYAmcyZAJnMzACZzP8Amf8AAJn/MwCZzGYAmf+ZAJn/zACZ//8AzAAAAJkAMwDMAGYAzACZ +AMwAzACZMwAAzDMzAMwzZgDMM5kAzDPMAMwz/wDMZgAAzGYzAJlmZgDMZpkAzGbMAJlm/wDMmQAA +zJkzAMyZZgDMmZkAzJnMAMyZ/wDMzAAAzMwzAMzMZgDMzJkAzMzMAMzM/wDM/wAAzP8zAJn/ZgDM +/5kAzP/MAMz//wDMADMA/wBmAP8AmQDMMwAA/zMzAP8zZgD/M5kA/zPMAP8z/wD/ZgAA/2YzAMxm +ZgD/ZpkA/2bMAMxm/wD/mQAA/5kzAP+ZZgD/mZkA/5nMAP+Z/wD/zAAA/8wzAP/MZgD/zJkA/8zM +AP/M/wD//zMAzP9mAP//mQD//8wAZmb/AGb/ZgBm//8A/2ZmAP9m/wD//2YAIQClAF9fXwB3d3cA +hoaGAJaWlgDLy8sAsrKyANfX1wDd3d0A4+PjAOrq6gDx8fEA+Pj4APD7/wCkoKAAgICAAAAA/wAA +/wAAAP//AP8AAAD/AP8A//8AAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADsAAAAAAAAAAAAAAAAAAAA7AAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOz/BwAA7P8HBwcHBwcH7ADs/wcA +AOz/BwcHBwcHB+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs//8A7Oz/BwcHBwcH +B+wA7P//AOzs/wcHBwcHBwfsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOzsAADs +/wcHBwcHBwfsAADs7AAA7P8HBwcHBwcH7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAA7P8HBwcHBwcH7AAAAAAAAOz/BwcHBwcHB+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAOz/BwcHBwcHB+wAAAAAAADs/wcHBwcHBwfsAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAA7P8HAADs/wcHBwcHBwfsAOz/BwAA7P8HBwcHBwcH7AAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOz//wDs7P//////////7ADs//8A7Oz//////////+wAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7OwAAOzs7Ozs7Ozs7OwAAOzsAADs7Ozs7Ozs +7OzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7OzsBwDs7OzsAAAAAAAA +AOzs7AcA7Ozs7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOwAAAAA +AAAAAAAAAAAAAADsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAADs/wcAAAAAAAAAAAAAAAAA7P8HAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAA7P//AAAAAAAAAAAAAAAAAOz//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs7AAAAAAAAAAAAAAAAAAA7OwAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAQk0+AAAAAAAAAD4AAAAoAAAAQAAAABAAAAABAAEAAAAAAIAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD/////AAAAAJgAmAAAAAAAAAAAAAAAAAAAAAAAAAAA +AJgAmAAAAAAA+AD4AAAAAACYAJgAAAAAAAAAAAAAAAAAAAAAAAAAAACYAJgAAAAAAPwA/AAAAAAA +/5//nwAAAAD/n/+fAAAAAP8P/w8AAAAA/w//DwAAAAD/n/+fAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAA= + + +SUwBAQEAAgAEACAAIAD/////CRD//////////0JNNgQAAAAAAAA2BAAAKAAAAIAAAAAgAAAAAQAI +AAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAADAwMAA +wNzAAPDKpgAzAAAAAAAzADMAMwAzMwAAFhYWABwcHAAiIiIAKSkpAFVVVQBNTU0AQkJCADk5OQCA +fP8AUFD/AJMA1gD/7MwAxtbvANbn5wCQqa0AAP8zAAAAZgAAAJkAAADMAAAzAAAAMzMAADNmAAAz +mQAAM8wAADP/AABmAAAAZjMAAGZmAABmmQAAZswAAGb/AACZAAAAmTMAAJlmAACZmQAAmcwAAJn/ +AADMAAAAzDMAAMxmAADMmQAAzMwAAMz/AAD/ZgAA/5kAAP/MADP/AAD/ADMAMwBmADMAmQAzAMwA +MwD/AP8zAAAzMzMAMzNmADMzmQAzM8wAMzP/ADNmAAAzZjMAM2ZmADNmmQAzZswAM2b/ADOZAAAz +mTMAM5lmADOZmQAzmcwAM5n/ADPMAAAzzDMAM8xmADPMmQAzzMwAM8z/ADP/MwAz/2YAM/+ZADP/ +zAAz//8AZgAAAGYAMwBmAGYAZgCZAGYAzABmAP8AZjMAAGYzMwBmM2YAZjOZAGYzzABmM/8AZmYA +AGZmMwBmZmYAZmaZAGZmzABmmQAAZpkzAGaZZgBmmZkAZpnMAGaZ/wBmzAAAZswzAGbMmQBmzMwA +Zsz/AGb/AABm/zMAZv+ZAGb/zADMAP8A/wDMAJmZAACZM5kAmQCZAJkAzACZAAAAmTMzAJkAZgCZ +M8wAmQD/AJlmAACZZjMAmTNmAJlmmQCZZswAmTP/AJmZMwCZmWYAmZmZAJmZzACZmf8AmcwAAJnM +MwBmzGYAmcyZAJnMzACZzP8Amf8AAJn/MwCZzGYAmf+ZAJn/zACZ//8AzAAAAJkAMwDMAGYAzACZ +AMwAzACZMwAAzDMzAMwzZgDMM5kAzDPMAMwz/wDMZgAAzGYzAJlmZgDMZpkAzGbMAJlm/wDMmQAA +zJkzAMyZZgDMmZkAzJnMAMyZ/wDMzAAAzMwzAMzMZgDMzJkAzMzMAMzM/wDM/wAAzP8zAJn/ZgDM +/5kAzP/MAMz//wDMADMA/wBmAP8AmQDMMwAA/zMzAP8zZgD/M5kA/zPMAP8z/wD/ZgAA/2YzAMxm +ZgD/ZpkA/2bMAMxm/wD/mQAA/5kzAP+ZZgD/mZkA/5nMAP+Z/wD/zAAA/8wzAP/MZgD/zJkA/8zM +AP/M/wD//zMAzP9mAP//mQD//8wAZmb/AGb/ZgBm//8A/2ZmAP9m/wD//2YAIQClAF9fXwB3d3cA +hoaGAJaWlgDLy8sAsrKyANfX1wDd3d0A4+PjAOrq6gDx8fEA+Pj4APD7/wCkoKAAgICAAAAA/wAA +/wAAAP//AP8AAAD/AP8A//8AAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOz/BwcHBwcHBwcHBwcHBwcHBwcHAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P8HBwcAAAcHBwAA +AAAAAAAHBwcA7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOzs7AAA +AADs/wAAAAMDAAAAB/rs7Ozs7AAHBwDsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAOzsBwfs7AAAAOz/7Ozs+wMA7Oz////////sAAcHAOwAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAA7P//BwcA7AcH7P8HBwfsAAcH7AAAAAAAAOwABwcA7AAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs////B+wA7Ozs/wcHB+wABwfsBwcH +7AcHAAcHBwDsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs//8HAAAA +AOz/BwcAAAAAAOz/AAYGAAcABwcHAOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAADs7OwAAAAA7P8H7Af67Ozs7P8A/gYGBwAHBwcA7AAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs/wfs///////s/wAAAAAHAAcHBwDsAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOz/B+wAAAAAAOz///// +//8ABwcHAOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs7OwAAAAA +7P8H7AcHBwcH7Ozs7Ozs7OwHBwcA7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAADs7AcH7OwAAADs/wfs/wD8/PwHAAcHBwcHBwcHBwDsAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAOz//wcHAOwHB+z/B+z/AP78/AcABwcHBwcHBwcHAOwAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P///wfsAOzs7P8H7P8AAAAABwAHBwcH +BwcHBwcA7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P//BwAAAADs +/wfs////////AAcHBwcHBwcHBwDsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAA7OzsAAAAAOz////s7Ozs7Ozs////////////AOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OwA7AAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7AcHBwcHBwcH7AcABwcH +BwcHBwcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +7Ozs7Ozs7OzsBwDs7Ozs7Ozs7OwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOwHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOwAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADsAOwAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAADsBwcH7OwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAOz//wcH7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P///wfsAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P//BwAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAA7OzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAQk0+AAAAAAAAAD4AAAAoAAAAgAAAACAAAAABAAEAAAAAAAACAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAP///wD/////AAAAAAAAAAAAAAAA/////wAAAAAAAAAAAAAAAP////8A +AAAAAAAAAAAAAAD/gAADAAAAAAAAAAAAAAAA/4AAAQAAAAAAAAAAAAAAAMeAAAAAAAAAAAAAAAAA +AACDgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAg4AAAAAAAAAAAAAAAAAAAMeAAAAAAAAAAAAAAAAAAAD/gAAAAAAAAAAAAAAAAAAA +x4AAAAAAAAAAAAAAAAAAAIOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAACDgAAAAAAAAAAAAAAAAAAAx4AAAAAAAAAAAAAAAAAAAP+A +AAAAAAAAAAAAAAAAAAD/wAAAAAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAAAAAAP//4/8AAAAAAAAA +AAAAAAD//+P/AAAAAAAAAAAAAAAA///B/wAAAAAAAAAAAAAAAP//gP8AAAAAAAAAAAAAAAD//4D/ +AAAAAAAAAAAAAAAA//+A/wAAAAAAAAAAAAAAAP//wf8AAAAAAAAAAAAAAAD//+P/AAAAAAAAAAAA +AAAA/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + +AQAAABQAAAAAAAAAAgAAAAYAAAA= + + +0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAA +EAAAAgAAAAEAAAD+////AAAAAAAAAAD///////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +///////////////////////////////////////////////////////////////////////////9 +/////v////7///8EAAAABQAAAAYAAAAHAAAACAAAAAkAAAD+//////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +/////////////////////////////////////////////////////////////////////////1IA +bwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBIBF4lQsYB +AwAAAMANAAAAAAAAbwBjAHgAXwBzAHQAcgBlAGEAbQBvAHIAcwB0AG8AcgBhAGcAZQAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAACgAAgH///////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAvw0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////////////wAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////// +////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAA +AAIAAAADAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAA +EAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAAAe +AAAAHwAAACAAAAAhAAAAIgAAACMAAAAkAAAAJQAAACYAAAAnAAAAKAAAACkAAAAqAAAAKwAAACwA +AAAtAAAALgAAAC8AAAAwAAAAMQAAADIAAAAzAAAANAAAADUAAAA2AAAA/v////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////8DAAYA +eFsAAOs0AABkAAAAZAAAAAAAAAD//////////wAAAAAAAAAA/////wAAAAAAAIA/AwAAAAAAAAAA +AAAADwAAgAAAAAAPAACAAQAAAAAAAAAAAAAAAAAAAP////////9//////wAAAACAgIAA/wAAAAAA +AAD/////AAAAAAAAAAD/////AAAAAAEAAAABAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHuAACQAaQsAgAGVGFob21hAAAtAAAAVwAAAM8A +AAA9AAAANAAAADQAAABMAAAAAAAAAHgAIACAgAAAAQAAAAAAAAD///9/NAAAAFwAXABEAEUATQBM +AFwALgBOAEUAVAAgAEMATABSACAATQBlAG0AbwByAHkAKABfAEcAbABvAGIAYQBsAF8AKQBcACMA +IABvAGYAIABQAGkAbgBuAGUAZAAgAE8AYgBqAGUAYwB0AHMAAICAAAEAAAAAAAAA////fy0AAABc +AFwARABFAE0ATABcAC4ATgBFAFQAIABDAEwAUgAgAE0AZQBtAG8AcgB5ACgAXwBHAGwAbwBiAGEA +bABfACkAXAAjACAARwBDACAASABhAG4AZABsAGUAcwAAQAAAAQAAAAAAAAD///9/OAAAAFwAXABE +AEUATQBMAFwALgBOAEUAVAAgAEMATABSACAATQBlAG0AbwByAHkAKABfAEcAbABvAGIAYQBsAF8A +KQBcACMAIABvAGYAIABTAGkAbgBrACAAQgBsAG8AYwBrAHMAIABpAG4AIAB1AHMAZQAAAAAAAQAA +AAAAAAD///9/NAAAAFwAXABEAEUATQBMAFwALgBOAEUAVAAgAEMATABSACAATQBlAG0AbwByAHkA +KABfAEcAbABvAGIAYQBsAF8AKQBcACMAIABHAGUAbgAgADAAIABDAG8AbABsAGUAYwB0AGkAbwBu +AHMAAICAAAEAAAAAAAAA////fzQAAABcAFwARABFAE0ATABcAC4ATgBFAFQAIABDAEwAUgAgAE0A +ZQBtAG8AcgB5ACgAXwBHAGwAbwBiAGEAbABfACkAXAAjACAARwBlAG4AIAAxACAAQwBvAGwAbABl +AGMAdABpAG8AbgBzAABAAAABAAAAAAAAAP///380AAAAXABcAEQARQBNAEwAXAAuAE4ARQBUACAA +QwBMAFIAIABNAGUAbQBvAHIAeQAoAF8ARwBsAG8AYgBhAGwAXwApAFwAIwAgAEcAZQBuACAAMgAg +AEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAAgAAAAgAAAAAAAAD///9/LQAAAFwAXABEAEUATQBMAFwA +LgBOAEUAVAAgAEMATABSACAATQBlAG0AbwByAHkAKABfAEcAbABvAGIAYQBsAF8AKQBcACMAIABJ +AG4AZAB1AGMAZQBkACAARwBDAP//AAACAAAAAAAAAP///387AAAAXABcAEQARQBNAEwAXAAuAE4A +RQBUACAAQwBMAFIAIABNAGUAbQBvAHIAeQAoAF8ARwBsAG8AYgBhAGwAXwApAFwAUAByAG8AbQBv +AHQAZQBkACAATQBlAG0AbwByAHkAIABmAHIAbwBtACAARwBlAG4AIAAwAAD//wACAAAAAAAAAP// +/38wAAAAXABcAEQARQBNAEwAXAAuAE4ARQBUACAAQwBMAFIAIABNAGUAbQBvAHIAeQAoAF8ARwBs +AG8AYgBhAGwAXwApAFwARwBlAG4AIAAwACAAaABlAGEAcAAgAHMAaQB6AGUAgIAAAAEAAAAAAAAA +////fzAAAABcAFwARABFAE0ATABcAC4ATgBFAFQAIABDAEwAUgAgAE0AZQBtAG8AcgB5ACgAXwBH +AGwAbwBiAGEAbABfACkAXABHAGUAbgAgADEAIABoAGUAYQBwACAAcwBpAHoAZQBAQEAAAgAAAAAA +AAD///9/MAAAAFwAXABEAEUATQBMAFwALgBOAEUAVAAgAEMATABSACAATQBlAG0AbwByAHkAKABf +AEcAbABvAGIAYQBsAF8AKQBcAEcAZQBuACAAMgAgAGgAZQBhAHAAIABzAGkAegBlAICAAAACAAAA +AAAAAP///383AAAAXABcAEQARQBNAEwAXAAuAE4ARQBUACAAQwBMAFIAIABNAGUAbQBvAHIAeQAo +AF8ARwBsAG8AYgBhAGwAXwApAFwATABhAHIAZwBlACAATwBiAGoAZQBjAHQAIABIAGUAYQBwACAA +cwBpAHoAZQCAAIAAAQAAAAAAAAD///9/NQAAAFwAXABEAEUATQBMAFwALgBOAEUAVAAgAEMATABS +ACAATQBlAG0AbwByAHkAKABtAGkAcgBhAG4AZABhADMAMgApAFwAIwAgAG8AZgAgAFAAaQBuAG4A +ZQBkACAATwBiAGoAZQBjAHQAcwBAAAAAAQAAAAAAAAD///9/LgAAAFwAXABEAEUATQBMAFwALgBO +AEUAVAAgAEMATABSACAATQBlAG0AbwByAHkAKABtAGkAcgBhAG4AZABhADMAMgApAFwAIwAgAEcA +QwAgAEgAYQBuAGQAbABlAHMAAABAAAEAAAAAAAAA////fzkAAABcAFwARABFAE0ATABcAC4ATgBF +AFQAIABDAEwAUgAgAE0AZQBtAG8AcgB5ACgAbQBpAHIAYQBuAGQAYQAzADIAKQBcACMAIABvAGYA +IABTAGkAbgBrACAAQgBsAG8AYwBrAHMAIABpAG4AIAB1AHMAZQD/AAAAAgAAAAAAAAD///9/NQAA +AFwAXABEAEUATQBMAFwALgBOAEUAVAAgAEMATABSACAATQBlAG0AbwByAHkAKABtAGkAcgBhAG4A +ZABhADMAMgApAFwAIwAgAEcAZQBuACAAMAAgAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwBAAAAAAQAA +AAAAAAD///9/NQAAAFwAXABEAEUATQBMAFwALgBOAEUAVAAgAEMATABSACAATQBlAG0AbwByAHkA +KABtAGkAcgBhAG4AZABhADMAMgApAFwAIwAgAEcAZQBuACAAMQAgAEMAbwBsAGwAZQBjAHQAaQBv +AG4AcwAAAEAAAQAAAAAAAAD///9/NQAAAFwAXABEAEUATQBMAFwALgBOAEUAVAAgAEMATABSACAA +TQBlAG0AbwByAHkAKABtAGkAcgBhAG4AZABhADMAMgApAFwAIwAgAEcAZQBuACAAMgAgAEMAbwBs +AGwAZQBjAHQAaQBvAG4AcwAAAP8AAgAAAAAAAAD///9/LgAAAFwAXABEAEUATQBMAFwALgBOAEUA +VAAgAEMATABSACAATQBlAG0AbwByAHkAKABtAGkAcgBhAG4AZABhADMAMgApAFwAIwAgAEkAbgBk +AHUAYwBlAGQAIABHAEMA/wD/AAIAAAAAAAAA////fzwAAABcAFwARABFAE0ATABcAC4ATgBFAFQA +IABDAEwAUgAgAE0AZQBtAG8AcgB5ACgAbQBpAHIAYQBuAGQAYQAzADIAKQBcAFAAcgBvAG0AbwB0 +AGUAZAAgAE0AZQBtAG8AcgB5ACAAZgByAG8AbQAgAEcAZQBuACAAMACAAAAAAgAAAAAAAAD///9/ +MQAAAFwAXABEAEUATQBMAFwALgBOAEUAVAAgAEMATABSACAATQBlAG0AbwByAHkAKABtAGkAcgBh +AG4AZABhADMAMgApAFwARwBlAG4AIAAwACAAaABlAGEAcAAgAHMAaQB6AGUAgACAAAEAAAAAAAAA +////fzEAAABcAFwARABFAE0ATABcAC4ATgBFAFQAIABDAEwAUgAgAE0AZQBtAG8AcgB5ACgAbQBp +AHIAYQBuAGQAYQAzADIAKQBcAEcAZQBuACAAMQAgAGgAZQBhAHAAIABzAGkAegBlAAAAgAACAAAA +AAAAAP///38xAAAAXABcAEQARQBNAEwAXAAuAE4ARQBUACAAQwBMAFIAIABNAGUAbQBvAHIAeQAo +AG0AaQByAGEAbgBkAGEAMwAyACkAXABHAGUAbgAgADIAIABoAGUAYQBwACAAcwBpAHoAZQCAAIAA +AgAAAAAAAAD///9/OAAAAFwAXABEAEUATQBMAFwALgBOAEUAVAAgAEMATABSACAATQBlAG0AbwBy +AHkAKABtAGkAcgBhAG4AZABhADMAMgApAFwATABhAHIAZwBlACAATwBiAGoAZQBjAHQAIABIAGUA +YQBwACAAcwBpAHoAZQAAgIAAAgAAAAAAAAD///9/LQAAAFwAXABEAEUATQBMAFwALgBOAEUAVAAg +AEMATABSACAASQBuAHQAZQByAG8AcAAoAG0AaQByAGEAbgBkAGEAMwAyACkAXAAjACAAbwBmACAA +UwB0AHUAYgBzAEAAAAACAAAAAAAAAP///38zAAAAXABcAEQARQBNAEwAXAAuAE4ARQBUACAAQwBM +AFIAIABJAG4AdABlAHIAbwBwACgAbQBpAHIAYQBuAGQAYQAzADIAKQBcACMAIABvAGYAIABtAGEA +cgBzAGgAYQBsAGwAaQBuAGcAzwAAAD0AAAA0AAAAabAAAAAAAAAAx4AAAAAAAAAAAAAAAAAAAP+A +AAAAAAAAAAAAAAAAAAD/wAAAAAAAAAAAAAAAAAAA/+AAAAAAAAAAAAAAAAAAAA== + + +SUwBAQIAAwAEABAAEAD/////CRD//////////0JNNgQAAAAAAAA2BAAAKAAAAEAAAAAQAAAAAQAI +AAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAADAwMAA +wNzAAPDKpgAzAAAAAAAzADMAMwAzMwAAFhYWABwcHAAiIiIAKSkpAFVVVQBNTU0AQkJCADk5OQCA +fP8AUFD/AJMA1gD/7MwAxtbvANbn5wCQqa0AAP8zAAAAZgAAAJkAAADMAAAzAAAAMzMAADNmAAAz +mQAAM8wAADP/AABmAAAAZjMAAGZmAABmmQAAZswAAGb/AACZAAAAmTMAAJlmAACZmQAAmcwAAJn/ +AADMAAAAzDMAAMxmAADMmQAAzMwAAMz/AAD/ZgAA/5kAAP/MADP/AAD/ADMAMwBmADMAmQAzAMwA +MwD/AP8zAAAzMzMAMzNmADMzmQAzM8wAMzP/ADNmAAAzZjMAM2ZmADNmmQAzZswAM2b/ADOZAAAz +mTMAM5lmADOZmQAzmcwAM5n/ADPMAAAzzDMAM8xmADPMmQAzzMwAM8z/ADP/MwAz/2YAM/+ZADP/ +zAAz//8AZgAAAGYAMwBmAGYAZgCZAGYAzABmAP8AZjMAAGYzMwBmM2YAZjOZAGYzzABmM/8AZmYA +AGZmMwBmZmYAZmaZAGZmzABmmQAAZpkzAGaZZgBmmZkAZpnMAGaZ/wBmzAAAZswzAGbMmQBmzMwA +Zsz/AGb/AABm/zMAZv+ZAGb/zADMAP8A/wDMAJmZAACZM5kAmQCZAJkAzACZAAAAmTMzAJkAZgCZ +M8wAmQD/AJlmAACZZjMAmTNmAJlmmQCZZswAmTP/AJmZMwCZmWYAmZmZAJmZzACZmf8AmcwAAJnM +MwBmzGYAmcyZAJnMzACZzP8Amf8AAJn/MwCZzGYAmf+ZAJn/zACZ//8AzAAAAJkAMwDMAGYAzACZ +AMwAzACZMwAAzDMzAMwzZgDMM5kAzDPMAMwz/wDMZgAAzGYzAJlmZgDMZpkAzGbMAJlm/wDMmQAA +zJkzAMyZZgDMmZkAzJnMAMyZ/wDMzAAAzMwzAMzMZgDMzJkAzMzMAMzM/wDM/wAAzP8zAJn/ZgDM +/5kAzP/MAMz//wDMADMA/wBmAP8AmQDMMwAA/zMzAP8zZgD/M5kA/zPMAP8z/wD/ZgAA/2YzAMxm +ZgD/ZpkA/2bMAMxm/wD/mQAA/5kzAP+ZZgD/mZkA/5nMAP+Z/wD/zAAA/8wzAP/MZgD/zJkA/8zM +AP/M/wD//zMAzP9mAP//mQD//8wAZmb/AGb/ZgBm//8A/2ZmAP9m/wD//2YAIQClAF9fXwB3d3cA +hoaGAJaWlgDLy8sAsrKyANfX1wDd3d0A4+PjAOrq6gDx8fEA+Pj4APD7/wCkoKAAgICAAAAA/wAA +/wAAAP//AP8AAAD/AP8A//8AAP///wD/////AAAA/////////////////wAAAP///////////wAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAAADAAAAAAAAAAD///8AAAAAAwAAAAAA +AAAA//8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD7AwAA+wAAAwMA//8A//8A+wMA +APsAAAMDAP//AP//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/APsDA/8AA/sABwf/ +AP///wD7AwP/AAP7AAcH/wD//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAP/7 +//sAAwD//wD//wADAAD/+//7AAMA//8A//8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAD+/8AAAAH+wMAB/8A//8AA/v/AAAAB/sDAAf/AP//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAADsAAMAAP8AAP8AAP//AP//7AADAAD/AAD/AAD//wD//wAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAA/wADAAD/APsDAPn5/wD///8AAwAA/wD7AwD5+f8A//8AAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8A/wAA7AAA+wD/+f8A////AP8AAOwAAPsA//n/AP//AAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//wAA7P8H/AAHB/n5AP////8AAOz/B/wABwf5 ++QD//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP/s/P/8//z//wD//////wD/ +7Pz//P/8//8A//8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//AAD//AcH/Af8/P8A +/////wAA//wHB/wH/Pz/AP//AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A///+ +///8///8AP//////AP///v///P///AD//wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +//8AAP///////////wD/////AAD///////////8A//8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAP///wAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAP//AAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAD//////////////////////////////////////////wAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAQk0+AAAAAAAAAD4AAAAoAAAAQAAAABAAAAABAAEAAAAAAIAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAA= + + +SUwBAQEAAgAEACAAIAD/////CRD//////////0JNNgQAAAAAAAA2BAAAKAAAAIAAAAAgAAAAAQAI +AAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAADAwMAA +wNzAAPDKpgAzAAAAAAAzADMAMwAzMwAAFhYWABwcHAAiIiIAKSkpAFVVVQBNTU0AQkJCADk5OQCA +fP8AUFD/AJMA1gD/7MwAxtbvANbn5wCQqa0AAP8zAAAAZgAAAJkAAADMAAAzAAAAMzMAADNmAAAz +mQAAM8wAADP/AABmAAAAZjMAAGZmAABmmQAAZswAAGb/AACZAAAAmTMAAJlmAACZmQAAmcwAAJn/ +AADMAAAAzDMAAMxmAADMmQAAzMwAAMz/AAD/ZgAA/5kAAP/MADP/AAD/ADMAMwBmADMAmQAzAMwA +MwD/AP8zAAAzMzMAMzNmADMzmQAzM8wAMzP/ADNmAAAzZjMAM2ZmADNmmQAzZswAM2b/ADOZAAAz +mTMAM5lmADOZmQAzmcwAM5n/ADPMAAAzzDMAM8xmADPMmQAzzMwAM8z/ADP/MwAz/2YAM/+ZADP/ +zAAz//8AZgAAAGYAMwBmAGYAZgCZAGYAzABmAP8AZjMAAGYzMwBmM2YAZjOZAGYzzABmM/8AZmYA +AGZmMwBmZmYAZmaZAGZmzABmmQAAZpkzAGaZZgBmmZkAZpnMAGaZ/wBmzAAAZswzAGbMmQBmzMwA +Zsz/AGb/AABm/zMAZv+ZAGb/zADMAP8A/wDMAJmZAACZM5kAmQCZAJkAzACZAAAAmTMzAJkAZgCZ +M8wAmQD/AJlmAACZZjMAmTNmAJlmmQCZZswAmTP/AJmZMwCZmWYAmZmZAJmZzACZmf8AmcwAAJnM +MwBmzGYAmcyZAJnMzACZzP8Amf8AAJn/MwCZzGYAmf+ZAJn/zACZ//8AzAAAAJkAMwDMAGYAzACZ +AMwAzACZMwAAzDMzAMwzZgDMM5kAzDPMAMwz/wDMZgAAzGYzAJlmZgDMZpkAzGbMAJlm/wDMmQAA +zJkzAMyZZgDMmZkAzJnMAMyZ/wDMzAAAzMwzAMzMZgDMzJkAzMzMAMzM/wDM/wAAzP8zAJn/ZgDM +/5kAzP/MAMz//wDMADMA/wBmAP8AmQDMMwAA/zMzAP8zZgD/M5kA/zPMAP8z/wD/ZgAA/2YzAMxm +ZgD/ZpkA/2bMAMxm/wD/mQAA/5kzAP+ZZgD/mZkA/5nMAP+Z/wD/zAAA/8wzAP/MZgD/zJkA/8zM +AP/M/wD//zMAzP9mAP//mQD//8wAZmb/AGb/ZgBm//8A/2ZmAP9m/wD//2YAIQClAF9fXwB3d3cA +hoaGAJaWlgDLy8sAsrKyANfX1wDd3d0A4+PjAOrq6gDx8fEA+Pj4APD7/wCkoKAAgICAAAAA/wAA +/wAAAP//AP8AAAD/AP8A//8AAP///wD///////////8AAAAA/////////////////////////wAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8AAP///wADAwD///8AAP// +////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////A/sA +AAAAAAMDAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAD///8D+wADAwMDAwMAAAADAwMAAwMDAwMDAwMA/////wAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wP7AAMDAwP7/wADAwMDAwD//////////wMA////AAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/wAAAwP7AAMDA//7AAMDA/8DAAAA +////////AwD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwMA+//7 +AAAD+///AAD/+/8AAwMA//////8DAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAADAwMAA//7//v/+//7//sDAAMDAwAHBwf//wMA////AAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMDAwP/+/8AAAAAAAD7//sAAwMDAP//////AwD///8AAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA+//7//v/AAD/B+zsAAD7//v/+/8A +BwcH//8DAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAAD7/wD/ +AP8H7OwA/wD7/wAAAP///////wMA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAA////AAP7/wAA/wfs7AAA+/8DAAcHBwcHB/n/AwD///8AAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAD///8AA//7/wD/B+zsAPv//wMA+f/////5+fkDAP///wAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD/+/8DAP8H7OwAA/v/+wD5+QcH ++fn/+QMA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////APv/AAAA +/wfs7AAAAPv/AP/5+fn5///5AwD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAD/////AAD//wDsAADsAAcHAAAHBwf5+QcH//8DAP///wAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAP////8AAAD/AOz//+wA/////////P/5/////wMA////AAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP8A//8A//8HBwAH/AcHBwf8BwcH +B///AwD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A/wD//PwA +AAAA///8/P////z///////8DAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAP////8AAAD//PwHBwcH/Pz8/AcH/AcHBwf//AME////AAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAA////AP8A/////Pz////8///8/P/8///////8AwT///8AAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A/wD//wcH/AcH/PwHBwf8/PwHBwcH +/PwDBP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8AAAD///78 +/Pz8///////8/Pz///z8/wMA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAA////AP8A//8HBwf8/AcHBwcHB/wH/PwH/P//AwD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAD///8A/wD////+///8///////////8/Pz8//8DAP///wAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8AAAD/BwcHBwcHBwcHBwcHB/wH/Af/ +/wMA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AP8A/////v// +/////////////P/8////AwD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAD///8A/wD////////////////////8//////8DAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAP////8AAAD//////////////////////////wMA////AAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8A//////////////////////////// +AwD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD//////wAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAA/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AP//////////////////////////////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAQk0+AAAAAAAAAD4AAAAoAAAAgAAAACAAAAABAAEAAAAAAAACAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + +SUwBAQIAAwAEABAAEAD/////CRD//////////0JNNgQAAAAAAAA2BAAAKAAAAEAAAAAQAAAAAQAI +AAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAADAwMAA +wNzAAPDKpgAzAAAAAAAzADMAMwAzMwAAFhYWABwcHAAiIiIAKSkpAFVVVQBNTU0AQkJCADk5OQCA +fP8AUFD/AJMA1gD/7MwAxtbvANbn5wCQqa0AAP8zAAAAZgAAAJkAAADMAAAzAAAAMzMAADNmAAAz +mQAAM8wAADP/AABmAAAAZjMAAGZmAABmmQAAZswAAGb/AACZAAAAmTMAAJlmAACZmQAAmcwAAJn/ +AADMAAAAzDMAAMxmAADMmQAAzMwAAMz/AAD/ZgAA/5kAAP/MADP/AAD/ADMAMwBmADMAmQAzAMwA +MwD/AP8zAAAzMzMAMzNmADMzmQAzM8wAMzP/ADNmAAAzZjMAM2ZmADNmmQAzZswAM2b/ADOZAAAz +mTMAM5lmADOZmQAzmcwAM5n/ADPMAAAzzDMAM8xmADPMmQAzzMwAM8z/ADP/MwAz/2YAM/+ZADP/ +zAAz//8AZgAAAGYAMwBmAGYAZgCZAGYAzABmAP8AZjMAAGYzMwBmM2YAZjOZAGYzzABmM/8AZmYA +AGZmMwBmZmYAZmaZAGZmzABmmQAAZpkzAGaZZgBmmZkAZpnMAGaZ/wBmzAAAZswzAGbMmQBmzMwA +Zsz/AGb/AABm/zMAZv+ZAGb/zADMAP8A/wDMAJmZAACZM5kAmQCZAJkAzACZAAAAmTMzAJkAZgCZ +M8wAmQD/AJlmAACZZjMAmTNmAJlmmQCZZswAmTP/AJmZMwCZmWYAmZmZAJmZzACZmf8AmcwAAJnM +MwBmzGYAmcyZAJnMzACZzP8Amf8AAJn/MwCZzGYAmf+ZAJn/zACZ//8AzAAAAJkAMwDMAGYAzACZ +AMwAzACZMwAAzDMzAMwzZgDMM5kAzDPMAMwz/wDMZgAAzGYzAJlmZgDMZpkAzGbMAJlm/wDMmQAA +zJkzAMyZZgDMmZkAzJnMAMyZ/wDMzAAAzMwzAMzMZgDMzJkAzMzMAMzM/wDM/wAAzP8zAJn/ZgDM +/5kAzP/MAMz//wDMADMA/wBmAP8AmQDMMwAA/zMzAP8zZgD/M5kA/zPMAP8z/wD/ZgAA/2YzAMxm +ZgD/ZpkA/2bMAMxm/wD/mQAA/5kzAP+ZZgD/mZkA/5nMAP+Z/wD/zAAA/8wzAP/MZgD/zJkA/8zM +AP/M/wD//zMAzP9mAP//mQD//8wAZmb/AGb/ZgBm//8A/2ZmAP9m/wD//2YAIQClAF9fXwB3d3cA +hoaGAJaWlgDLy8sAsrKyANfX1wDd3d0A4+PjAOrq6gDx8fEA+Pj4APD7/wCkoKAAgICAAAAA/wAA +/wAAAP//AP8AAAD/AP8A//8AAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7Ozs7Ozs7Ozs7Ozs +7OwAAADs7Ozs7Ozs7Ozs7OwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOz/+wf7 +B/sH+wf7B/vsAAAA7P/7B/sH+wf7B/vsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AADs/wf7B/sH+wf7B/sH7AAA7P/7B/sH+wf7B/sHAOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAA7P/7B/sH+wf7B/sH++wAAOz/B/sH+wf7B/sH7ADsAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAOz/B/sH+wf7B/sH+wfsAOz/B/sH+wf7B/sH+wDs7AAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs//sH+wf7B/sH+wf77ADs/////////////+wAB+wAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P8H+wf7B/sH+wf7B+wA7Ozs7Ozs7Ozs7Ozs +7PvsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOz/+wf7B/sH+wf7B/vsAADs/wf7 +B/sH+wf7B/sH7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs//////////////// +7AAA7P/7B/sH+wf//////+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7Af7B/sH ++wfs7Ozs7OwAAOz/B/sH+wf/7Ozs7OzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AADsB/sH+wfsAAAAAAAAAAAA7P//////7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAOzs7OzsAAAAAAAAAAAAAADs7Ozs7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAQk0+AAAAAAAAAD4AAAAoAAAAQAAAABAAAAABAAEAAAAAAIAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wD/////AAAAAP////8AAAAAwADgAAAAAACAAMAAAAAA +AIAAwAAAAAAAgACAAAAAAACAAIAAAAAAAIAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAIAAgAAAAAAA +gACAAAAAAACAAYABAAAAAMB/wH8AAAAA4P/g/wAAAAD/////AAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAA= + + +SUwBAQEAAgAEACAAIAD/////CRD//////////0JNNgQAAAAAAAA2BAAAKAAAAIAAAAAgAAAAAQAI +AAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAIAAAACAgACAAAAAgACAAICAAADAwMAA +wNzAAPDKpgAzAAAAAAAzADMAMwAzMwAAFhYWABwcHAAiIiIAKSkpAFVVVQBNTU0AQkJCADk5OQCA +fP8AUFD/AJMA1gD/7MwAxtbvANbn5wCQqa0AAP8zAAAAZgAAAJkAAADMAAAzAAAAMzMAADNmAAAz +mQAAM8wAADP/AABmAAAAZjMAAGZmAABmmQAAZswAAGb/AACZAAAAmTMAAJlmAACZmQAAmcwAAJn/ +AADMAAAAzDMAAMxmAADMmQAAzMwAAMz/AAD/ZgAA/5kAAP/MADP/AAD/ADMAMwBmADMAmQAzAMwA +MwD/AP8zAAAzMzMAMzNmADMzmQAzM8wAMzP/ADNmAAAzZjMAM2ZmADNmmQAzZswAM2b/ADOZAAAz +mTMAM5lmADOZmQAzmcwAM5n/ADPMAAAzzDMAM8xmADPMmQAzzMwAM8z/ADP/MwAz/2YAM/+ZADP/ +zAAz//8AZgAAAGYAMwBmAGYAZgCZAGYAzABmAP8AZjMAAGYzMwBmM2YAZjOZAGYzzABmM/8AZmYA +AGZmMwBmZmYAZmaZAGZmzABmmQAAZpkzAGaZZgBmmZkAZpnMAGaZ/wBmzAAAZswzAGbMmQBmzMwA +Zsz/AGb/AABm/zMAZv+ZAGb/zADMAP8A/wDMAJmZAACZM5kAmQCZAJkAzACZAAAAmTMzAJkAZgCZ +M8wAmQD/AJlmAACZZjMAmTNmAJlmmQCZZswAmTP/AJmZMwCZmWYAmZmZAJmZzACZmf8AmcwAAJnM +MwBmzGYAmcyZAJnMzACZzP8Amf8AAJn/MwCZzGYAmf+ZAJn/zACZ//8AzAAAAJkAMwDMAGYAzACZ +AMwAzACZMwAAzDMzAMwzZgDMM5kAzDPMAMwz/wDMZgAAzGYzAJlmZgDMZpkAzGbMAJlm/wDMmQAA +zJkzAMyZZgDMmZkAzJnMAMyZ/wDMzAAAzMwzAMzMZgDMzJkAzMzMAMzM/wDM/wAAzP8zAJn/ZgDM +/5kAzP/MAMz//wDMADMA/wBmAP8AmQDMMwAA/zMzAP8zZgD/M5kA/zPMAP8z/wD/ZgAA/2YzAMxm +ZgD/ZpkA/2bMAMxm/wD/mQAA/5kzAP+ZZgD/mZkA/5nMAP+Z/wD/zAAA/8wzAP/MZgD/zJkA/8zM +AP/M/wD//zMAzP9mAP//mQD//8wAZmb/AGb/ZgBm//8A/2ZmAP9m/wD//2YAIQClAF9fXwB3d3cA +hoaGAJaWlgDLy8sAsrKyANfX1wDd3d0A4+PjAOrq6gDx8fEA+Pj4APD7/wCkoKAAgICAAAAA/wAA +/wAAAP//AP8AAAD/AP8A//8AAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs +7Ozs7Ozs7OwDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P/7B/sH ++wf7B/sH+wf7B/sH+wf7B/sH+wf7BwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAADs/wf7B/sH+wf7B/sH+wf7B/sH+wf7B/sH+wf7AwAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOz/+wf7B/sH+wf7B/sH+wf7B/sH+wf7B/sH+wcDAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P8H+wf7B/sH+wf7B/sH+wf7B/sH ++wf7B/sH+wMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs//sH+wf7 +B/sH+wf7B/sH+wf7B/sH+wf7B/sHAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAOz/B/sH+wf7B/sH+wf7B/sH+wf7B/sH+wf7B/sDAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAA7P/7B/sH+wf7B/sH+wf7B/sH+wf7B/sH+wf7BwMAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs/wf7B/sH+wf7B/sH+wf7B/sH+wf7 +B/sH+wf7AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOz/+wf7B/sH ++wf7B/sH+wf7B/sH+wf7B/sH+wcDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAA7P8H+wf7B/sH+wf7B/sH+wf7B/sH+wf7B/sH+wMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAADs//sH+wf7B/sH+wf7B/sH+wf7B/sH+wf7B/sHAwAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOz/B/sH+wf7B/sH+wf7B/sH+wf7B/sH ++wf7B/sDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P/7B/sH+wf7 +B/sH+wf7B/sH+wf7B/sH+wf7BwMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAADs/wf7B/sH+wf7B/sH+wf7B/sH+wf7B/sH+wf7AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAOz/+wf7B/sH+wf7B/sH+wf7B/sH+wf7B/sH+wcDAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P8H+wf7B/sH+wf7B/sH+wf7B/sH+wf7 +B/sH+wMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs//sH+wf7B/sH ++wf7B/sH+wf7B/sH+wf7B/sHAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAOz///////////////////////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAA7AcHBwcHBwcHBwcHBwcHB+zs7Ozs7Ozs7Ozs7AAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P/7B/sH+wf7B/sH+wfsAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7P/7B/sH+wf7 +B/sH7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAA7P///////////+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAA7Ozs7Ozs7OzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAQk0+AAAAAAAAAD4AAAAoAAAAgAAAACAAAAABAAEAAAAAAAACAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAP///wD/////AAAAAAAAAAAAAAAA/////wAAAAAAAAAAAAAAAP////8A +AAAAAAAAAAAAAAD/////AAAAAAAAAAAAAAAAwAAAAwAAAAAAAAAAAAAAAIAAAAEAAAAAAAAAAAAA +AACAAAABAAAAAAAAAAAAAAAAgAAAAQAAAAAAAAAAAAAAAIAAAAEAAAAAAAAAAAAAAACAAAABAAAA +AAAAAAAAAAAAgAAAAQAAAAAAAAAAAAAAAIAAAAEAAAAAAAAAAAAAAACAAAABAAAAAAAAAAAAAAAA +gAAAAQAAAAAAAAAAAAAAAIAAAAEAAAAAAAAAAAAAAACAAAABAAAAAAAAAAAAAAAAgAAAAQAAAAAA +AAAAAAAAAIAAAAEAAAAAAAAAAAAAAACAAAABAAAAAAAAAAAAAAAAgAAAAQAAAAAAAAAAAAAAAIAA +AAEAAAAAAAAAAAAAAACAAAABAAAAAAAAAAAAAAAAgAAAAQAAAAAAAAAAAAAAAIAAAAMAAAAAAAAA +AAAAAACAAAAHAAAAAAAAAAAAAAAAwAB//wAAAAAAAAAAAAAAAOAA//8AAAAAAAAAAAAAAADwAf// +AAAAAAAAAAAAAAAA+AP//wAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAD/////AAAAAAAAAAAA +AAAA/////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= + + +AQAAABQAAAAAAAAAAQAAAP////8= + + + diff --git a/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/Hyphen.dll b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/Hyphen.dll new file mode 100644 index 0000000..ed2ca81 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/Hyphen.dll differ diff --git a/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/Hyphen.pdb b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/Hyphen.pdb new file mode 100644 index 0000000..793817e Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/Hyphen.pdb differ diff --git a/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/Hyphen.xml b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/Hyphen.xml new file mode 100644 index 0000000..42bddb0 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/Hyphen.xml @@ -0,0 +1,2016 @@ + + + + Hyphen + + + + + Represents a standalone module loaded into the default AppDomain. + + + + + Initializes a new instance of the class. + + TRUE if the modules runs under a post-0.7#20 API; FALSE otherwise. + + + + Finalizes the module. + + + + + Represents the MirandaPluginInfo export of Miranda's API. + + Miranda version (in Miranda's format) + Ptr to an instance of the PLUGININFO(EX) structure. + + + + Represents the MirandaPluginInterfaces export of Miranda's API. + + Ptr to an array of interface GUIDs. + + + + Represents the Load export of Miranda API. Loads Hyphen and initializes the module. + + Ptr to an instance of the PLUGINLINK structure. + Load result. + + + + Enables the plugin when Miranda completes initialization. + + + + + Represents the Unload export of Miranda API. Unloads Hyphen and shuts down the runtime. + + Unload result. + + + + Gets a indication whether a plugin can be unloaded. + + + + + + Gathers and publishes plugin information. + + Plugin to evaluate. + Miranda version to pass to the plugin. + TRUE if the information were obtained; FALSE if not. + + + + Probes custom API exports of a standalone plugin. + + Plugin. + + + + Loads the actual plugin behind a proxy assembly. + + An instance of a plugin. + + + + Executes a custom API export. + + Type of the return value. + Export name. + Additional data. + Return value. + + + + Gets a standalone plugin behind this module. + + + + + Gets a value indicating whether the runtime runs under the post-0.7#20 Miranda API. + + + + + Gets a value indicating whether the standalone plugin was loaded. + + + + + Gets a value indicating whether the standalone plugins was initialized (i.e. has a descriptor). + + + + + Auxiliary Plugin Manager used to load a standalone plugin into the default AppDomain. + + + + + Represents a base class for cross-domain callable object that operate with Miranda Context. + + + + + Populates context information to be available for standalone plugins residing in the default AppDomain. + + The information are not published when there are no standalone modules to conserve resources. + + + + Represents an unknown plugin. Hyphen will impersonate itself with this plugin when binding to Miranda's events. + + + + + MirandaContext is not available at the time of the invocation. + + + + + + + + Controls managed plugin fusion and orchestrates the runtime. + + + + + Initializes the runtime. + + + Called from the exported IL stubs as a first method to initialize the Loader singleton. + + + + + Initializes the Loader and prepares its PLUGININFO. + + + + + Publishes the plugin info and marshals it into a ptr. + + + + + Populates the plugin info with Hyphen's identity. + + Plugin info. + + + + Gets a specified version of the Loader. + + A version of the Loader to be returned. + An instance of the Loader or NULL when the version cannot be satisfied. + + Cannot be inlined because of the HyphenVersion property which relies on the Assembly.GetExecutingAssembly() method. + + + + + Gets an instance of the Loader. + + An instance of the Loader. + method not called. + + + + Represents the MirandaPluginInfo export of Miranda's API. + + Miranda version (in Miranda's format) + Ptr to an instance of the PLUGININFO structure. + + + + Represents the MirandaPluginInfoEx export of Miranda's API. + + Miranda version (in Miranda's format) + Ptr to an instance of the PLUGININFOEX structure. + + Specific to post-0.7#20 Miranda API. + + + + + Gets the pointer to a dummy plugin info structure. + + Pointer. + + + + Performs initialization steps common to all MirandaPluginInfo exports. + + Miranda version. + + + + Represents the MirandaPluginInterfaces export of Miranda's API. + + Ptr to an array of interface GUIDs. + + + + Called by a standalone module to ensure the Loader is ready (the module could be loaded before Hyphen). + + Ptr to an instance of the PLUGINLINK structure. + + Calls the to ensure that the Loader is ready. This method is needed + to handle a situation when a standalone module is loaded before Hyphen. + Does nothing when Hyphen is already loaded. + + + + + Represents the Load export of Miranda API. Loads Hyphen and initializes the runtime. + + Ptr to an instance of the PLUGINLINK structure. + Result. + + + + Initializes the runtime context (including configuration). + + Ptr to PLUGINLINK to initialize from. + + + + Hooks to the ModulesLoaded event to complete context initialization. + + + + + Completes the runtime initialization and fires the ModulesLoaded event. + + + + + Registers Hyphen for updates via Updater. + + + + + Initializes the FileSystemWatcher to watch for plugin changes. + + + + + Populates Miranda's menu with Hyphen's items and initializes managed menu for plugins. + + + + + Initializes the managed menu for managed plugins. This menu, unlike Miranda's, supports item removal. + + + + + Represents the Unload export of Miranda API. Unloads Hyphen and shuts down the runtime. + + Unload result. + + Called by the UnloadOnShutdownService to unload managed plugins before Miranda does. + Managed plugins SHOULD NOT be unloaded when Miranda's unloading, because I do not consider it safe + (i.e. heap corruption is likely to occur). + + + + + Unloads Hyphen completelly. + + + + + Disposes the plugin's folder watcher (if needed). + + + + + Disposes the Tray manager (if needed). + + + + + Broadcasts the BeforeShutdown event to the managed plugins and unloads Hyphen on Miranda's shutdown. + + + + + Broadcasts the BeforeShutdown event to the managed plugins. + + + + + Loads / unloads managed plugins. + + + + + Reloads managed plugins. + + + + + Loads managed plugins. + + + + + Called by the FusionProgressDialog on another thread to perform the fusion itself. + + + + + Initializes a sandbox for plugins. + + + + + Initializes a fusion context. + + + + + Loads the Plugin Manager. + + + + + Initializes the Tray Manager. + + + + + Initializes the UI sync context for event dispathing on the current thread. + + + + + Registers managed main menu for Miranda's AddMenuItem services in an AppDomain. + + Plugin manager. + + + + Clears the StringResolver cache (plugins are loaded and resolvers are junk now). + + + + + Shows managed menu. + + + + + Shows a configuration dialog to configure standalone modules. + + + + + Shows Isolated-plugins management dialog. + + + + + Shows the plugin management dialog. + + + + + Handles a plugin file change. + + + + + Unloads managed plugins. + + + + + Unloads managed plugins. + + TRUE to perform fast unload only; FALSE to perfrom full unload. + + + + Handles Hyphen (default AppDomain) unhandled exceptions. + + + + + Handles Windows Forms (default AppDomain) unhandled exceptions. + + + + + Verifies the .config file is present and when it is not, the default one is created. + + + + + Ensures only a single instance of Hyphen is loaded into the process. + + + + + Formats singleton's mutex name. + + Mutext name. + + + + Invokes a delegate on behalf of Loader's AppDomain (i.e. the default one). + + Delegate. + Optional arguments. + + + + + Verifies whether the code is executing in the default AppDomain. + + The code is not executing in the default AppDomain. + + + + Gets a current version of the runtime. + + + + + Gets a value whether the plugins are loaded. Not synchronized, always use in a lock. + + THIS MUST NOT BE SYNCHRONIZED, ALWAYS CALLED IN LOCK! (possible deadlock in FusionProgressDialog). + + + + Gets Hyphen plugin info. + + + + + + + + + This method is static to not let the execution run in default AppDomain but in a domain of the menu itself. + + + + + Will return char*, as usual. + + + + + Will never return the user's custom name. + + + + + Will return TCHAR* instead of char*. + + + + + Will not use the cache. + + + + + Enumerates contact handles, excluding the Me contact. + + Contact handles. + + + + Return TRUE to filter out the event, FALSE to pass the message along. + + + + + Represents database event information. + + + + + DB/Event/Get + Retrieves all the information stored in hDbEvent + wParam=(WPARAM)(HANDLE)hDbEvent + lParam=(LPARAM)(DBEVENTINFO*)&dbe + hDbEvent should have been returned by db/event/add or db/event/find*event + Returns 0 on success or nonzero if hDbEvent is invalid + Don't forget to set dbe.cbSize, dbe.pBlob and dbe.cbBlob before calling this + service + The correct value dbe.cbBlob can be got using db/event/getblobsize + If successful, all the fields of dbe are filled. dbe.cbBlob is set to the + actual number of bytes retrieved and put in dbe.pBlob + If dbe.cbBlob is too small, dbe.pBlob is filled up to the size of dbe.cbBlob + and then dbe.cbBlob is set to the required size of data to go in dbe.pBlob + On return, dbe.szModule is a pointer to the database module's own internal list + of modules. Look but don't touch. + + + + + DB/Event/GetContact + Retrieves a handle to the contact that owns hDbEvent. + wParam=(WPARAM)(HANDLE)hDbEvent + lParam=0 + hDbEvent should have been returned by db/event/add or db/event/find*event + NULL is a valid return value, meaning, as usual, the user. + Returns (HANDLE)(-1) if hDbEvent is invalid, or the handle to the contact on + success + This service is exceptionally slow. Use only when you have no other choice at + all. + + + + + DB/Event/GetText (0.7.0+) + Retrieves the event's text + wParam=(WPARAM)0 (unused) + lParam=(LPARAM)(DBEVENTGETTEXT*)egt - pointer to structure with parameters + egt->dbei should be the valid database event read via MS_DB_EVENT_GET + egt->datatype = DBVT_WCHAR or DBVT_ASCIIZ or DBVT_TCHAR. If a caller wants to + suppress Unicode part of event in answer, add DBVTF_DENYUNICODE to this field. + egt->codepage is any valid codepage, CP_ACP by default. + Function returns a pointer to a string in the required format. + This string should be freed by a call of mir_free + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Event handle. + + + + Creates a new instance of the from an event handle. + + Event handle. + Database event info. + + + + Gets the event information based on its handle. + + Event handle. + [OUT] Event type. + [OUT] Event flags. + [OUT] Event data. + [OUT] Event related module. + [OUT] Event timestamp. + + + + Prepares the for information extraction and the blob buffer. + + Event handle. + [OUT] DB event info to marshal data into. + [OUT] Locked Blob buffer. + + + + Initializes the instance by marshaling data from a pointer. + + pointer. + + + + Get the event information from a struct. + + [REF] struct. + Event handle (the blob buffer will be populated if not null). + Buffer to use for blob marshaling. + [OUT] Event type. + [OUT] Event flags. + [OUT] Event data. + [OUT] Event related module. + [OUT] Event timestamp. + + + + Populates the blob buffer set by the parameter. + + [REF] struct identifiing the buffer. + Event handle. + Buffer could bet populated. + + + + Gets the event timestamp. + + [REF] struct. + Buffer to reuse. + [OUT] Timestamp. + + + + Gets the event module. + + [REF] struct. + Event module. + + + + Gets the event data. + + [REF] struct. + Event data. + + + + Marshals the from a struct pointer. + + struct pointer. + Event info. + + + + Gets the handle of the contact owning this event. This method is very slow, use wisely. + + Associated contact handle. + + + + Gets the handle of the contact owning this event. This method is very slow, use wisely. + + Event handle to get the contact handle for. + Associated contact handle. + + + + The network capabilities that the protocol supports. + + + + + The status modes that the protocol supports. + + + + + The status modes that the protocol supports away-style messages for. Uses the flags. + + + + + None. + + + + + Supports IM sending. + + + + + Supports IM receiving. + + + + + Aupports separate URL sending. + + + + + Supports separate URL receiving. + + + + + Supports file sending. + + + + + Supports file receiving. + + + + + Supports broadcasting away messages. + + + + + Supports reading others' away messages. + + + + + Contact lists are stored on the server, not locally. See notes below. + + + + + Will get authorisation requests for some or all contacts. + + + + + Will get 'you were added' notifications. + + + + + Has an invisible list. + + + + + Has a visible list for when in invisible mode. + + + + + Supports setting different status modes to each contact. + + + + + the protocol is extensible and Supports plugin-defined messages. + + + + + Supports direct (not server mediated) communication between clients. + + + + + Supports creation of new user IDs. + + + + + Has a realtime chat capability. + + + + + Supports replying to a mode message request with different text depending on the contact requesting. + + + + + Supports a basic user searching facility. + + + + + Supports one or more protocol-specific extended search schemes. + + + + + Supports renaming of incoming files as they are transferred. + + + + + Can resume broken file transfers. + + + + + Can add search results to the contact list. + + + + + Can send contacts to other users. + + + + + Can receive contacts from other users. + + + + + Can change our user information stored on server. + + + + + Supports a search by e-mail feature. + + + + + Set if the uniquely identifying field of the network is the e-mail address. + + + + + Supports searching by nick/first/last names. + + + + + Has a dialog box to allow searching all the possible fields. + + + + + The unique user IDs for this protocol are numeric. + + + + + Flashes the icon even if the user is occupied, and puts the event at the top of the queue. + + + + + The icon will not flash for ever, only a few times. This is for eg online alert. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + + Initializes a context from a plugin link. + + + + + + + Represents a late-binded master subscriber of Miranda events. + + + + + Formats the ANSI-\0-UNICODE-\0\0 layout in the memory. + + String to layout. + [OUT] Blob pointer to the resulting memory layout. + Blob size in bytes. + Message blob format: ansi\0unicode\0\0 + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins are enabled and ready to use. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die General ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die About ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Show Hyphen copyright information. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Review Hyphen information. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Management ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Manage Hyphen plugins. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Enable or disable Hyphen plugins on individual basis. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die This operation is not supported for an unknown protocol. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot detect the default string encoding used in Miranda. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An internal error occurred in the PluginManager while working with unmanaged memory. Contact Hyphen vendor, please. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while opening plugin home page. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot register/unregister builtin protocol. Only custom protocol can be registered/unregistered. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to initialize Hyphen configuration. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Duplicit loader options detected. RequiredVersion or MinimalMirandaVersion were set by a base class previously. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot complete the service call. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while loading plugins. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The feature is not available from current domain. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - {1} ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load string resolver of type '{0}'. Check if there is a public default .ctor. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Failed hooking event '{0}'. Check event name. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - this plugin cannot be loaded automatically. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to process method '{0}' - method signature does not match required delegate signature. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot instantiate plugin type '{0}' - no valid constructor found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot create service function '{0}' - the service already exists. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Failed creating service function '{0}'. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Master type for the {0} standalone plugin proxy not found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to initialize plugin descriptor - {0} ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while instantiating plugin type '{0}' - Hyphen is not allowed to load the plugin. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - the image is not a valid CLI assembly. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while instantiating plugin type '{0}' - constructor threw an exception ({1}). ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot complete requested operation - Miranda service '{0}' returned {1}. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugin {0} requires {1} but this version is not available, the plugin cannot be loaded. Please download the latest version. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot associate menu item '{0}' with method '{1}' - the item is already associated with service '{2}'. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hook not found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Multiple Hyphen plugins are not supported side-by-side. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An internal error occurred in Hyphen. Please contact Hyphen's author. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot access the InteropBuffer without locking it before. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot perform the requested operation on a locked buffer. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot unlock the buffer from a thread that does not locked it. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Invalid fusion context. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The handle is invalid. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot translate this value - invalid value address or value format. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugins - I/O error occurred. Check if you have permissions to access the 'Miranda\plugins\managed' directory. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Miranda context has not been initialized yet. The context will be initialialized in the Load export, until then, context calls are not supported. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Miranda must be restarted. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot read the setting on behalf of the owning module - the owning module cannot be determined. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Internal error - cannot reinitialize already initialized plugin. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Already initialized. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot complete requested operation - this plugin has not been loaded yet. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Internal error occurred, cannot return requested information. The singleton has not been initialized yet. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while working with the Configuration Storage to load configuration. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while working with the Configuration Storage to save configuration. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to unload plugin manager - cannot initiate shutdown from its own AppDomain. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen crashed ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to load Hyphen ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to load/unload plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No options available ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No plugins enabled ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugins updated ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Runtime version problem ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Warning ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die {0} error ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugin {0} updated ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to load Hyphen - {0} ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while loading/unloading managed plugins - {0}. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occured in the {0} plugin, some information may be lost. However, the plugin will continue running. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred in the {1} plugin - {2}{0}{0}Press OK to disable the plugin, otherwise press Cancel. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Some information may be lost. However, the plugin will continue running. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occured in Hyphen. Please, contact its author to resolve the issue. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die You are about to disable all Hyphen plugins. Are you sure? ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die There was an error with Microsoft.net configuration files. These files are critical for Hyphen execution. The problem was corrected but Miranda must be restarted to apply changes. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die This plugin has no options to configure. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die To perform the task, you have to enable the plugins first. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins were successfully reloaded. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins were updated. Do you wish to reload them? ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occured while preparing the report. Copy the details and visit http://forums.miranda-im.org for assistance. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Configure ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Error ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die {0} crashed ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die (no items / plugins loaded) ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die (select a plugin) ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die <unknown> ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Options... ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Enable or disable plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Manage plugins... ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Extra items... ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Yes ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen ähnelt. + + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Occurs when a control is selected and before it is prepared to be shown. + + + + + Occurs when a control is about to be shown. The control is shown when the user clicks on its item. + + TRUE if the control is being requested for the first time; FALSE if it is requested repeatedly. + TRUE to cancel the display; FALSE to continue. + + + + Occurs when a control is about to be hidden. The control is hidden when the user clicks on another item. + + TRUE to cancel the dismissal; FALSE to continue. + + + + Occurs when the user dismisses the configuration dialog via OK button and the control is dirty. The control should save its settings now. + + + + + Occurs when the user dismisses the configuration dialog via OK or CANCEL button. + + + + + Marks the control dirty. + + + + + Gets a value indicating whether the control has an UI to show. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + Casablanca + + + + Remove the dialog from the active dialog tracking list. + + + + + Gathers active dialogs of the plugin and unregisters them. + + Plugin. + Unregistered dialogs to dispose. + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Draws a textbox with a prompt inside of it, similar to the "Quick Search" box + in Outlook 2007, IE7 or the Firefox 2.0 search box. The prompt will disappear when + the focus is placed in the textbox, and will not display again if the Text property + contains any value. If the Text property is empty, then the prompt will display + again when the textbox loses the focus. + + + + + Public constructor + + Uncomment the SetStyle line to activate the OnPaint logic in place of the WndProc logic + + + + When the textbox receives an OnEnter event, select all the text if any text is present + + + + + + Redraw the control when the text alignment changes + + + + + + Redraw the control with the prompt + + + This event will only fire if ControlStyles.UserPaint is set to true in the constructor + + + + Overrides the default WndProc for the control + + The Windows message structure + + This technique is necessary because the OnPaint event seems to be doing some + extra processing that I haven't been able to figure out. + + + + + Overload to automatically create the Graphics region before drawing the text prompt + + The Graphics region is disposed after drawing the prompt. + + + + Draws the PromptText in the TextBox.ClientRectangle using the PromptFont and PromptForeColor + + The Graphics region to draw the prompt on + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Represents a marker interface for classes wrapping Hyphen runtime configuration. + + + + + Represents a base class for managed Miranda protocols. + + + + + Initializes a new instance of the class. + + + + + Initializes the instance and creates essential protocol services. + + + + + + Unloads the protocol. + + + + + Gets a human-readable name for the protocol. + + The number of characters in the buffer. + Buffer pointer. + Returns 0 on success, nonzero on failure. + + + + Gets the status mode that a protocol is currently in. + + Not used. + Not used. + Returns the status mode. + + + + Changes the protocol's status mode. + + New status values. + Not used. + Returns 0 on success, nonzero on failure. + + Will send an ack with: + type=ACKTYPE_STATUS, result=ACKRESULT_SUCCESS, hProcess=(HANDLE)previousMode, lParam=newMode. + + + + + Loads one of the protocol-specific icons + + Which icon (currently ignored). + Not used. + Icon handle (HICON). + + + + Gets the capability flags of the module. + + Flags category. + Not used. + + + + + Sends an instant message. + + Flags. + Contact-Chain-Send data pointer. + Returns a hProcess corresponding to the one in the ack event. + + Will send an ack when the message actually gets sent type=ACKTYPE_MESSAGE, result=success/failure, lParam=0. + + + + + Gets the plugin interfaces. + + + + + Gets the managed protocol descriptor for this module. + + + + + Gets the protocol type. + + + + + Gets the protocol icon. + + + + + Gets the protocol supported capabilities. + + + + + Gets the status modes the protocol supports an away message for. + + + + + Gets the protocol supported status modes. + + + + + Gets or sets the protocol status. + + + + + Handles Ini categories, keys and their associated values, static methods implemented for file + handling (saving and reading) + + + + + Initialies a new IniStructure + + + + + Adds a category to the IniStructure + + Name of the new category + + + + Deletes a category and its contents + + category to delete + + + + Renames a category + + Category to rename + New name + + + + Returns the names of all categories + + + + + + Returns the name of a category by specifying the index. + Useful to enumerate through all categories. + + The category index + + + + + Adds a key-value pair to a specified category + + Name of the category + New name of the key + Associated value + + + + Returns the value of a key-value pair in a specified category by specifying the key + + Name of the category + Name of the Key + + + + + Returns the key-value pair in a specified category by specifying the index + + Index of the category + Index of the Key + + + + + Returns the name of the key in a key-value pair in a specified category by specifying the index + + Index of the category + Index of the key + + + + + Deletes a key-value pair + + Name of the category + Name of the Key + + + + Renames the keyname in a key-value pair + + Name of the category + Name of the Key + New name of the Key + + + + Modifies the value in a key-value pair + + Name of the category + Name of the Key + New name of the Key + + + + Returns all keys in a category + + Name of the category + + + + + Writes an IniStructure to a file with a comment. + + The contents to write + The complete path and name of the file + Comment to add + + + + + Writes an IniStructure to a file without a comment. + + The contents to write + The complete path and name of the file + + + + + Reads an ini file and returns the content as an IniStructure. Returns null if an error occurred. + + The filename to read + + + + + Call the next service in the chain for this send operation. + wParam=wParam + lParam=lParam + The return value should be returned immediately + wParam and lParam should be passed as the parameters that your service was + called with. wParam must remain untouched but lParam is a CCSDATA structure + that can be copied and modified if needed. + Typically, the last line of any chaining protocol function is + return CallService(MS_PROTO_CHAINSEND,wParam,lParam); + + + + + Call the next service in the chain for this receive operation + wParam=wParam + lParam=lParam + The return value should be returned immediately + wParam and lParam should be passed as the parameters that your service was + called with. wParam must remain untouched but lParam is a CCSDATA structure + that can be copied and modified if needed. + When being initiated by the network-access protocol module, wParam should be + zero. + Thread safety: ms_proto_chainrecv is completely thread safe since 0.1.2.0 + Calls to it are translated to the main thread and passed on from there. The + function will not return until all callees have returned, irrepective of + differences between threads the functions are in. + + + + + Represents a generic handler for Miranda-raised events. + + Type of EventArgs. + Sender of the event. + Event arguments. + TRUE to block the event from bubbling to another subscribers, FALSE to pass it along. + + + + Provides information about current state of Hyphen runtime. + This class can be used only from the context of standalone modules (i.e. from the default AppDomain only). + + + + + Marks the class initialized. + + + + + Verifies whether the class was initialized (from the default AppDomain). + + Class not initialized (i.e. called from other than default AppDomain). + + + + Gets an indication whether the Hyphen runtime is currently loading. + + Class not initialized (i.e. called from other than default AppDomain). + + + + Gets an indication whether the Isolated plugins are loaded. + + Class not initialized (i.e. called from other than default AppDomain). + + + + Manages Miranda skin entities, for example icons and sounds. + + m_skin.h + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + diff --git a/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/TabStripControlLibrary.dll b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/TabStripControlLibrary.dll new file mode 100644 index 0000000..92448f0 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/TabStripControlLibrary.dll differ diff --git a/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/TabStripControlLibrary.pdb b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/TabStripControlLibrary.pdb new file mode 100644 index 0000000..b1ee635 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/TabStripControlLibrary.pdb differ diff --git a/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/managed/Virtuoso.Miranda.Plugins.TestPlugin.dll b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/managed/Virtuoso.Miranda.Plugins.TestPlugin.dll new file mode 100644 index 0000000..74df62e Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/managed/Virtuoso.Miranda.Plugins.TestPlugin.dll differ diff --git a/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/managed/Virtuoso.Miranda.Plugins.TestPlugin.pdb b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/managed/Virtuoso.Miranda.Plugins.TestPlugin.pdb new file mode 100644 index 0000000..351869b Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/Plugins/managed/Virtuoso.Miranda.Plugins.TestPlugin.pdb differ diff --git a/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/miranda32.exe.config b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/miranda32.exe.config new file mode 100644 index 0000000..c2c11f2 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/MirandaOut/Debug/miranda32.exe.config @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen/PluginsToTest/Virtuoso.Miranda.Plugins.TestPlugin.dll b/Hyphen/Virtuoso.Hyphen/PluginsToTest/Virtuoso.Miranda.Plugins.TestPlugin.dll new file mode 100644 index 0000000..74df62e Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/PluginsToTest/Virtuoso.Miranda.Plugins.TestPlugin.dll differ diff --git a/Hyphen/Virtuoso.Hyphen/PluginsToTest/Virtuoso.Miranda.Plugins.TestPlugin.pdb b/Hyphen/Virtuoso.Hyphen/PluginsToTest/Virtuoso.Miranda.Plugins.TestPlugin.pdb new file mode 100644 index 0000000..351869b Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/PluginsToTest/Virtuoso.Miranda.Plugins.TestPlugin.pdb differ diff --git a/Hyphen/Virtuoso.Hyphen/TestRunConfig.testrunconfig b/Hyphen/Virtuoso.Hyphen/TestRunConfig.testrunconfig new file mode 100644 index 0000000..849557c --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/TestRunConfig.testrunconfig @@ -0,0 +1 @@ +88445b12-9f82-4a88-a45e-6246ea5be07bStandard Test RunThis is a default test run configuration for a local test run.False<_size type="System.Int32">0<_version type="System.Int32">0<_size type="System.Int32">0<_version type="System.Int32">0False20010000300000300000300000<_size type="System.Int32">0<_version type="System.Int32">0-1,-1,01572788756-14e7599fa-5ecb-43e9-a887-cd63cf72d207FalseFalseFalse1Internet Explorer 6.0<_items type="Microsoft.VisualStudio.TestTools.WebTesting.WebTestRequestHeader[], Microsoft.VisualStudio.QualityTools.WebTestFramework, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">User-AgentMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)Accept*/*Accept-Language{{$IEAcceptLanguage}}Accept-EncodingGZIP<_size type="System.Int32">4<_version type="System.Int32">4LAN0000011-10TrueTrueTrueFalseFalse00000 \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen/UpgradeLog.XML b/Hyphen/Virtuoso.Hyphen/UpgradeLog.XML new file mode 100644 index 0000000..93454ab Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/UpgradeLog.XML differ diff --git a/Hyphen/Virtuoso.Hyphen/UpgradeLog.htm b/Hyphen/Virtuoso.Hyphen/UpgradeLog.htm new file mode 100644 index 0000000..8be57cc Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/UpgradeLog.htm differ diff --git a/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.sdf b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.sdf new file mode 100644 index 0000000..2e7ade0 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.sdf differ diff --git a/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.sln b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.sln new file mode 100644 index 0000000..8d710b8 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.sln @@ -0,0 +1,61 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Plugins", "..\Plugins\Plugins.csproj", "{319EA506-200F-48DE-92D7-64D09D7CA477}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Hyphen.Mini", "Mini\Mini.vcxproj", "{6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Hyphen", "Virtuoso.Hyphen.vcxproj", "{17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|Mixed Platforms = Debug|Mixed Platforms + Debug|Win32 = Debug|Win32 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|Mixed Platforms = Release|Mixed Platforms + Release|Win32 = Release|Win32 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {319EA506-200F-48DE-92D7-64D09D7CA477}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Debug|Any CPU.Build.0 = Debug|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Debug|Win32.ActiveCfg = Debug|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Debug|x86.ActiveCfg = Debug|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Debug|x86.Build.0 = Debug|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Release|Any CPU.ActiveCfg = Release|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Release|Any CPU.Build.0 = Release|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Release|Mixed Platforms.Build.0 = Release|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Release|Win32.ActiveCfg = Release|Any CPU + {319EA506-200F-48DE-92D7-64D09D7CA477}.Release|x86.ActiveCfg = Release|Any CPU + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Debug|Any CPU.ActiveCfg = Debug|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Debug|Mixed Platforms.ActiveCfg = Release|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Debug|Win32.ActiveCfg = Debug|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Debug|Win32.Build.0 = Debug|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Debug|x86.ActiveCfg = Debug|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Release|Any CPU.ActiveCfg = Release|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Release|Mixed Platforms.ActiveCfg = Release|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Release|Win32.ActiveCfg = Release|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Release|Win32.Build.0 = Release|Win32 + {6269DCEE-A3B7-46E2-85B1-E09E8C6C1BAD}.Release|x86.ActiveCfg = Release|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Debug|Any CPU.ActiveCfg = Debug|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Debug|Mixed Platforms.Build.0 = Debug|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Debug|Win32.ActiveCfg = Debug|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Debug|Win32.Build.0 = Debug|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Debug|x86.ActiveCfg = Debug|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Release|Any CPU.ActiveCfg = Release|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Release|Mixed Platforms.ActiveCfg = Release|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Release|Mixed Platforms.Build.0 = Release|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Release|Win32.ActiveCfg = Release|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Release|Win32.Build.0 = Release|Win32 + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C}.Release|x86.ActiveCfg = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.v11.suo b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.v11.suo new file mode 100644 index 0000000..c08e706 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.v11.suo differ diff --git a/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcproj b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcproj new file mode 100644 index 0000000..1f97045 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcproj @@ -0,0 +1,300 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcxproj b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcxproj new file mode 100644 index 0000000..d622487 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcxproj @@ -0,0 +1,176 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + + Hyphen + {17AC97C6-92C5-4BC5-BBB4-9DCC2198E36C} + Virtuoso.Hyphen + MakeFileProj + + + + Makefile + v110 + + + Makefile + v110 + + + + + + + + + + + + + <_ProjectFileVersion>11.0.50727.1 + + + .\MirandaOut\$(Configuration)\Plugins\ + $(Configuration)\ + if not exist "bin\$(Configuration)" mkdir "bin\$(Configuration)" +if not exist "$(OutDir)" mkdir "$(OutDir)" + +echo === Copying support files... === +copy /Y ..\Thirdparty\*.* bin\$(Configuration)\*.* + +echo === Coyping Docs === +copy /Y ..\Plugins\bin\*.xml bin\$(Configuration)\*.* + +echo === Assembling Hyphen... === +C:\Windows\Microsoft.NET\Framework\v2.0.50727\ilasm.exe LoaderStub.il ..\Plugins\bin\IL\Plugins.il /res:..\Plugins\bin\IL\Plugins.res /dll /pdb /key:..\Plugins\Virtuoso.Hyphen.snk /output:"bin\$(Configuration)\Hyphen.dll" +copy /Y "bin\$(Configuration)\*.*" "$(OutDir)*.*" + +echo === Deploying configuration... === +copy /Y ..\Plugins\Resources\miranda32.exe.config "$(OutDir)..\*.*" + +echo === Deploying test plugins... === +if not exist "$(OutDir)managed" mkdir "$(OutDir)managed" +if exist PluginsToTest\*.dll copy /Y PluginsToTest\*.* "$(OutDir)managed\*.*" + + cd bin\$(Configuration) +del *.dll +del *.pdb + bin\$(Configuration)\Hyphen.dll + WIN32;_DEBUG;$(NMakePreprocessorDefinitions) + + + .\MirandaOut\$(Configuration)\Plugins\ + $(Configuration)\ + if not exist "bin\$(Configuration)" mkdir "bin\$(Configuration)" +if not exist "$(OutDir)" mkdir "$(OutDir)" + +echo === Copying support files... === +copy /Y ..\Thirdparty\*.* bin\$(Configuration)\*.* + +echo === Coyping Docs === +copy /Y ..\Plugins\bin\*.xml bin\$(Configuration)\*.* + +echo === Assembling Hyphen... === +C:\Windows\Microsoft.NET\Framework\v2.0.50727\ilasm.exe LoaderStub.il ..\Plugins\bin\IL\Plugins.il /res:..\Plugins\bin\IL\Plugins.res /dll /pdb /key:..\Plugins\Virtuoso.Hyphen.snk /output:"bin\$(Configuration)\Hyphen.dll" +copy /Y "bin\$(Configuration)\*.*" "$(OutDir)*.*" + +echo === Deploying configuration... === +copy /Y ..\Plugins\Resources\miranda32.exe.config "$(OutDir)..\*.*" + +echo === Deploying test plugins... === +if not exist "$(OutDir)managed" mkdir "$(OutDir)managed" +if exist PluginsToTest\*.dll copy /Y PluginsToTest\*.* "$(OutDir)managed\*.*" + + cd bin\$(Configuration) +del *.dll +del *.pdb + bin\$(Configuration)\Hyphen.dll + WIN32;NDEBUG;$(NMakePreprocessorDefinitions) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {319ea506-200f-48de-92d7-64d09d7ca477} + false + + + {6269dcee-a3b7-46e2-85b1-e09e8c6c1bad} + false + + + + + + \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcxproj.filters b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcxproj.filters new file mode 100644 index 0000000..507cb1c --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcxproj.filters @@ -0,0 +1,182 @@ + + + + + {fe1c7b4b-1571-4541-b591-f3ace591e83c} + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav + + + {17167209-f51e-45f0-ad73-f255783e1719} + + + {a01170de-c81f-40b6-a94d-3530a8eb78a2} + + + + + Sources + + + Sources + + + Sources + + + Sources + + + + + Sources + + + Sources + + + Sources + + + Sources + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + + + + + + \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcxproj.user b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcxproj.user new file mode 100644 index 0000000..7cbb321 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/Virtuoso.Hyphen.vcxproj.user @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Hyphen/Virtuoso.Hyphen/bin/Debug/Hyphen.dll b/Hyphen/Virtuoso.Hyphen/bin/Debug/Hyphen.dll new file mode 100644 index 0000000..ed2ca81 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/bin/Debug/Hyphen.dll differ diff --git a/Hyphen/Virtuoso.Hyphen/bin/Debug/Hyphen.pdb b/Hyphen/Virtuoso.Hyphen/bin/Debug/Hyphen.pdb new file mode 100644 index 0000000..793817e Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/bin/Debug/Hyphen.pdb differ diff --git a/Hyphen/Virtuoso.Hyphen/bin/Debug/Hyphen.xml b/Hyphen/Virtuoso.Hyphen/bin/Debug/Hyphen.xml new file mode 100644 index 0000000..42bddb0 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/bin/Debug/Hyphen.xml @@ -0,0 +1,2016 @@ + + + + Hyphen + + + + + Represents a standalone module loaded into the default AppDomain. + + + + + Initializes a new instance of the class. + + TRUE if the modules runs under a post-0.7#20 API; FALSE otherwise. + + + + Finalizes the module. + + + + + Represents the MirandaPluginInfo export of Miranda's API. + + Miranda version (in Miranda's format) + Ptr to an instance of the PLUGININFO(EX) structure. + + + + Represents the MirandaPluginInterfaces export of Miranda's API. + + Ptr to an array of interface GUIDs. + + + + Represents the Load export of Miranda API. Loads Hyphen and initializes the module. + + Ptr to an instance of the PLUGINLINK structure. + Load result. + + + + Enables the plugin when Miranda completes initialization. + + + + + Represents the Unload export of Miranda API. Unloads Hyphen and shuts down the runtime. + + Unload result. + + + + Gets a indication whether a plugin can be unloaded. + + + + + + Gathers and publishes plugin information. + + Plugin to evaluate. + Miranda version to pass to the plugin. + TRUE if the information were obtained; FALSE if not. + + + + Probes custom API exports of a standalone plugin. + + Plugin. + + + + Loads the actual plugin behind a proxy assembly. + + An instance of a plugin. + + + + Executes a custom API export. + + Type of the return value. + Export name. + Additional data. + Return value. + + + + Gets a standalone plugin behind this module. + + + + + Gets a value indicating whether the runtime runs under the post-0.7#20 Miranda API. + + + + + Gets a value indicating whether the standalone plugin was loaded. + + + + + Gets a value indicating whether the standalone plugins was initialized (i.e. has a descriptor). + + + + + Auxiliary Plugin Manager used to load a standalone plugin into the default AppDomain. + + + + + Represents a base class for cross-domain callable object that operate with Miranda Context. + + + + + Populates context information to be available for standalone plugins residing in the default AppDomain. + + The information are not published when there are no standalone modules to conserve resources. + + + + Represents an unknown plugin. Hyphen will impersonate itself with this plugin when binding to Miranda's events. + + + + + MirandaContext is not available at the time of the invocation. + + + + + + + + Controls managed plugin fusion and orchestrates the runtime. + + + + + Initializes the runtime. + + + Called from the exported IL stubs as a first method to initialize the Loader singleton. + + + + + Initializes the Loader and prepares its PLUGININFO. + + + + + Publishes the plugin info and marshals it into a ptr. + + + + + Populates the plugin info with Hyphen's identity. + + Plugin info. + + + + Gets a specified version of the Loader. + + A version of the Loader to be returned. + An instance of the Loader or NULL when the version cannot be satisfied. + + Cannot be inlined because of the HyphenVersion property which relies on the Assembly.GetExecutingAssembly() method. + + + + + Gets an instance of the Loader. + + An instance of the Loader. + method not called. + + + + Represents the MirandaPluginInfo export of Miranda's API. + + Miranda version (in Miranda's format) + Ptr to an instance of the PLUGININFO structure. + + + + Represents the MirandaPluginInfoEx export of Miranda's API. + + Miranda version (in Miranda's format) + Ptr to an instance of the PLUGININFOEX structure. + + Specific to post-0.7#20 Miranda API. + + + + + Gets the pointer to a dummy plugin info structure. + + Pointer. + + + + Performs initialization steps common to all MirandaPluginInfo exports. + + Miranda version. + + + + Represents the MirandaPluginInterfaces export of Miranda's API. + + Ptr to an array of interface GUIDs. + + + + Called by a standalone module to ensure the Loader is ready (the module could be loaded before Hyphen). + + Ptr to an instance of the PLUGINLINK structure. + + Calls the to ensure that the Loader is ready. This method is needed + to handle a situation when a standalone module is loaded before Hyphen. + Does nothing when Hyphen is already loaded. + + + + + Represents the Load export of Miranda API. Loads Hyphen and initializes the runtime. + + Ptr to an instance of the PLUGINLINK structure. + Result. + + + + Initializes the runtime context (including configuration). + + Ptr to PLUGINLINK to initialize from. + + + + Hooks to the ModulesLoaded event to complete context initialization. + + + + + Completes the runtime initialization and fires the ModulesLoaded event. + + + + + Registers Hyphen for updates via Updater. + + + + + Initializes the FileSystemWatcher to watch for plugin changes. + + + + + Populates Miranda's menu with Hyphen's items and initializes managed menu for plugins. + + + + + Initializes the managed menu for managed plugins. This menu, unlike Miranda's, supports item removal. + + + + + Represents the Unload export of Miranda API. Unloads Hyphen and shuts down the runtime. + + Unload result. + + Called by the UnloadOnShutdownService to unload managed plugins before Miranda does. + Managed plugins SHOULD NOT be unloaded when Miranda's unloading, because I do not consider it safe + (i.e. heap corruption is likely to occur). + + + + + Unloads Hyphen completelly. + + + + + Disposes the plugin's folder watcher (if needed). + + + + + Disposes the Tray manager (if needed). + + + + + Broadcasts the BeforeShutdown event to the managed plugins and unloads Hyphen on Miranda's shutdown. + + + + + Broadcasts the BeforeShutdown event to the managed plugins. + + + + + Loads / unloads managed plugins. + + + + + Reloads managed plugins. + + + + + Loads managed plugins. + + + + + Called by the FusionProgressDialog on another thread to perform the fusion itself. + + + + + Initializes a sandbox for plugins. + + + + + Initializes a fusion context. + + + + + Loads the Plugin Manager. + + + + + Initializes the Tray Manager. + + + + + Initializes the UI sync context for event dispathing on the current thread. + + + + + Registers managed main menu for Miranda's AddMenuItem services in an AppDomain. + + Plugin manager. + + + + Clears the StringResolver cache (plugins are loaded and resolvers are junk now). + + + + + Shows managed menu. + + + + + Shows a configuration dialog to configure standalone modules. + + + + + Shows Isolated-plugins management dialog. + + + + + Shows the plugin management dialog. + + + + + Handles a plugin file change. + + + + + Unloads managed plugins. + + + + + Unloads managed plugins. + + TRUE to perform fast unload only; FALSE to perfrom full unload. + + + + Handles Hyphen (default AppDomain) unhandled exceptions. + + + + + Handles Windows Forms (default AppDomain) unhandled exceptions. + + + + + Verifies the .config file is present and when it is not, the default one is created. + + + + + Ensures only a single instance of Hyphen is loaded into the process. + + + + + Formats singleton's mutex name. + + Mutext name. + + + + Invokes a delegate on behalf of Loader's AppDomain (i.e. the default one). + + Delegate. + Optional arguments. + + + + + Verifies whether the code is executing in the default AppDomain. + + The code is not executing in the default AppDomain. + + + + Gets a current version of the runtime. + + + + + Gets a value whether the plugins are loaded. Not synchronized, always use in a lock. + + THIS MUST NOT BE SYNCHRONIZED, ALWAYS CALLED IN LOCK! (possible deadlock in FusionProgressDialog). + + + + Gets Hyphen plugin info. + + + + + + + + + This method is static to not let the execution run in default AppDomain but in a domain of the menu itself. + + + + + Will return char*, as usual. + + + + + Will never return the user's custom name. + + + + + Will return TCHAR* instead of char*. + + + + + Will not use the cache. + + + + + Enumerates contact handles, excluding the Me contact. + + Contact handles. + + + + Return TRUE to filter out the event, FALSE to pass the message along. + + + + + Represents database event information. + + + + + DB/Event/Get + Retrieves all the information stored in hDbEvent + wParam=(WPARAM)(HANDLE)hDbEvent + lParam=(LPARAM)(DBEVENTINFO*)&dbe + hDbEvent should have been returned by db/event/add or db/event/find*event + Returns 0 on success or nonzero if hDbEvent is invalid + Don't forget to set dbe.cbSize, dbe.pBlob and dbe.cbBlob before calling this + service + The correct value dbe.cbBlob can be got using db/event/getblobsize + If successful, all the fields of dbe are filled. dbe.cbBlob is set to the + actual number of bytes retrieved and put in dbe.pBlob + If dbe.cbBlob is too small, dbe.pBlob is filled up to the size of dbe.cbBlob + and then dbe.cbBlob is set to the required size of data to go in dbe.pBlob + On return, dbe.szModule is a pointer to the database module's own internal list + of modules. Look but don't touch. + + + + + DB/Event/GetContact + Retrieves a handle to the contact that owns hDbEvent. + wParam=(WPARAM)(HANDLE)hDbEvent + lParam=0 + hDbEvent should have been returned by db/event/add or db/event/find*event + NULL is a valid return value, meaning, as usual, the user. + Returns (HANDLE)(-1) if hDbEvent is invalid, or the handle to the contact on + success + This service is exceptionally slow. Use only when you have no other choice at + all. + + + + + DB/Event/GetText (0.7.0+) + Retrieves the event's text + wParam=(WPARAM)0 (unused) + lParam=(LPARAM)(DBEVENTGETTEXT*)egt - pointer to structure with parameters + egt->dbei should be the valid database event read via MS_DB_EVENT_GET + egt->datatype = DBVT_WCHAR or DBVT_ASCIIZ or DBVT_TCHAR. If a caller wants to + suppress Unicode part of event in answer, add DBVTF_DENYUNICODE to this field. + egt->codepage is any valid codepage, CP_ACP by default. + Function returns a pointer to a string in the required format. + This string should be freed by a call of mir_free + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + Event handle. + + + + Creates a new instance of the from an event handle. + + Event handle. + Database event info. + + + + Gets the event information based on its handle. + + Event handle. + [OUT] Event type. + [OUT] Event flags. + [OUT] Event data. + [OUT] Event related module. + [OUT] Event timestamp. + + + + Prepares the for information extraction and the blob buffer. + + Event handle. + [OUT] DB event info to marshal data into. + [OUT] Locked Blob buffer. + + + + Initializes the instance by marshaling data from a pointer. + + pointer. + + + + Get the event information from a struct. + + [REF] struct. + Event handle (the blob buffer will be populated if not null). + Buffer to use for blob marshaling. + [OUT] Event type. + [OUT] Event flags. + [OUT] Event data. + [OUT] Event related module. + [OUT] Event timestamp. + + + + Populates the blob buffer set by the parameter. + + [REF] struct identifiing the buffer. + Event handle. + Buffer could bet populated. + + + + Gets the event timestamp. + + [REF] struct. + Buffer to reuse. + [OUT] Timestamp. + + + + Gets the event module. + + [REF] struct. + Event module. + + + + Gets the event data. + + [REF] struct. + Event data. + + + + Marshals the from a struct pointer. + + struct pointer. + Event info. + + + + Gets the handle of the contact owning this event. This method is very slow, use wisely. + + Associated contact handle. + + + + Gets the handle of the contact owning this event. This method is very slow, use wisely. + + Event handle to get the contact handle for. + Associated contact handle. + + + + The network capabilities that the protocol supports. + + + + + The status modes that the protocol supports. + + + + + The status modes that the protocol supports away-style messages for. Uses the flags. + + + + + None. + + + + + Supports IM sending. + + + + + Supports IM receiving. + + + + + Aupports separate URL sending. + + + + + Supports separate URL receiving. + + + + + Supports file sending. + + + + + Supports file receiving. + + + + + Supports broadcasting away messages. + + + + + Supports reading others' away messages. + + + + + Contact lists are stored on the server, not locally. See notes below. + + + + + Will get authorisation requests for some or all contacts. + + + + + Will get 'you were added' notifications. + + + + + Has an invisible list. + + + + + Has a visible list for when in invisible mode. + + + + + Supports setting different status modes to each contact. + + + + + the protocol is extensible and Supports plugin-defined messages. + + + + + Supports direct (not server mediated) communication between clients. + + + + + Supports creation of new user IDs. + + + + + Has a realtime chat capability. + + + + + Supports replying to a mode message request with different text depending on the contact requesting. + + + + + Supports a basic user searching facility. + + + + + Supports one or more protocol-specific extended search schemes. + + + + + Supports renaming of incoming files as they are transferred. + + + + + Can resume broken file transfers. + + + + + Can add search results to the contact list. + + + + + Can send contacts to other users. + + + + + Can receive contacts from other users. + + + + + Can change our user information stored on server. + + + + + Supports a search by e-mail feature. + + + + + Set if the uniquely identifying field of the network is the e-mail address. + + + + + Supports searching by nick/first/last names. + + + + + Has a dialog box to allow searching all the possible fields. + + + + + The unique user IDs for this protocol are numeric. + + + + + Flashes the icon even if the user is occupied, and puts the event at the top of the queue. + + + + + The icon will not flash for ever, only a few times. This is for eg online alert. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + + Initializes a context from a plugin link. + + + + + + + Represents a late-binded master subscriber of Miranda events. + + + + + Formats the ANSI-\0-UNICODE-\0\0 layout in the memory. + + String to layout. + [OUT] Blob pointer to the resulting memory layout. + Blob size in bytes. + Message blob format: ansi\0unicode\0\0 + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins are enabled and ready to use. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die General ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die About ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Show Hyphen copyright information. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Review Hyphen information. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Management ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Manage Hyphen plugins. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Enable or disable Hyphen plugins on individual basis. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die This operation is not supported for an unknown protocol. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot detect the default string encoding used in Miranda. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An internal error occurred in the PluginManager while working with unmanaged memory. Contact Hyphen vendor, please. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while opening plugin home page. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot register/unregister builtin protocol. Only custom protocol can be registered/unregistered. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to initialize Hyphen configuration. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Duplicit loader options detected. RequiredVersion or MinimalMirandaVersion were set by a base class previously. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot complete the service call. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while loading plugins. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The feature is not available from current domain. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - {1} ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load string resolver of type '{0}'. Check if there is a public default .ctor. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Failed hooking event '{0}'. Check event name. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - this plugin cannot be loaded automatically. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to process method '{0}' - method signature does not match required delegate signature. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot instantiate plugin type '{0}' - no valid constructor found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot create service function '{0}' - the service already exists. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Failed creating service function '{0}'. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Master type for the {0} standalone plugin proxy not found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to initialize plugin descriptor - {0} ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while instantiating plugin type '{0}' - Hyphen is not allowed to load the plugin. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugin '{0}' - the image is not a valid CLI assembly. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while instantiating plugin type '{0}' - constructor threw an exception ({1}). ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot complete requested operation - Miranda service '{0}' returned {1}. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugin {0} requires {1} but this version is not available, the plugin cannot be loaded. Please download the latest version. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot associate menu item '{0}' with method '{1}' - the item is already associated with service '{2}'. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hook not found. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Multiple Hyphen plugins are not supported side-by-side. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An internal error occurred in Hyphen. Please contact Hyphen's author. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot access the InteropBuffer without locking it before. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot perform the requested operation on a locked buffer. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot unlock the buffer from a thread that does not locked it. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Invalid fusion context. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die The handle is invalid. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot translate this value - invalid value address or value format. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot load plugins - I/O error occurred. Check if you have permissions to access the 'Miranda\plugins\managed' directory. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Miranda context has not been initialized yet. The context will be initialialized in the Load export, until then, context calls are not supported. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Miranda must be restarted. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot read the setting on behalf of the owning module - the owning module cannot be determined. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Internal error - cannot reinitialize already initialized plugin. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Already initialized. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Cannot complete requested operation - this plugin has not been loaded yet. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Internal error occurred, cannot return requested information. The singleton has not been initialized yet. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while working with the Configuration Storage to load configuration. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while working with the Configuration Storage to save configuration. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to unload plugin manager - cannot initiate shutdown from its own AppDomain. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen crashed ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to load Hyphen ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to load/unload plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No options available ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No plugins enabled ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugins updated ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Runtime version problem ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Warning ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die {0} error ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Plugin {0} updated ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Unable to load Hyphen - {0} ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred while loading/unloading managed plugins - {0}. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occured in the {0} plugin, some information may be lost. However, the plugin will continue running. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occurred in the {1} plugin - {2}{0}{0}Press OK to disable the plugin, otherwise press Cancel. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Some information may be lost. However, the plugin will continue running. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occured in Hyphen. Please, contact its author to resolve the issue. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die You are about to disable all Hyphen plugins. Are you sure? ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die There was an error with Microsoft.net configuration files. These files are critical for Hyphen execution. The problem was corrected but Miranda must be restarted to apply changes. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die This plugin has no options to configure. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die To perform the task, you have to enable the plugins first. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins were successfully reloaded. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen plugins were updated. Do you wish to reload them? ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die An error occured while preparing the report. Copy the details and visit http://forums.miranda-im.org for assistance. ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Configure ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Error ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die {0} crashed ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die (no items / plugins loaded) ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die (select a plugin) ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die <unknown> ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Options... ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Enable or disable plugins ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Manage plugins... ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die No ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Extra items... ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Yes ähnelt. + + + + + Sucht eine lokalisierte Zeichenfolge, die Hyphen ähnelt. + + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Icon ähnlich wie (Symbol). + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Occurs when a control is selected and before it is prepared to be shown. + + + + + Occurs when a control is about to be shown. The control is shown when the user clicks on its item. + + TRUE if the control is being requested for the first time; FALSE if it is requested repeatedly. + TRUE to cancel the display; FALSE to continue. + + + + Occurs when a control is about to be hidden. The control is hidden when the user clicks on another item. + + TRUE to cancel the dismissal; FALSE to continue. + + + + Occurs when the user dismisses the configuration dialog via OK button and the control is dirty. The control should save its settings now. + + + + + Occurs when the user dismisses the configuration dialog via OK or CANCEL button. + + + + + Marks the control dirty. + + + + + Gets a value indicating whether the control has an UI to show. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + Casablanca + + + + Remove the dialog from the active dialog tracking list. + + + + + Gathers active dialogs of the plugin and unregisters them. + + Plugin. + Unregistered dialogs to dispose. + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Draws a textbox with a prompt inside of it, similar to the "Quick Search" box + in Outlook 2007, IE7 or the Firefox 2.0 search box. The prompt will disappear when + the focus is placed in the textbox, and will not display again if the Text property + contains any value. If the Text property is empty, then the prompt will display + again when the textbox loses the focus. + + + + + Public constructor + + Uncomment the SetStyle line to activate the OnPaint logic in place of the WndProc logic + + + + When the textbox receives an OnEnter event, select all the text if any text is present + + + + + + Redraw the control when the text alignment changes + + + + + + Redraw the control with the prompt + + + This event will only fire if ControlStyles.UserPaint is set to true in the constructor + + + + Overrides the default WndProc for the control + + The Windows message structure + + This technique is necessary because the OnPaint event seems to be doing some + extra processing that I haven't been able to figure out. + + + + + Overload to automatically create the Graphics region before drawing the text prompt + + The Graphics region is disposed after drawing the prompt. + + + + Draws the PromptText in the TextBox.ClientRectangle using the PromptFont and PromptForeColor + + The Graphics region to draw the prompt on + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Required designer variable. + + + + + Clean up any resources being used. + + true if managed resources should be disposed; otherwise, false. + + + + Required method for Designer support - do not modify + the contents of this method with the code editor. + + + + + Represents a marker interface for classes wrapping Hyphen runtime configuration. + + + + + Represents a base class for managed Miranda protocols. + + + + + Initializes a new instance of the class. + + + + + Initializes the instance and creates essential protocol services. + + + + + + Unloads the protocol. + + + + + Gets a human-readable name for the protocol. + + The number of characters in the buffer. + Buffer pointer. + Returns 0 on success, nonzero on failure. + + + + Gets the status mode that a protocol is currently in. + + Not used. + Not used. + Returns the status mode. + + + + Changes the protocol's status mode. + + New status values. + Not used. + Returns 0 on success, nonzero on failure. + + Will send an ack with: + type=ACKTYPE_STATUS, result=ACKRESULT_SUCCESS, hProcess=(HANDLE)previousMode, lParam=newMode. + + + + + Loads one of the protocol-specific icons + + Which icon (currently ignored). + Not used. + Icon handle (HICON). + + + + Gets the capability flags of the module. + + Flags category. + Not used. + + + + + Sends an instant message. + + Flags. + Contact-Chain-Send data pointer. + Returns a hProcess corresponding to the one in the ack event. + + Will send an ack when the message actually gets sent type=ACKTYPE_MESSAGE, result=success/failure, lParam=0. + + + + + Gets the plugin interfaces. + + + + + Gets the managed protocol descriptor for this module. + + + + + Gets the protocol type. + + + + + Gets the protocol icon. + + + + + Gets the protocol supported capabilities. + + + + + Gets the status modes the protocol supports an away message for. + + + + + Gets the protocol supported status modes. + + + + + Gets or sets the protocol status. + + + + + Handles Ini categories, keys and their associated values, static methods implemented for file + handling (saving and reading) + + + + + Initialies a new IniStructure + + + + + Adds a category to the IniStructure + + Name of the new category + + + + Deletes a category and its contents + + category to delete + + + + Renames a category + + Category to rename + New name + + + + Returns the names of all categories + + + + + + Returns the name of a category by specifying the index. + Useful to enumerate through all categories. + + The category index + + + + + Adds a key-value pair to a specified category + + Name of the category + New name of the key + Associated value + + + + Returns the value of a key-value pair in a specified category by specifying the key + + Name of the category + Name of the Key + + + + + Returns the key-value pair in a specified category by specifying the index + + Index of the category + Index of the Key + + + + + Returns the name of the key in a key-value pair in a specified category by specifying the index + + Index of the category + Index of the key + + + + + Deletes a key-value pair + + Name of the category + Name of the Key + + + + Renames the keyname in a key-value pair + + Name of the category + Name of the Key + New name of the Key + + + + Modifies the value in a key-value pair + + Name of the category + Name of the Key + New name of the Key + + + + Returns all keys in a category + + Name of the category + + + + + Writes an IniStructure to a file with a comment. + + The contents to write + The complete path and name of the file + Comment to add + + + + + Writes an IniStructure to a file without a comment. + + The contents to write + The complete path and name of the file + + + + + Reads an ini file and returns the content as an IniStructure. Returns null if an error occurred. + + The filename to read + + + + + Call the next service in the chain for this send operation. + wParam=wParam + lParam=lParam + The return value should be returned immediately + wParam and lParam should be passed as the parameters that your service was + called with. wParam must remain untouched but lParam is a CCSDATA structure + that can be copied and modified if needed. + Typically, the last line of any chaining protocol function is + return CallService(MS_PROTO_CHAINSEND,wParam,lParam); + + + + + Call the next service in the chain for this receive operation + wParam=wParam + lParam=lParam + The return value should be returned immediately + wParam and lParam should be passed as the parameters that your service was + called with. wParam must remain untouched but lParam is a CCSDATA structure + that can be copied and modified if needed. + When being initiated by the network-access protocol module, wParam should be + zero. + Thread safety: ms_proto_chainrecv is completely thread safe since 0.1.2.0 + Calls to it are translated to the main thread and passed on from there. The + function will not return until all callees have returned, irrepective of + differences between threads the functions are in. + + + + + Represents a generic handler for Miranda-raised events. + + Type of EventArgs. + Sender of the event. + Event arguments. + TRUE to block the event from bubbling to another subscribers, FALSE to pass it along. + + + + Provides information about current state of Hyphen runtime. + This class can be used only from the context of standalone modules (i.e. from the default AppDomain only). + + + + + Marks the class initialized. + + + + + Verifies whether the class was initialized (from the default AppDomain). + + Class not initialized (i.e. called from other than default AppDomain). + + + + Gets an indication whether the Hyphen runtime is currently loading. + + Class not initialized (i.e. called from other than default AppDomain). + + + + Gets an indication whether the Isolated plugins are loaded. + + Class not initialized (i.e. called from other than default AppDomain). + + + + Manages Miranda skin entities, for example icons and sounds. + + m_skin.h + + + + Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + + Sucht eine lokalisierte Ressource vom Typ System.Drawing.Bitmap. + + + + diff --git a/Hyphen/Virtuoso.Hyphen/bin/Debug/TabStripControlLibrary.dll b/Hyphen/Virtuoso.Hyphen/bin/Debug/TabStripControlLibrary.dll new file mode 100644 index 0000000..92448f0 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/bin/Debug/TabStripControlLibrary.dll differ diff --git a/Hyphen/Virtuoso.Hyphen/bin/Debug/TabStripControlLibrary.pdb b/Hyphen/Virtuoso.Hyphen/bin/Debug/TabStripControlLibrary.pdb new file mode 100644 index 0000000..b1ee635 Binary files /dev/null and b/Hyphen/Virtuoso.Hyphen/bin/Debug/TabStripControlLibrary.pdb differ diff --git a/Hyphen/Virtuoso.Hyphen/miranda32.exe.config b/Hyphen/Virtuoso.Hyphen/miranda32.exe.config new file mode 100644 index 0000000..d5e5ca2 --- /dev/null +++ b/Hyphen/Virtuoso.Hyphen/miranda32.exe.config @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Miranda.sln b/Miranda.sln index f2ed4ec..e70d144 100644 --- a/Miranda.sln +++ b/Miranda.sln @@ -6,13 +6,19 @@ EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU + Debug|x86 = Debug|x86 Release|Any CPU = Release|Any CPU + Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {70C2891E-C542-4F0D-8FBD-865351B7A718}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {70C2891E-C542-4F0D-8FBD-865351B7A718}.Debug|Any CPU.Build.0 = Debug|Any CPU + {70C2891E-C542-4F0D-8FBD-865351B7A718}.Debug|x86.ActiveCfg = Debug|x86 + {70C2891E-C542-4F0D-8FBD-865351B7A718}.Debug|x86.Build.0 = Debug|x86 {70C2891E-C542-4F0D-8FBD-865351B7A718}.Release|Any CPU.ActiveCfg = Release|Any CPU {70C2891E-C542-4F0D-8FBD-865351B7A718}.Release|Any CPU.Build.0 = Release|Any CPU + {70C2891E-C542-4F0D-8FBD-865351B7A718}.Release|x86.ActiveCfg = Release|x86 + {70C2891E-C542-4F0D-8FBD-865351B7A718}.Release|x86.Build.0 = Release|x86 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE