Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | List of all members
CircDrawable Class Reference
Inheritance diagram for CircDrawable:
ModeDrawable SkDrawable SkFlattenable SkRefCnt SkRefCntBase

Public Member Functions

 CircDrawable (SkScalar size, SkColor c)
 
- Public Member Functions inherited from ModeDrawable
 ModeDrawable ()
 
bool hitTest (SkScalar x, SkScalar y)
 
- Public Member Functions inherited from SkDrawable
void draw (SkCanvas *, const SkMatrix *=nullptr)
 
void draw (SkCanvas *, SkScalar x, SkScalar y)
 
std::unique_ptr< GpuDrawHandlersnapGpuDrawHandler (GrBackendApi backendApi, const SkMatrix &matrix, const SkIRect &clipBounds, const SkImageInfo &bufferInfo)
 
sk_sp< SkPicturemakePictureSnapshot ()
 
uint32_t getGenerationID ()
 
SkRect getBounds ()
 
size_t approximateBytesUsed ()
 
void notifyDrawingChanged ()
 
SkFlattenable::Type getFlattenableType () const override
 
Factory getFactory () const override
 
const char * getTypeName () const override
 
- Public Member Functions inherited from SkFlattenable
 SkFlattenable ()
 
virtual void flatten (SkWriteBuffer &) const
 
sk_sp< SkDataserialize (const SkSerialProcs *=nullptr) const
 
size_t serialize (void *memory, size_t memory_size, const SkSerialProcs *=nullptr) const
 
- Public Member Functions inherited from SkRefCntBase
 SkRefCntBase ()
 
virtual ~SkRefCntBase ()
 
bool unique () const
 
void ref () const
 
void unref () const
 

Protected Member Functions

SkRect onGetBounds () override
 
void onDraw (SkCanvas *canvas) override
 
- Protected Member Functions inherited from SkDrawable
 SkDrawable ()
 
virtual size_t onApproximateBytesUsed ()
 
virtual std::unique_ptr< GpuDrawHandleronSnapGpuDrawHandler (GrBackendApi, const SkMatrix &, const SkIRect &, const SkImageInfo &)
 
virtual std::unique_ptr< GpuDrawHandleronSnapGpuDrawHandler (GrBackendApi, const SkMatrix &)
 
virtual sk_sp< SkPictureonMakePictureSnapshot ()
 

Additional Inherited Members

- Public Types inherited from SkFlattenable
enum  Type {
  kSkColorFilter_Type , kSkBlender_Type , kSkDrawable_Type , kSkDrawLooper_Type ,
  kSkImageFilter_Type , kSkMaskFilter_Type , kSkPathEffect_Type , kSkShader_Type
}
 
typedef sk_sp< SkFlattenable >(* Factory) (SkReadBuffer &)
 
- Static Public Member Functions inherited from SkDrawable
static SkFlattenable::Type GetFlattenableType ()
 
static sk_sp< SkDrawableDeserialize (const void *data, size_t size, const SkDeserialProcs *procs=nullptr)
 
- Static Public Member Functions inherited from SkFlattenable
static Factory NameToFactory (const char name[])
 
static const char * FactoryToName (Factory)
 
static void Register (const char name[], Factory)
 
static sk_sp< SkFlattenableDeserialize (Type, const void *data, size_t length, const SkDeserialProcs *procs=nullptr)
 
- Public Attributes inherited from ModeDrawable
SkBlendMode fMode
 
SkPoint fLoc
 

Detailed Description

Definition at line 82 of file XferSlide.cpp.

Constructor & Destructor Documentation

◆ CircDrawable()

CircDrawable::CircDrawable ( SkScalar  size,
SkColor  c 
)
inline

Definition at line 87 of file XferSlide.cpp.

87 {
88 const SkColor colors[] = { 0, c };
89 fPaint.setShader(SkGradientShader::MakeRadial(SkPoint::Make(size/2, size/2), size/2,
90 colors, nullptr, 2,
92 fBounds = SkRect::MakeWH(size, size);
93 }
uint32_t SkColor
Definition SkColor.h:37
static sk_sp< SkShader > MakeRadial(const SkPoint &center, SkScalar radius, const SkColor colors[], const SkScalar pos[], int count, SkTileMode mode, uint32_t flags=0, const SkMatrix *localMatrix=nullptr)
void setShader(sk_sp< SkShader > shader)
PODArray< SkColor > colors
Definition SkRecords.h:276
static constexpr SkPoint Make(float x, float y)
static constexpr SkRect MakeWH(float w, float h)
Definition SkRect.h:609

Member Function Documentation

◆ onDraw()

void CircDrawable::onDraw ( SkCanvas canvas)
inlineoverrideprotectedvirtual

Implements SkDrawable.

Definition at line 100 of file XferSlide.cpp.

100 {
101 fPaint.setBlendMode(fMode);
102 canvas->save();
103 canvas->translate(fLoc.x(), fLoc.y());
104 canvas->drawOval(fBounds, fPaint);
105 canvas->restore();
106 }
SkBlendMode fMode
Definition XferSlide.cpp:73
SkPoint fLoc
Definition XferSlide.cpp:74
void drawOval(const SkRect &oval, const SkPaint &paint)
void restore()
Definition SkCanvas.cpp:465
void translate(SkScalar dx, SkScalar dy)
int save()
Definition SkCanvas.cpp:451
void setBlendMode(SkBlendMode mode)
Definition SkPaint.cpp:151
constexpr float y() const
constexpr float x() const

◆ onGetBounds()

SkRect CircDrawable::onGetBounds ( )
inlineoverrideprotectedvirtual

Implements SkDrawable.

Definition at line 96 of file XferSlide.cpp.

96 {
97 return fBounds;
98 }

The documentation for this class was generated from the following file: