| // Copyright (c) 2011 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 UI_GFX_BLIT_H_ |
| #define UI_GFX_BLIT_H_ |
| |
| #include "ui/gfx/gfx_export.h" |
| #include "ui/gfx/native_widget_types.h" |
| |
| class SkCanvas; |
| |
| namespace gfx { |
| |
| class Point; |
| class Rect; |
| class Vector2d; |
| |
| // Blits a rectangle from the source context into the destination context. |
| GFX_EXPORT void BlitContextToContext(NativeDrawingContext dst_context, |
| const Rect& dst_rect, |
| NativeDrawingContext src_context, |
| const Point& src_origin); |
| |
| // Blits a rectangle from the source context into the destination canvas. |
| GFX_EXPORT void BlitContextToCanvas(SkCanvas *dst_canvas, |
| const Rect& dst_rect, |
| NativeDrawingContext src_context, |
| const Point& src_origin); |
| |
| // Blits a rectangle from the source canvas into the destination context. |
| GFX_EXPORT void BlitCanvasToContext(NativeDrawingContext dst_context, |
| const Rect& dst_rect, |
| SkCanvas *src_canvas, |
| const Point& src_origin); |
| |
| // Blits a rectangle from the source canvas into the destination canvas. |
| GFX_EXPORT void BlitCanvasToCanvas(SkCanvas *dst_canvas, |
| const Rect& dst_rect, |
| SkCanvas *src_canvas, |
| const Point& src_origin); |
| |
| // Scrolls the given subset of the given canvas by the given offset. |
| // The canvas should not have a clip or a transform applied, since platforms |
| // may implement those operations differently. |
| GFX_EXPORT void ScrollCanvas(SkCanvas* canvas, |
| const Rect& clip, |
| const Vector2d& offset); |
| |
| } // namespace gfx |
| |
| #endif // UI_GFX_BLIT_H_ |