示例#1
0
        private void OpenWindow(WindowPositionSide side, WpfScreen screen)
        {
            if (side == WindowPositionSide.None)
            {
                return;
            }
            CloseWindowIfExists();

            double dockwindowLeft, dockwindowWidth;

            switch (side)
            {
            case WindowPositionSide.Left:
                dockwindowLeft  = WpfScreen.MostLeftX;
                dockwindowWidth = 300;
                break;

            case WindowPositionSide.Right:
                dockwindowLeft  = WpfScreen.MostRightX - 300;
                dockwindowWidth = 300;
                break;

            case WindowPositionSide.Top:
                return;

            default:
                throw new ArgumentOutOfRangeException("side");
            }

            _window = new DockRangeWindow(screen.WorkingArea.Top, dockwindowLeft, screen.WorkingArea.Height, dockwindowWidth);
            _window.Show();
        }
示例#2
0
        private void OpenWindow(WindowPositionSide side, WpfScreen screen)
        {
            if (side == WindowPositionSide.None || side == WindowPositionSide.Top)
            {
                return;
            }
            CloseWindow();

            double dockwindowLeft;

            switch (side)
            {
            case WindowPositionSide.Left:
                dockwindowLeft = WpfScreen.MostLeftX;
                break;

            case WindowPositionSide.Right:
                dockwindowLeft = WpfScreen.MostRightX - 300;
                break;

            case WindowPositionSide.Top:
                return;

            default:
                throw new ArgumentOutOfRangeException(nameof(side));
            }

            _placeholderWindow = new DockPlaceholderWindow(screen.WorkingArea.Top, dockwindowLeft, screen.WorkingArea.Height, 300);
            _placeholderWindow.Show();
        }
示例#3
0
 protected bool MouseIsLeftRightOrTop(int mouseX, int mouseY, out WindowPositionSide? side)
 {
     if (mouseX < WpfScreen.MostLeftX + 5)
     {
         side = WindowPositionSide.Left;
         return true;
     }
     if (mouseX >= WpfScreen.MostRightX - 5)
     {
         side = WindowPositionSide.Right;
         return true;
     }
     if (mouseY < 5)
     {
         side = WindowPositionSide.Top;
         return true;
     }
     side = WindowPositionSide.None;
     return false;
 }
示例#4
0
        private void OpenWindow(WindowPositionSide side, WpfScreen screen)
        {
            if (side == WindowPositionSide.None || side == WindowPositionSide.Top) return;
            CloseWindow();

            double dockwindowLeft;
            switch (side)
            {
                case WindowPositionSide.Left:
                    dockwindowLeft = WpfScreen.MostLeftX;
                    break;
                case WindowPositionSide.Right:
                    dockwindowLeft = WpfScreen.MostRightX - 300;
                    break;
                case WindowPositionSide.Top:
                    return;
                default:
                    throw new ArgumentOutOfRangeException(nameof(side));
            }

            _placeholderWindow = new DockPlaceholderWindow(screen.WorkingArea.Top, dockwindowLeft, screen.WorkingArea.Height, 300);
            _placeholderWindow.Show();
        }
示例#5
0
        private void OpenWindow(WindowPositionSide side, WpfScreen screen)
        {
            if (side == WindowPositionSide.None) return;
            CloseWindowIfExists();

            double dockwindowLeft, dockwindowWidth;

            switch (side)
            {
                case WindowPositionSide.Left:
                    dockwindowLeft = WpfScreen.MostLeftX;
                    dockwindowWidth = 300;
                    break;
                case WindowPositionSide.Right:
                    dockwindowLeft = WpfScreen.MostRightX - 300;
                    dockwindowWidth = 300;
                    break;
                case WindowPositionSide.Top:
                    return;
                default:
                    throw new ArgumentOutOfRangeException("side");
            }

            _window = new DockRangeWindow(screen.WorkingArea.Top, dockwindowLeft, screen.WorkingArea.Height, dockwindowWidth);
            _window.Show();
        }