blob: e7f7651fad58bdd2f77acd0898632defe85eaf4f [file] [log] [blame]
epoger@google.comec3ed6a2011-07-28 14:26:00 +00001
2/*
3 * Copyright 2006 The Android Open Source Project
4 *
5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
7 */
8
reed@android.com8a1c16f2008-12-17 15:59:43 +00009
10#include "SkTextOnPath.h"
11#include "SkAnimateMaker.h"
12#include "SkCanvas.h"
13#include "SkDrawPath.h"
14#include "SkDrawText.h"
15#include "SkPaint.h"
16
17#if SK_USE_CONDENSED_INFO == 0
18
19const SkMemberInfo SkTextOnPath::fInfo[] = {
20 SK_MEMBER(offset, Float),
21 SK_MEMBER(path, Path),
22 SK_MEMBER(text, Text)
23};
24
25#endif
26
27DEFINE_GET_MEMBER(SkTextOnPath);
28
29SkTextOnPath::SkTextOnPath() : offset(0), path(NULL), text(NULL) {
30}
31
32bool SkTextOnPath::draw(SkAnimateMaker& maker) {
33 SkASSERT(text);
34 SkASSERT(path);
35 SkBoundableAuto boundable(this, maker);
36 maker.fCanvas->drawTextOnPathHV(text->getText(), text->getSize(),
37 path->getPath(), offset, 0, *maker.fPaint);
38 return false;
39}