Esempio n. 1
0
        private static Brush GetArrowButtonBackBrush(States.ArrowButton stateId)
        {
            switch (stateId)
            {
            case States.ArrowButton.ABS_UPPRESSED:
            case States.ArrowButton.ABS_DOWNPRESSED:
            case States.ArrowButton.ABS_LEFTPRESSED:
            case States.ArrowButton.ABS_RIGHTPRESSED:
                return(SystemBrushes.ControlDarkDark);

            case States.ArrowButton.ABS_UPHOT:
            case States.ArrowButton.ABS_DOWNHOT:
            case States.ArrowButton.ABS_LEFTHOT:
            case States.ArrowButton.ABS_RIGHTHOT:
                return(SystemBrushes.ControlDark);

            case States.ArrowButton.ABS_UPHOVER:
            case States.ArrowButton.ABS_DOWNHOVER:
            case States.ArrowButton.ABS_LEFTHOVER:
            case States.ArrowButton.ABS_RIGHTHOVER:
                return(SystemBrushes.ControlLight);

            // case States.ArrowButton.ABS_UPDISABLED:
            // case States.ArrowButton.ABS_DOWNDISABLED:
            // case States.ArrowButton.ABS_LEFTDISABLED:
            // case States.ArrowButton.ABS_RIGHTDISABLED:
            // case States.ArrowButton.ABS_UPNORMAL:
            // case States.ArrowButton.ABS_DOWNNORMAL:
            // case States.ArrowButton.ABS_LEFTNORMAL:
            // case States.ArrowButton.ABS_RIGHTNORMAL:
            default:
                return(SystemBrushes.Control);
            }
        }
Esempio n. 2
0
        private static Point[] GetArrowPolygon(Rectangle prect, States.ArrowButton stateId)
        {
            switch (stateId)
            {
            case States.ArrowButton.ABS_UPNORMAL:
            case States.ArrowButton.ABS_UPHOT:
            case States.ArrowButton.ABS_UPPRESSED:
            case States.ArrowButton.ABS_UPDISABLED:
            case States.ArrowButton.ABS_UPHOVER:
                return(GetUpArrowPolygon(prect));

            case States.ArrowButton.ABS_DOWNNORMAL:
            case States.ArrowButton.ABS_DOWNHOT:
            case States.ArrowButton.ABS_DOWNPRESSED:
            case States.ArrowButton.ABS_DOWNDISABLED:
            case States.ArrowButton.ABS_DOWNHOVER:
                return(GetDownArrowPolygon(prect));

            case States.ArrowButton.ABS_RIGHTNORMAL:
            case States.ArrowButton.ABS_RIGHTHOT:
            case States.ArrowButton.ABS_RIGHTPRESSED:
            case States.ArrowButton.ABS_RIGHTDISABLED:
            case States.ArrowButton.ABS_RIGHTHOVER:
                return(GetRightArrowPolygon(prect));

            // case States.ArrowButton.ABS_LEFTNORMAL:
            // case States.ArrowButton.ABS_LEFTHOT:
            // case States.ArrowButton.ABS_LEFTPRESSED:
            // case States.ArrowButton.ABS_LEFTDISABLED:
            // case States.ArrowButton.ABS_LEFTHOVER:
            default:
                return(GetLeftArrowPolygon(prect));
            }
        }
Esempio n. 3
0
        private static Color GetArrowButtonForeColor(States.ArrowButton stateId)
        {
            switch (stateId)
            {
            case States.ArrowButton.ABS_UPPRESSED:
            case States.ArrowButton.ABS_DOWNPRESSED:
            case States.ArrowButton.ABS_LEFTPRESSED:
            case States.ArrowButton.ABS_RIGHTPRESSED:
                return(SystemColors.Control);

            case States.ArrowButton.ABS_UPDISABLED:
            case States.ArrowButton.ABS_DOWNDISABLED:
            case States.ArrowButton.ABS_LEFTDISABLED:
            case States.ArrowButton.ABS_RIGHTDISABLED:
                return(SystemColors.ControlDark);

            // case States.ArrowButton.ABS_UPHOT:
            // case States.ArrowButton.ABS_DOWNHOT:
            // case States.ArrowButton.ABS_LEFTHOT:
            // case States.ArrowButton.ABS_RIGHTHOT:
            // case States.ArrowButton.ABS_UPNORMAL:
            // case States.ArrowButton.ABS_DOWNNORMAL:
            // case States.ArrowButton.ABS_LEFTNORMAL:
            // case States.ArrowButton.ABS_RIGHTNORMAL:
            // case States.ArrowButton.ABS_UPHOVER:
            // case States.ArrowButton.ABS_DOWNHOVER:
            // case States.ArrowButton.ABS_LEFTHOVER:
            // case States.ArrowButton.ABS_RIGHTHOVER:
            default:
                return(SystemColors.ControlDarkDark);
            }
        }
Esempio n. 4
0
        private static void DrawArrow(Context ctx, States.ArrowButton stateId, Rectangle prect)
        {
            var foreColor = GetArrowButtonForeColor(stateId);
            var arrowPts  = GetArrowPolygon(prect, stateId);

            using (var pen = new Pen(foreColor, DpiUtil.Scale(2)))
                using (ctx.HighQuality())
                {
                    ctx.Graphics.DrawLines(pen, arrowPts);
                }
        }