Example #1
0
        /// <include file='doc\Splitter.uex' path='docs/doc[@for="Splitter.SplitBegin"]/*' />
        /// <devdoc>
        ///     Begins the splitter moving.
        /// </devdoc>
        /// <internalonly/>
        private void SplitBegin(int x, int y)
        {
            SplitData spd = CalcSplitBounds();

            if (spd.target != null && (minSize < maxSize))
            {
                anchor      = new Point(x, y);
                splitTarget = spd.target;
                splitSize   = GetSplitSize(x, y);

                //



                IntSecurity.UnmanagedCode.Assert();
                try {
                    if (splitterMessageFilter != null)
                    {
                        splitterMessageFilter = new SplitterMessageFilter(this);
                    }
                    Application.AddMessageFilter(splitterMessageFilter);
                }
                finally {
                    CodeAccessPermission.RevertAssert();
                }
                CaptureInternal = true;
                DrawSplitBar(DRAW_START);
            }
        }
Example #2
0
        /// <include file='doc\Splitter.uex' path='docs/doc[@for="Splitter.SplitBegin"]/*' />
        /// <devdoc>
        ///     Begins the splitter moving.
        /// </devdoc>
        /// <internalonly/>
        private void SplitBegin(int x, int y)
        {
            SplitData spd = CalcSplitBounds();

            if (spd.target != null && (minSize < maxSize))
            {
                anchor      = new Point(x, y);
                splitTarget = spd.target;
                splitSize   = GetSplitSize(x, y);

                // SECREVIEW : We need a message filter to capture the ESC key
                //           : to cancel the split action.
                //           : The method PreFilterMessage is adorned with a LinkDemand.
                //
                IntSecurity.UnmanagedCode.Assert();
                try {
                    if (splitterMessageFilter != null)
                    {
                        splitterMessageFilter = new SplitterMessageFilter(this);
                    }
                    Application.AddMessageFilter(splitterMessageFilter);
                }
                finally {
                    CodeAccessPermission.RevertAssert();
                }
                CaptureInternal = true;
                DrawSplitBar(DRAW_START);
            }
        }
Example #3
0
        private void SplitBegin(int x, int y)
        {
            SplitData data = this.CalcSplitBounds();

            if ((data.target != null) && (this.minSize < this.maxSize))
            {
                this.anchor      = new Point(x, y);
                this.splitTarget = data.target;
                this.splitSize   = this.GetSplitSize(x, y);
                try
                {
                    if (this.splitterMessageFilter != null)
                    {
                        this.splitterMessageFilter = new SplitterMessageFilter(this);
                    }
                    Application.AddMessageFilter(this.splitterMessageFilter);
                }
                finally
                {
                    CodeAccessPermission.RevertAssert();
                }

                base.Capture = true; //Internal
                this.DrawSplitBar(1);
            }
        }
Example #4
0
 private void SplitEnd(bool accept)
 {
     this.DrawSplitBar(3);
     this.splitTarget = null;
     this.Capture     = false;
     if (this.splitterMessageFilter != null)
     {
         Application.RemoveMessageFilter(this.splitterMessageFilter);
         this.splitterMessageFilter = null;
     }
     if (accept)
     {
         this.ApplySplitPosition();
     }
     else if (this.splitSize != this.initTargetSize)
     {
         this.SplitPosition = this.initTargetSize;
     }
     this.anchor = Point.Empty;
 }
Example #5
0
        /// <include file='doc\Splitter.uex' path='docs/doc[@for="Splitter.SplitBegin"]/*' />
        /// <devdoc>
        ///     Begins the splitter moving.
        /// </devdoc>
        /// <internalonly/>
        private void SplitBegin(int x, int y)
        {
            SplitData spd = CalcSplitBounds();

            if (spd.target != null && (minSize < maxSize))
            {
                anchor      = new Point(x, y);
                splitTarget = spd.target;
                splitSize   = GetSplitSize(x, y);

                if (splitterMessageFilter != null)
                {
                    splitterMessageFilter = new SplitterMessageFilter(this);
                }
                Application.AddMessageFilter(splitterMessageFilter);

                CaptureInternal = true;
                DrawSplitBar(DRAW_START);
            }
        }
Example #6
0
        /// <include file='doc\Splitter.uex' path='docs/doc[@for="Splitter.SplitEnd"]/*' />
        /// <devdoc>
        ///     Finishes the split movement.
        /// </devdoc>
        /// <internalonly/>
        private void SplitEnd(bool accept)
        {
            DrawSplitBar(DRAW_END);
            splitTarget     = null;
            CaptureInternal = false;
            if (splitterMessageFilter != null)
            {
                Application.RemoveMessageFilter(splitterMessageFilter);
                splitterMessageFilter = null;
            }

            if (accept)
            {
                ApplySplitPosition();
            }
            else if (splitSize != initTargetSize)
            {
                SplitPosition = initTargetSize;
            }
            anchor = Point.Empty;
        }
Example #7
0
        /// <include file='doc\Splitter.uex' path='docs/doc[@for="Splitter.SplitBegin"]/*' />
        /// <devdoc>
        ///     Begins the splitter moving.
        /// </devdoc>
        /// <internalonly/>
        private void SplitBegin(int x, int y) {
            SplitData spd = CalcSplitBounds();
            if (spd.target != null && (minSize < maxSize)) {
                anchor = new Point(x, y);
                splitTarget = spd.target;
                splitSize = GetSplitSize(x, y);

                // SECREVIEW : We need a message filter to capture the ESC key
                //           : to cancel the split action.
                //           : The method PreFilterMessage is adorned with a LinkDemand.
                //
                IntSecurity.UnmanagedCode.Assert();
                try {
                    if (splitterMessageFilter != null)
                    {
                        splitterMessageFilter = new SplitterMessageFilter(this);
                    }
                    Application.AddMessageFilter(splitterMessageFilter);
                }
                finally {
                    CodeAccessPermission.RevertAssert();
                }
                CaptureInternal = true;
                DrawSplitBar(DRAW_START);
            }
        }
Example #8
0
        /// <include file='doc\Splitter.uex' path='docs/doc[@for="Splitter.SplitEnd"]/*' />
        /// <devdoc>
        ///     Finishes the split movement.
        /// </devdoc>
        /// <internalonly/>
        private void SplitEnd(bool accept) {
            DrawSplitBar(DRAW_END);
            splitTarget = null;
            CaptureInternal = false;
            if (splitterMessageFilter != null)
            {
                Application.RemoveMessageFilter(splitterMessageFilter);
                splitterMessageFilter = null;
            }

            if (accept) {
                ApplySplitPosition();
            }
            else if (splitSize != initTargetSize) {
                SplitPosition = initTargetSize;
            }
            anchor = Point.Empty;
        }
 private void SplitEnd(bool accept)
 {
     this.DrawSplitBar(3);
     this.splitTarget = null;
     base.CaptureInternal = false;
     if (this.splitterMessageFilter != null)
     {
         Application.RemoveMessageFilter(this.splitterMessageFilter);
         this.splitterMessageFilter = null;
     }
     if (accept)
     {
         this.ApplySplitPosition();
     }
     else if (this.splitSize != this.initTargetSize)
     {
         this.SplitPosition = this.initTargetSize;
     }
     this.anchor = Point.Empty;
 }
 private void SplitBegin(int x, int y)
 {
     SplitData data = this.CalcSplitBounds();
     if ((data.target != null) && (this.minSize < this.maxSize))
     {
         this.anchor = new Point(x, y);
         this.splitTarget = data.target;
         this.splitSize = this.GetSplitSize(x, y);
         System.Windows.Forms.IntSecurity.UnmanagedCode.Assert();
         try
         {
             if (this.splitterMessageFilter != null)
             {
                 this.splitterMessageFilter = new SplitterMessageFilter(this);
             }
             Application.AddMessageFilter(this.splitterMessageFilter);
         }
         finally
         {
             CodeAccessPermission.RevertAssert();
         }
         base.CaptureInternal = true;
         this.DrawSplitBar(1);
     }
 }