diff options
author | Herb Derby <herb@google.com> | 2018-05-22 12:01:50 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-05-22 17:50:35 +0000 |
commit | 1724db1658c48c20c75bc39497d70cb1e227fbdb (patch) | |
tree | d395cca0f161d6d0d400920203d916d5d3034acb /include/utils | |
parent | d90cd3b2796b693b2d6af6fe13a8ca6c4795d80e (diff) |
Remove SkTextBox
Change-Id: I697135475fa9c1b7e803500b743f10c3877c1e10
Reviewed-on: https://skia-review.googlesource.com/129560
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Herb Derby <herb@google.com>
Diffstat (limited to 'include/utils')
-rw-r--r-- | include/utils/SkTextBox.h | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/include/utils/SkTextBox.h b/include/utils/SkTextBox.h deleted file mode 100644 index 885800ce6a..0000000000 --- a/include/utils/SkTextBox.h +++ /dev/null @@ -1,87 +0,0 @@ - -/* - * Copyright 2006 The Android Open Source Project - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - - -#ifndef SkTextBox_DEFINED -#define SkTextBox_DEFINED - -#include "SkCanvas.h" - -/** \class SkTextBox - - SkTextBox is a helper class for drawing 1 or more lines of text - within a rectangle. The textbox is positioned and clipped by its Frame. - The Margin rectangle controls where the text is drawn relative to - the Frame. Line-breaks occur inside the Margin rectangle. - - Spacing is a linear equation used to compute the distance between lines - of text. Spacing consists of two scalars: mul and add, and the spacing - between lines is computed as: spacing = paint.getTextSize() * mul + add -*/ -class SkTextBox { -public: - SkTextBox(); - - enum Mode { - kOneLine_Mode, - kLineBreak_Mode, - - kModeCount - }; - Mode getMode() const { return (Mode)fMode; } - void setMode(Mode); - - enum SpacingAlign { - kStart_SpacingAlign, - kCenter_SpacingAlign, - kEnd_SpacingAlign, - - kSpacingAlignCount - }; - SpacingAlign getSpacingAlign() const { return (SpacingAlign)fSpacingAlign; } - void setSpacingAlign(SpacingAlign); - - void getBox(SkRect*) const; - void setBox(const SkRect&); - void setBox(SkScalar left, SkScalar top, SkScalar right, SkScalar bottom); - - void getSpacing(SkScalar* mul, SkScalar* add) const; - void setSpacing(SkScalar mul, SkScalar add); - - void draw(SkCanvas*, const char text[], size_t len, const SkPaint&); - - void setText(const char text[], size_t len, const SkPaint&); - void draw(SkCanvas*); - int countLines() const; - SkScalar getTextHeight() const; - - sk_sp<SkTextBlob> snapshotTextBlob(SkScalar* computedBottom) const; - - class Visitor { - public: - virtual ~Visitor() {} - virtual void operator()(const char*, size_t, SkScalar x, SkScalar y, const SkPaint&) = 0; - }; - -private: - SkRect fBox; - SkScalar fSpacingMul, fSpacingAdd; - uint8_t fMode, fSpacingAlign; - const char* fText; - size_t fLen; - const SkPaint* fPaint; - - SkScalar visit(Visitor&, const char text[], size_t len, const SkPaint&) const; -}; - -class SkTextLineBreaker { -public: - static int CountLines(const char text[], size_t len, const SkPaint&, SkScalar width); -}; - -#endif |