mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
Also changes the framework dart code to use the refactored APIs and fixes the various examples and tests. R=abarth@chromium.org, ianh@chromium.org Review URL: https://codereview.chromium.org/1190123003.
46 lines
1.2 KiB
C++
46 lines
1.2 KiB
C++
// Copyright 2015 The Chromium Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
#ifndef SKY_ENGINE_CORE_PAINTING_PICTURERECORDER_H_
|
|
#define SKY_ENGINE_CORE_PAINTING_PICTURERECORDER_H_
|
|
|
|
#include "sky/engine/tonic/dart_wrappable.h"
|
|
#include "sky/engine/wtf/PassRefPtr.h"
|
|
#include "sky/engine/wtf/RefCounted.h"
|
|
#include "third_party/skia/include/core/SkPictureRecorder.h"
|
|
|
|
namespace blink {
|
|
|
|
class Picture;
|
|
class Canvas;
|
|
|
|
class PictureRecorder : public RefCounted<PictureRecorder>,
|
|
public DartWrappable {
|
|
DEFINE_WRAPPERTYPEINFO();
|
|
public:
|
|
static PassRefPtr<PictureRecorder> create()
|
|
{
|
|
return adoptRef(new PictureRecorder());
|
|
}
|
|
|
|
~PictureRecorder();
|
|
|
|
// PassRefPtr<Canvas> beginRecording(double width, double height);
|
|
SkCanvas* beginRecording(double width, double height);
|
|
PassRefPtr<Picture> endRecording();
|
|
bool isRecording();
|
|
|
|
void set_canvas(PassRefPtr<Canvas> canvas);
|
|
|
|
private:
|
|
PictureRecorder();
|
|
|
|
OwnPtr<SkPictureRecorder> m_pictureRecorder;
|
|
RefPtr<Canvas> m_canvas;
|
|
};
|
|
|
|
} // namespace blink
|
|
|
|
#endif // SKY_ENGINE_CORE_PAINTING_PICTURERECORDER_H_
|