public void SetSite() { // Create the package IVsPackage package = new VSPackage2Package() as IVsPackage; Assert.IsNotNull(package, "The object does not implement IVsPackage"); // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); // Site the package Assert.AreEqual(0, package.SetSite(serviceProvider), "SetSite did not return S_OK"); // Unsite the package Assert.AreEqual(0, package.SetSite(null), "SetSite(null) did not return S_OK"); }
public void InitializeMenuCommand() { // Create the package IVsPackage package = new VSPackage2Package() as IVsPackage; Assert.IsNotNull(package, "The object does not implement IVsPackage"); // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); // Site the package Assert.AreEqual(0, package.SetSite(serviceProvider), "SetSite did not return S_OK"); //Verify that the menu command can be found CommandID menuCommandID = new CommandID(Company.VSPackage2.GuidList.guidVSPackage2CmdSet, (int)Company.VSPackage2.PkgCmdIDList.cmdidTestCommand); System.Reflection.MethodInfo info = typeof(Package).GetMethod("GetService", BindingFlags.Instance | BindingFlags.NonPublic); Assert.IsNotNull(info); OleMenuCommandService mcs = info.Invoke(package, new object[] { (typeof(IMenuCommandService)) }) as OleMenuCommandService; Assert.IsNotNull(mcs.FindCommand(menuCommandID)); }
public void MenuItemCallback() { // Create the package IVsPackage package = new VSPackage2Package() as IVsPackage; Assert.IsNotNull(package, "The object does not implement IVsPackage"); // Create a basic service provider OleServiceProvider serviceProvider = OleServiceProvider.CreateOleServiceProviderWithBasicServices(); // Create a UIShell service mock and proffer the service so that it can called from the MenuItemCallback method BaseMock uishellMock = UIShellServiceMock.GetUiShellInstance(); serviceProvider.AddService(typeof(SVsUIShell), uishellMock, true); // Site the package Assert.AreEqual(0, package.SetSite(serviceProvider), "SetSite did not return S_OK"); //Invoke private method on package class and observe that the method does not throw System.Reflection.MethodInfo info = package.GetType().GetMethod("MenuItemCallback", BindingFlags.Instance | BindingFlags.NonPublic); Assert.IsNotNull(info, "Failed to get the private method MenuItemCallback throug refplection"); info.Invoke(package, new object[] { null, null }); //Clean up services serviceProvider.RemoveService(typeof(SVsUIShell)); }
public EditorFactory(VSPackage2Package package) { Trace.WriteLine(string.Format(CultureInfo.CurrentCulture, "Entering {0} constructor", this.ToString())); this.editorPackage = package; }
public void IsIVsPackage() { VSPackage2Package package = new VSPackage2Package(); Assert.IsNotNull(package as IVsPackage, "The object does not implement IVsPackage"); }
public void CreateInstance() { VSPackage2Package package = new VSPackage2Package(); }
/// <summary> /// Initialization routine for the Editor. Loads the list of properties for the vspackage2 document /// which will show up in the properties window /// </summary> /// <param name="package"></param> private void PrivateInit(VSPackage2Package package) { myPackage = package; loading = false; gettingCheckoutStatus = false; trackSel = null; Control.CheckForIllegalCrossThreadCalls = false; // Create an ArrayList to store the objects that can be selected ArrayList listObjects = new ArrayList(); // Create the object that will show the document's properties // on the properties window. EditorProperties prop = new EditorProperties(this); listObjects.Add(prop); // Create the SelectionContainer object. selContainer = new Microsoft.VisualStudio.Shell.SelectionContainer(true, false); selContainer.SelectableObjects = listObjects; selContainer.SelectedObjects = listObjects; // Create and initialize the editor System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(EditorPane)); this.editorControl = new MyEditor(); resources.ApplyResources(this.editorControl, "editorControl", CultureInfo.CurrentUICulture); // Event handlers for macro recording. this.editorControl.RichTextBoxControl.TextChanged += new System.EventHandler(this.OnTextChange); this.editorControl.RichTextBoxControl.MouseDown += new MouseEventHandler(this.OnMouseClick); this.editorControl.RichTextBoxControl.SelectionChanged += new EventHandler(this.OnSelectionChanged); this.editorControl.RichTextBoxControl.KeyDown += new KeyEventHandler(this.OnKeyDown); // Handle Focus event this.editorControl.RichTextBoxControl.GotFocus += new EventHandler(this.OnGotFocus); // Call the helper function that will do all of the command setup work setupCommands(); }
/// <summary> /// Constructor that calls the Microsoft.VisualStudio.Shell.WindowPane constructor then /// our initialization functions. /// </summary> /// <param name="package">Our Package instance.</param> public EditorPane(VSPackage2Package package) : base(null) { PrivateInit(package); }