Пример #1
0
        protected override void onDraw(Context gr)
        {
            base.onDraw(gr);

            Rectangle r = ClientRectangle;

            if (Foreground != null)              //TODO:test if null should be removed
            {
                Foreground.SetAsSource(gr, r);
                CairoHelpers.CairoRectangle(gr, r, CornerRadius);
                gr.Fill();
            }

            Crow.Gradient grad = new Gradient(Gradient.Type.Horizontal);
            grad.Stops.Add(new Gradient.ColorStop(0, new Color(1, 1, 1, 1)));
            grad.Stops.Add(new Gradient.ColorStop(1, new Color(1, 1, 1, 0)));
            grad.SetAsSource(gr, r);
            CairoHelpers.CairoRectangle(gr, r, CornerRadius);
            gr.Fill();
            grad = new Gradient(Gradient.Type.Vertical);
            grad.Stops.Add(new Gradient.ColorStop(0, new Color(0, 0, 0, 0)));
            grad.Stops.Add(new Gradient.ColorStop(1, new Color(0, 0, 0, 1)));
            grad.SetAsSource(gr, r);
            CairoHelpers.CairoRectangle(gr, r, CornerRadius);
            gr.Fill();
        }
Пример #2
0
        protected override void onDraw(Cairo.Context gr)
        {
            base.onDraw(gr);

            Rectangle r = ClientRectangle;

            Gradient.Type gt = Gradient.Type.Horizontal;
            if (Orientation == Orientation.Vertical)
            {
                gt = Gradient.Type.Vertical;
            }

            Crow.Gradient grad = new Gradient(gt);

            grad.Stops.Add(new Gradient.ColorStop(0, new Color(1, 0, 0, 1)));
            grad.Stops.Add(new Gradient.ColorStop(0.167, new Color(1, 1, 0, 1)));
            grad.Stops.Add(new Gradient.ColorStop(0.333, new Color(0, 1, 0, 1)));
            grad.Stops.Add(new Gradient.ColorStop(0.5, new Color(0, 1, 1, 1)));
            grad.Stops.Add(new Gradient.ColorStop(0.667, new Color(0, 0, 1, 1)));
            grad.Stops.Add(new Gradient.ColorStop(0.833, new Color(1, 0, 1, 1)));
            grad.Stops.Add(new Gradient.ColorStop(1, new Color(1, 0, 0, 1)));

            grad.SetAsSource(gr, r);
            CairoHelpers.CairoRectangle(gr, r, CornerRadius);
            gr.Fill();
        }
Пример #3
0
        protected override void onDraw(Cairo.Context gr)
        {
            base.onDraw (gr);

            Rectangle r = ClientRectangle;
            Rectangle rGrad = r;
            rGrad.Inflate (-1);

            if (Foreground != null) {//TODO:test if null should be removed
                Foreground.SetAsSource (gr, r);
                CairoHelpers.CairoRectangle (gr, r, CornerRadius);
                gr.Fill ();
            }

            Crow.Gradient grad = new Gradient (Gradient.Type.Horizontal);
            grad.Stops.Add (new Gradient.ColorStop (0, new Color (1, 1, 1, 1)));
            grad.Stops.Add (new Gradient.ColorStop (1, new Color (1, 1, 1, 0)));
            grad.SetAsSource (gr, rGrad);
            CairoHelpers.CairoRectangle (gr, r, CornerRadius);
            gr.Fill();
            grad = new Gradient (Gradient.Type.Vertical);
            grad.Stops.Add (new Gradient.ColorStop (0, new Color (0, 0, 0, 0)));
            grad.Stops.Add (new Gradient.ColorStop (1, new Color (0, 0, 0, 1)));
            grad.SetAsSource (gr, rGrad);
            CairoHelpers.CairoRectangle (gr, r, CornerRadius);
            gr.Fill();
        }
Пример #4
0
        protected override void onDraw(Cairo.Context gr)
        {
            base.onDraw (gr);

            Rectangle r = ClientRectangle;

            Gradient.Type gt = Gradient.Type.Horizontal;
            if (Orientation == Orientation.Vertical)
                gt = Gradient.Type.Vertical;

            Crow.Gradient grad = new Gradient (gt);

            grad.Stops.Add (new Gradient.ColorStop (0,     new Color (1, 0, 0, 1)));
            grad.Stops.Add (new Gradient.ColorStop (0.167, new Color (1, 1, 0, 1)));
            grad.Stops.Add (new Gradient.ColorStop (0.333, new Color (0, 1, 0, 1)));
            grad.Stops.Add (new Gradient.ColorStop (0.5,   new Color (0, 1, 1, 1)));
            grad.Stops.Add (new Gradient.ColorStop (0.667, new Color (0, 0, 1, 1)));
            grad.Stops.Add (new Gradient.ColorStop (0.833, new Color (1, 0, 1, 1)));
            grad.Stops.Add (new Gradient.ColorStop (1,     new Color (1, 0, 0, 1)));

            grad.SetAsSource (gr, r);
            CairoHelpers.CairoRectangle (gr, r, CornerRadius);
            gr.Fill();
        }