示例#1
0
        private static void SetScreenMarginValue(
            ScreenPosition screenPosition,
            ScreenMarginSide marginSide,
            int newMarginValue)
        {
            switch (marginSide)
            {
            case ScreenMarginSide.Left:
                screenPosition.LeftMarginPercentage = newMarginValue;
                break;

            case ScreenMarginSide.Right:
                screenPosition.RightMarginPercentage = newMarginValue;
                break;

            case ScreenMarginSide.Top:
                screenPosition.TopMarginPercentage = newMarginValue;
                break;

            case ScreenMarginSide.Bottom:
                screenPosition.BottomMarginPercentage = newMarginValue;
                break;

            default:
                throw new ArgumentException();
            }
        }
示例#2
0
        public static void ModifyScreenPosition(
            ScreenPosition screenPosition,
            ScreenMarginSide marginSide,
            int newMarginValue,
            out bool opposingMarginChanged)
        {
            var opposingMarginSide  = GetOpposingMarginSide(marginSide);
            var opposingMarginValue = GetScreenMarginValue(screenPosition, opposingMarginSide);

            opposingMarginChanged = newMarginValue + opposingMarginValue > 90;
            if (opposingMarginChanged)
            {
                SetScreenMarginValue(screenPosition, opposingMarginSide, 90 - newMarginValue);
            }

            SetScreenMarginValue(screenPosition, marginSide, newMarginValue);
        }
示例#3
0
        private static ScreenMarginSide GetOpposingMarginSide(ScreenMarginSide marginSide)
        {
            switch (marginSide)
            {
            case ScreenMarginSide.Left:
                return(ScreenMarginSide.Right);

            case ScreenMarginSide.Right:
                return(ScreenMarginSide.Left);

            case ScreenMarginSide.Top:
                return(ScreenMarginSide.Bottom);

            case ScreenMarginSide.Bottom:
                return(ScreenMarginSide.Top);
            }

            throw new ArgumentException();
        }
示例#4
0
        private static int GetScreenMarginValue(ScreenPosition screenPosition, ScreenMarginSide marginSide)
        {
            switch (marginSide)
            {
            case ScreenMarginSide.Left:
                return(screenPosition.LeftMarginPercentage);

            case ScreenMarginSide.Right:
                return(screenPosition.RightMarginPercentage);

            case ScreenMarginSide.Top:
                return(screenPosition.TopMarginPercentage);

            case ScreenMarginSide.Bottom:
                return(screenPosition.BottomMarginPercentage);
            }

            throw new ArgumentException();
        }