protected override void OnMouseCaptureChanged(EventArgs e) { base.OnMouseCaptureChanged(e); if (splitContainerMessageFilter != null) { Application.RemoveMessageFilter(splitContainerMessageFilter); splitContainerMessageFilter = null; } }
/// <include file='doc\SplitContainer.uex' path='docs/doc[@for="SplitContainer.SplitEnd"]/*' /> /// <devdoc> /// Finishes the split movement. /// </devdoc> /// <internalonly/> private void SplitEnd(bool accept) { DrawSplitBar(DRAW_END); if (splitContainerMessageFilter != null) { Application.RemoveMessageFilter(splitContainerMessageFilter); splitContainerMessageFilter = null; } if (accept) { ApplySplitterDistance(); } else if (splitterDistance != initialSplitterDistance) { splitterClick = false; splitterDistance = SplitterDistanceInternal = initialSplitterDistance; } anchor = Point.Empty; }
private void SplitEnd(bool accept) { this.DrawSplitBar(3); if (this.splitContainerMessageFilter != null) { Application.RemoveMessageFilter(this.splitContainerMessageFilter); this.splitContainerMessageFilter = null; } if (accept) { this.ApplySplitterDistance(); } else if (this.splitterDistance != this.initialSplitterDistance) { this.splitterClick = false; this.splitterDistance = this.SplitterDistanceInternal = this.initialSplitterDistance; } this.anchor = Point.Empty; }
/// <include file='doc\SplitContainer.uex' path='docs/doc[@for="SplitContainer.SplitBegin"]/*' /> /// <devdoc> /// Begins the splitter moving. /// </devdoc> /// <internalonly/> private void SplitBegin(int x, int y) { anchor = new Point(x, y); splitterDistance = GetSplitterDistance(x, y); initialSplitterDistance = splitterDistance; initialSplitterRectangle = SplitterRectangle; // SECREVIEW : We need a message filter to capture the ESC key // to cancel the split action. // The method PreFilterMessage is adorned with a LinkDemand. // But this is not enough since this is a public unsealed class. // We should have private implementation of the IMessageFilter // So that we dont expose this to the classed deriving from this public class // Refer to VsWhidbey : 423553 for more information. IntSecurity.UnmanagedCode.Assert(); try { if (splitContainerMessageFilter == null) { splitContainerMessageFilter = new SplitContainerMessageFilter(this); } Application.AddMessageFilter(splitContainerMessageFilter); } finally { CodeAccessPermission.RevertAssert(); } CaptureInternal = true; DrawSplitBar(DRAW_START); }
private void SplitBegin(int x, int y) { this.anchor = new Point(x, y); this.splitterDistance = this.GetSplitterDistance(x, y); this.initialSplitterDistance = this.splitterDistance; this.initialSplitterRectangle = this.SplitterRectangle; System.Windows.Forms.IntSecurity.UnmanagedCode.Assert(); try { if (this.splitContainerMessageFilter == null) { this.splitContainerMessageFilter = new SplitContainerMessageFilter(this); } Application.AddMessageFilter(this.splitContainerMessageFilter); } finally { CodeAccessPermission.RevertAssert(); } base.CaptureInternal = true; this.DrawSplitBar(1); }