1
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
9
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}
40