Exemplo n.º 1
0
        private void DrawField(Graphics canvas, int en, int fn, FieldState state, FieldDrawType drawType)
        {
            var center = GetFieldCoords(en, fn);
            var rect1  = new Rectangle(
                center.X - _FieldSize / 2,
                center.Y - _FieldSize / 2,
                _FieldSize,
                _FieldSize);

            canvas.FillEllipse(new SolidBrush(GetFieldBorderColor(drawType)), rect1);

            var color = GetFieldFillColor(state, drawType);

            var rect2 = new Rectangle(
                center.X - _FieldSize / 2 + 4,
                center.Y - _FieldSize / 2 + 4,
                _FieldSize - 8,
                _FieldSize - 8);

            canvas.FillEllipse(new SolidBrush(color), rect2);
        }
Exemplo n.º 2
0
 private Color GetFieldFillColor(FieldState state, FieldDrawType drawType)
 {
     if (state.IsEmpty)
     {
         return(drawType.HasFlag(FieldDrawType.Highlighted)
             ? Color.Gold
             : Color.White);
     }
     if (((FieldState.Color)state).Item.IsBlack)
     {
         return(drawType.HasFlag(FieldDrawType.Highlighted)
             ? Color.LightSlateGray
             : Color.FromArgb(63, 63, 63));
     }
     if (((FieldState.Color)state).Item.IsRed)
     {
         return(drawType.HasFlag(FieldDrawType.Highlighted)
             ? Color.FromArgb(255, 63, 63)
             : Color.FromArgb(192, 0, 0));
     }
     throw new Exception("Something went wrong");
 }
Exemplo n.º 3
0
 private Color GetFieldBorderColor(FieldDrawType drawType)
 {
     return(drawType.HasFlag(FieldDrawType.Selected)
         ? Color.Magenta
         : Color.Black);
 }
Exemplo n.º 4
0
        private void DrawField(Graphics canvas, FieldCoords coords, FieldState state, FieldDrawType drawType)
        {
            int en = coords.IsCenter ? -1 : ((FieldCoords.Edge)coords).Item1;
            int fn = coords.IsCenter ? -1 : ((FieldCoords.Edge)coords).Item2;

            DrawField(canvas, en, fn, state, drawType);
        }
Exemplo n.º 5
0
 private Color GetFieldBorderColor(FieldDrawType drawType)
 {
     return drawType.HasFlag(FieldDrawType.Selected)
         ? Color.Magenta
         : Color.Black;
 }
Exemplo n.º 6
0
 private Color GetFieldFillColor(FieldState state, FieldDrawType drawType)
 {
     if (state.IsEmpty)
     {
         return drawType.HasFlag(FieldDrawType.Highlighted)
             ? Color.Gold
             : Color.White;
     }
     if (((FieldState.Color)state).Item.IsBlack)
     {
         return drawType.HasFlag(FieldDrawType.Highlighted)
             ? Color.LightSlateGray
             : Color.FromArgb(63, 63, 63);
     }
     if (((FieldState.Color)state).Item.IsRed)
     {
         return drawType.HasFlag(FieldDrawType.Highlighted)
             ? Color.FromArgb(255, 63, 63)
             : Color.FromArgb(192, 0, 0);
     }
     throw new Exception("Something went wrong");
 }
Exemplo n.º 7
0
 private void DrawField(Graphics canvas, FieldCoords coords, FieldState state, FieldDrawType drawType)
 {
     int en = coords.IsCenter ? -1 : ((FieldCoords.Edge)coords).Item1;
     int fn = coords.IsCenter ? -1 : ((FieldCoords.Edge)coords).Item2;
     DrawField(canvas, en, fn, state, drawType);
 }
Exemplo n.º 8
0
        private void DrawField(Graphics canvas, int en, int fn, FieldState state, FieldDrawType drawType)
        {
            var center = GetFieldCoords(en, fn);
            var rect1 = new Rectangle(
                center.X - _FieldSize / 2,
                center.Y - _FieldSize / 2,
                _FieldSize,
                _FieldSize);
            canvas.FillEllipse(new SolidBrush(GetFieldBorderColor(drawType)), rect1);

            var color = GetFieldFillColor(state, drawType);

            var rect2 = new Rectangle(
                center.X - _FieldSize / 2 + 4,
                center.Y - _FieldSize / 2 + 4,
                _FieldSize - 8,
                _FieldSize - 8);
            canvas.FillEllipse(new SolidBrush(color), rect2);
        }