/// <include file='doc\WindowPane.uex' path='docs/doc[@for="WindowPane.Dispose1"]' /> /// <devdoc> /// Called when this tool window pane is being disposed. /// </devdoc> override protected void Dispose(bool disposing) { if (disposing) { if (control != null) { try { if (control is IDisposable) { control.Dispose(); } } catch (Exception e) { System.Diagnostics.Debug.Fail(String.Format("Failed to dispose {0} controls.\n{1}", this.GetType().FullName, e.Message)); } control = null; } IVsWindowFrame windowFrame = (IVsWindowFrame)this.Frame; if (windowFrame != null) { // Note: don't check for the return code here. windowFrame.CloseFrame((uint)__FRAMECLOSE.FRAMECLOSE_SaveIfDirty); } } base.Dispose(disposing); }
public P4ToolWindow() : base(null) { // set the window title this.Caption = Resources.ResourceManager.GetString("Sample Tool Window"); // set the CommandID for the window ToolBar this.ToolBar = new CommandID(GuidList.guidP4VsProviderCmdSet, CommandId.imnuToolWindowToolbarMenu); // *** // *** If using a tool bar will need to uncomment this and add the resources back into the vsct file // *** and resources // *** // set the icon for the frame //this.BitmapResourceID = CommandId.ibmpToolWindowsImages; // bitmap strip resource ID //this.BitmapIndex = CommandId.iconHistory; // index in the bitmap strip control = new P4ToolWindowControl(); control.Dock = DockStyle.Fill; }