aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkPaint.cpp
diff options
context:
space:
mode:
authorGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-07-18 13:47:01 +0000
committerGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-07-18 13:47:01 +0000
commitc9683151367b2033a26b1e2ebe6b3902d2064bdb (patch)
tree2a59fa0e1cc8f1980ed60f39ba9c0d9ab6bd4633 /src/core/SkPaint.cpp
parent620edc503938e3bfb7621923c2f50e77451fecae (diff)
add FilterLevel API to SkPaint, replacing various Flag bits
BUG= R=bsalomon@google.com Review URL: https://codereview.chromium.org/19769005 git-svn-id: http://skia.googlecode.com/svn/trunk@10138 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/core/SkPaint.cpp')
-rw-r--r--src/core/SkPaint.cpp27
1 files changed, 23 insertions, 4 deletions
diff --git a/src/core/SkPaint.cpp b/src/core/SkPaint.cpp
index 886794c479..372e68051e 100644
--- a/src/core/SkPaint.cpp
+++ b/src/core/SkPaint.cpp
@@ -205,6 +205,29 @@ void SkPaint::setPaintOptionsAndroid(const SkPaintOptionsAndroid& options) {
}
#endif
+SkPaint::FilterLevel SkPaint::getFilterLevel() const {
+ int level = 0;
+ if (fFlags & kFilterBitmap_Flag) {
+ level |= 1;
+ }
+ if (fFlags & kHighQualityFilterBitmap_Flag) {
+ level |= 2;
+ }
+ return (FilterLevel)level;
+}
+
+void SkPaint::setFilterLevel(FilterLevel level) {
+ unsigned mask = kFilterBitmap_Flag | kHighQualityFilterBitmap_Flag;
+ unsigned flags = 0;
+ if (level & 1) {
+ flags |= kFilterBitmap_Flag;
+ }
+ if (level & 2) {
+ flags |= kHighQualityFilterBitmap_Flag;
+ }
+ this->setFlags((fFlags & ~mask) | flags);
+}
+
void SkPaint::setHinting(Hinting hintingLevel) {
GEN_ID_INC_EVAL((unsigned) hintingLevel != fHinting);
fHinting = hintingLevel;
@@ -263,10 +286,6 @@ void SkPaint::setDevKernText(bool doDevKern) {
this->setFlags(SkSetClearMask(fFlags, doDevKern, kDevKernText_Flag));
}
-void SkPaint::setFilterBitmap(bool doFilter) {
- this->setFlags(SkSetClearMask(fFlags, doFilter, kFilterBitmap_Flag));
-}
-
void SkPaint::setStyle(Style style) {
if ((unsigned)style < kStyleCount) {
GEN_ID_INC_EVAL((unsigned)style != fStyle);