224c700a1f
Also check in work in progress for blend modes, round rects, and a placeholder for pictures. One minor include change to add a parameter name for SkBlendMode function. TBR=reed@google.com R=caryclark@google.com Docs-Preview: https://skia.org/?cl=134200 Bug: skia:6898 Change-Id: I5d2a9221d61edb32d9c7edbb3193401605b2b513 Reviewed-on: https://skia-review.googlesource.com/134200 Reviewed-by: Cary Clark <caryclark@google.com> Reviewed-by: Cary Clark <caryclark@skia.org> Commit-Queue: Cary Clark <caryclark@skia.org> Auto-Submit: Cary Clark <caryclark@skia.org>
313 lines
6.2 KiB
Plaintext
313 lines
6.2 KiB
Plaintext
#Topic Picture
|
|
#Alias Pictures ##
|
|
#Alias Picture_Reference ##
|
|
|
|
#Class SkPicture
|
|
|
|
An SkPicture records drawing commands made to a canvas to be played back at a later time.
|
|
This base class handles serialization and a few other miscellany.
|
|
|
|
#Subtopic Overview
|
|
#Populate
|
|
##
|
|
|
|
#Subtopic Class
|
|
#Populate
|
|
##
|
|
|
|
#Subtopic Member_Function
|
|
#Populate
|
|
##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Class AbortCallback
|
|
#Line # incomplete ##
|
|
|
|
#Code
|
|
#ToDo fill this in manually ##
|
|
##
|
|
|
|
Subclasses of this can be passed to playback(). During the playback
|
|
of the picture, this callback will periodically be invoked. If its
|
|
abort() returns true, then picture playback will be interrupted.
|
|
The resulting drawing is undefined, as there is no guarantee how often the
|
|
callback will be invoked. If the abort happens inside some level of nested
|
|
calls to save(), restore will automatically be called to return the state
|
|
to the same level it was before the playback call was made.
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method AbortCallback()
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method virtual ~AbortCallback()
|
|
#In Constructor
|
|
#Line # incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method virtual bool abort() = 0
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
#Class AbortCallback ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method static sk_sp<SkPicture> MakeFromStream(SkStream* stream,
|
|
const SkDeserialProcs* procs = nullptr)
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
Recreate a picture that was serialized into a stream or data.
|
|
|
|
#Param stream incomplete ##
|
|
#Param procs incomplete ##
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method static sk_sp<SkPicture> MakeFromData(const SkData* data,
|
|
const SkDeserialProcs* procs = nullptr)
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
#Param data incomplete ##
|
|
#Param procs incomplete ##
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method static sk_sp<SkPicture> MakeFromData(const void* data, size_t size,
|
|
const SkDeserialProcs* procs = nullptr)
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
#Param data incomplete ##
|
|
#Param size incomplete ##
|
|
#Param procs incomplete ##
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method virtual void playback(SkCanvas* canvas, AbortCallback* callback = nullptr) const = 0
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
Replays the drawing commands on the specified canvas. Note that
|
|
this has the effect of unfurling this picture into the destination
|
|
canvas. Using the SkCanvas::drawPicture entry point gives the destination
|
|
canvas the option of just taking a ref.
|
|
|
|
#Param canvas the canvas receiving the drawing commands.
|
|
##
|
|
#Param callback a callback that allows interruption of playback
|
|
##
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method virtual SkRect cullRect() const = 0
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
Return a cull rect for this picture.
|
|
Ops recorded into this picture that attempt to draw outside the cull might not be drawn.
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method uint32_t uniqueID() const
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
Returns a non-zero value unique among all pictures.
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method sk_sp<SkData> serialize(const SkSerialProcs* procs = nullptr) const
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
#Param procs incomplete ##
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method void serialize(SkWStream* stream, const SkSerialProcs* procs = nullptr) const
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
#Param stream incomplete ##
|
|
#Param procs incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method static sk_sp<SkPicture> MakePlaceholder(SkRect cull)
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
Return a placeholder SkPicture.
|
|
This placeholder does not draw anything itself. It has a distinct uniqueID()
|
|
(just like all Pictures) and will always be visible to SkSerialProcs.
|
|
|
|
#Param cull the placeholder's dimensions
|
|
##
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method virtual int approximateOpCount() const = 0
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
Return the approximate number of operations in this picture. This
|
|
number may be greater or less than the number of SkCanvas calls
|
|
recorded: some calls may be recorded as more than one operation, or some
|
|
calls may be optimized away.
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
# ------------------------------------------------------------------------------
|
|
|
|
#Method virtual size_t approximateBytesUsed() const = 0
|
|
#In incomplete
|
|
#Line # incomplete ##
|
|
|
|
Returns the approximate byte size of this picture, not including large ref'd objects.
|
|
|
|
#Return incomplete ##
|
|
|
|
#Example
|
|
// incomplete
|
|
##
|
|
|
|
#SeeAlso incomplete
|
|
|
|
#Method ##
|
|
|
|
#Class SkPicture ##
|
|
|
|
#Topic Picture ##
|