blob: 5b3f6faa609a5e35fece484740931e0c99ca2cdc [file] [log] [blame]
reed@google.com4de4d602011-07-08 20:12:55 +00001#include "SampleCode.h"
2#include "SkView.h"
3#include "SkCanvas.h"
4#include "SkGradientShader.h"
5
6
7class TwoPtRadialView : public SampleView {
8public:
9 TwoPtRadialView() {}
10
11protected:
12 // overrides from SkEventSink
13 virtual bool onQuery(SkEvent* evt) {
14 if (SampleCode::TitleQ(*evt)) {
15 SampleCode::TitleR(evt, "2PtRadial");
16 return true;
17 }
18 return this->INHERITED::onQuery(evt);
19 }
20
21 virtual void onDrawContent(SkCanvas* canvas) {
22 canvas->translate(SkIntToScalar(10), SkIntToScalar(20));
23
24 SkColor colors[] = { SK_ColorRED, SK_ColorBLUE };
25 SkPoint c0 = { 0, 0 };
26 SkScalar r0 = 100;
27 SkPoint c1 = { 100, 100 };
28 SkScalar r1 = 100;
29 SkShader* s = SkGradientShader::CreateTwoPointRadial(c0, r0, c1, r1, colors,
30 NULL, 2,
31 SkShader::kClamp_TileMode);
32
33 SkPaint paint;
34 paint.setShader(s)->unref();
35 canvas->drawPaint(paint);
36 }
37
38private:
39 typedef SampleView INHERITED;
40};
41
42//////////////////////////////////////////////////////////////////////////////
43
44static SkView* MyFactory() { return new TwoPtRadialView; }
45static SkViewRegister reg(MyFactory);