Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Side by Side Diff: include/core/SkCanvas.h

Issue 1230823007: Revert of guard to remove DrawBitmapRectFlags (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « gyp/skia_for_android_framework_defines.gypi ('k') | samplecode/SampleApp.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2006 The Android Open Source Project 2 * Copyright 2006 The Android Open Source Project
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #ifndef SkCanvas_DEFINED 8 #ifndef SkCanvas_DEFINED
9 #define SkCanvas_DEFINED 9 #define SkCanvas_DEFINED
10 10
(...skipping 17 matching lines...) Expand all
28 class SkMetaData; 28 class SkMetaData;
29 class SkPicture; 29 class SkPicture;
30 class SkRRect; 30 class SkRRect;
31 struct SkRSXform; 31 struct SkRSXform;
32 class SkSurface; 32 class SkSurface;
33 class SkSurface_Base; 33 class SkSurface_Base;
34 class SkTextBlob; 34 class SkTextBlob;
35 class GrContext; 35 class GrContext;
36 class GrRenderTarget; 36 class GrRenderTarget;
37 37
38 //#define SK_SUPPORT_LEGACY_DRAWBITMAPRECTFLAGS_TYPE 38 //#define SK_SUPPORT_LEGACY_ONDRAWIMAGERECT
39 39
40 class SkCanvasState; 40 class SkCanvasState;
41 41
42 #ifdef SK_SUPPORT_LEGACY_ONDRAWIMAGERECT 42 #ifdef SK_SUPPORT_LEGACY_ONDRAWIMAGERECT
43 #define SK_VIRTUAL_CONSTRAINT_TYPE SkCanvas::DrawBitmapRectFlags 43 #define SK_VIRTUAL_CONSTRAINT_TYPE SkCanvas::DrawBitmapRectFlags
44 #define SRC_RECT_CONSTRAINT_PARAM(param) 44 #define SRC_RECT_CONSTRAINT_PARAM(param)
45 #define SRC_RECT_CONSTRAINT_ARG(arg) 45 #define SRC_RECT_CONSTRAINT_ARG(arg)
46 #define SRC_RECT_CONSTRAINT_LOCAL_DEFAULT(var) SkCanvas::SrcRectConstraint var = SkCanvas::kStrict_SrcRectConstraint; 46 #define SRC_RECT_CONSTRAINT_LOCAL_DEFAULT(var) SkCanvas::SrcRectConstraint var = SkCanvas::kStrict_SrcRectConstraint;
47 #else 47 #else
48 #define SK_VIRTUAL_CONSTRAINT_TYPE SkCanvas::SrcRectConstraint 48 #define SK_VIRTUAL_CONSTRAINT_TYPE SkCanvas::SrcRectConstraint
(...skipping 778 matching lines...) Expand 10 before | Expand all | Expand 10 after
827 * and drawn. 827 * and drawn.
828 * 828 *
829 * @param image The image to be drawn 829 * @param image The image to be drawn
830 * @param src Optional: specify the subset of the image to be drawn 830 * @param src Optional: specify the subset of the image to be drawn
831 * @param dst The destination rectangle where the scaled/translated 831 * @param dst The destination rectangle where the scaled/translated
832 * image will be drawn 832 * image will be drawn
833 * @param paint The paint used to draw the image, or NULL 833 * @param paint The paint used to draw the image, or NULL
834 * @param constraint Control the tradeoff between speed and exactness w.r.t . the src-rect. 834 * @param constraint Control the tradeoff between speed and exactness w.r.t . the src-rect.
835 */ 835 */
836 void drawImageRect(const SkImage* image, const SkRect* src, const SkRect& ds t, 836 void drawImageRect(const SkImage* image, const SkRect* src, const SkRect& ds t,
837 const SkPaint* paint, SrcRectConstraint = kStrict_SrcRect Constraint); 837 const SkPaint* paint, SrcRectConstraint);
838 838
839 void drawImageRect(const SkImage* image, const SkRect* src, const SkRect& ds t) { 839 void drawImageRect(const SkImage* image, const SkRect* src, const SkRect& ds t,
840 this->drawImageRect(image, src, dst, NULL, kStrict_SrcRectConstraint); 840 const SkPaint* paint = NULL) {
841 this->drawImageRect(image, src, dst, paint, kStrict_SrcRectConstraint);
841 } 842 }
842 843
843 void drawImageRect(const SkImage* image, const SkRect& dst, const SkPaint* p aint = NULL) { 844 void drawImageRect(const SkImage* image, const SkRect& dst, const SkPaint* p aint = NULL) {
844 // With no src-rect, the constraint value is ignored, so we just use the default. 845 // With no src-rect, the constraint value is ignored, so we just use the default.
845 this->drawImageRect(image, NULL, dst, paint, kStrict_SrcRectConstraint); 846 this->drawImageRect(image, NULL, dst, paint, kStrict_SrcRectConstraint);
846 } 847 }
847 848
848 void drawImageRect(const SkImage* image, const SkIRect& isrc, const SkRect& dst,
849 const SkPaint* paint, SrcRectConstraint = kStrict_SrcRect Constraint);
850
851 /** 849 /**
852 * Draw the image stretched differentially to fit into dst. 850 * Draw the image stretched differentially to fit into dst.
853 * center is a rect within the image, and logically divides the image 851 * center is a rect within the image, and logically divides the image
854 * into 9 sections (3x3). For example, if the middle pixel of a [5x5] 852 * into 9 sections (3x3). For example, if the middle pixel of a [5x5]
855 * image is the "center", then the center-rect should be [2, 2, 3, 3]. 853 * image is the "center", then the center-rect should be [2, 2, 3, 3].
856 * 854 *
857 * If the dst is >= the image size, then... 855 * If the dst is >= the image size, then...
858 * - The 4 corners are not stretched at all. 856 * - The 4 corners are not stretched at all.
859 * - The sides are stretched in only one axis. 857 * - The sides are stretched in only one axis.
860 * - The center is stretched in both axes. 858 * - The center is stretched in both axes.
(...skipping 27 matching lines...) Expand all
888 * dst rect. If the src rect is non-null, only that subset of the bitmap is transformed 886 * dst rect. If the src rect is non-null, only that subset of the bitmap is transformed
889 * and drawn. 887 * and drawn.
890 * 888 *
891 * @param bitmap The bitmap to be drawn 889 * @param bitmap The bitmap to be drawn
892 * @param src Optional: specify the subset of the bitmap to be drawn 890 * @param src Optional: specify the subset of the bitmap to be drawn
893 * @param dst The destination rectangle where the scaled/translated 891 * @param dst The destination rectangle where the scaled/translated
894 * bitmap will be drawn 892 * bitmap will be drawn
895 * @param paint The paint used to draw the bitmap, or NULL 893 * @param paint The paint used to draw the bitmap, or NULL
896 * @param constraint Control the tradeoff between speed and exactness w.r.t . the src-rect. 894 * @param constraint Control the tradeoff between speed and exactness w.r.t . the src-rect.
897 */ 895 */
898 #ifdef SK_SUPPORT_LEGACY_DRAWBITMAPRECTFLAGS_TYPE
899 void drawBitmapRect(const SkBitmap& bitmap, const SkRect* src, const SkRect& dst, 896 void drawBitmapRect(const SkBitmap& bitmap, const SkRect* src, const SkRect& dst,
900 const SkPaint* paint, SrcRectConstraint); 897 const SkPaint* paint, SrcRectConstraint);
901 #else
902 void drawBitmapRect(const SkBitmap& bitmap, const SkRect* src, const SkRect& dst,
903 const SkPaint* paint, SrcRectConstraint = kStrict_SrcRec tConstraint);
904 #endif
905 898
906 void drawBitmapRect(const SkBitmap& bitmap, const SkRect& dst, const SkPaint * paint = NULL) { 899 void drawBitmapRect(const SkBitmap& bitmap, const SkRect& dst, const SkPaint * paint = NULL) {
907 this->drawBitmapRect(bitmap, NULL, dst, paint, kStrict_SrcRectConstraint ); 900 this->drawBitmapRect(bitmap, NULL, dst, paint, kStrict_SrcRectConstraint );
908 } 901 }
909 902
910 void drawBitmapRect(const SkBitmap& bitmap, const SkIRect& isrc, const SkRec t& dst,
911 const SkPaint* paint, SrcRectConstraint = kStrict_SrcRec tConstraint);
912
913 #ifdef SK_SUPPORT_LEGACY_DRAWBITMAPRECTFLAGS_TYPE
914 // IMPORTANT that thse be value-equal with SrcRectConstraint (during transit ion period) 903 // IMPORTANT that thse be value-equal with SrcRectConstraint (during transit ion period)
915 enum DrawBitmapRectFlags { 904 enum DrawBitmapRectFlags {
916 kNone_DrawBitmapRectFlag = 0x0, 905 kNone_DrawBitmapRectFlag = 0x0,
917 /** 906 /**
918 * When filtering is enabled, allow the color samples outside of 907 * When filtering is enabled, allow the color samples outside of
919 * the src rect (but still in the src bitmap) to bleed into the 908 * the src rect (but still in the src bitmap) to bleed into the
920 * drawn portion 909 * drawn portion
921 */ 910 */
922 kBleed_DrawBitmapRectFlag = 0x1, 911 kBleed_DrawBitmapRectFlag = 0x1,
923 }; 912 };
(...skipping 14 matching lines...) Expand all
938 const SkRect& dst, const SkPaint* paint = NULL, 927 const SkRect& dst, const SkPaint* paint = NULL,
939 DrawBitmapRectFlags flags = kNone_DrawBitmapRectFlag) { 928 DrawBitmapRectFlags flags = kNone_DrawBitmapRectFlag) {
940 SkRect realSrcStorage; 929 SkRect realSrcStorage;
941 SkRect* realSrcPtr = NULL; 930 SkRect* realSrcPtr = NULL;
942 if (isrc) { 931 if (isrc) {
943 realSrcStorage.set(*isrc); 932 realSrcStorage.set(*isrc);
944 realSrcPtr = &realSrcStorage; 933 realSrcPtr = &realSrcStorage;
945 } 934 }
946 this->drawBitmapRectToRect(bitmap, realSrcPtr, dst, paint, flags); 935 this->drawBitmapRectToRect(bitmap, realSrcPtr, dst, paint, flags);
947 } 936 }
948 #endif
949 937
950 /** 938 /**
951 * Draw the bitmap stretched differentially to fit into dst. 939 * Draw the bitmap stretched differentially to fit into dst.
952 * center is a rect within the bitmap, and logically divides the bitmap 940 * center is a rect within the bitmap, and logically divides the bitmap
953 * into 9 sections (3x3). For example, if the middle pixel of a [5x5] 941 * into 9 sections (3x3). For example, if the middle pixel of a [5x5]
954 * bitmap is the "center", then the center-rect should be [2, 2, 3, 3]. 942 * bitmap is the "center", then the center-rect should be [2, 2, 3, 3].
955 * 943 *
956 * If the dst is >= the bitmap size, then... 944 * If the dst is >= the bitmap size, then...
957 * - The 4 corners are not stretched at all. 945 * - The 4 corners are not stretched at all.
958 * - The sides are stretched in only one axis. 946 * - The sides are stretched in only one axis.
(...skipping 638 matching lines...) Expand 10 before | Expand all | Expand 10 after
1597 1585
1598 class SkCanvasClipVisitor { 1586 class SkCanvasClipVisitor {
1599 public: 1587 public:
1600 virtual ~SkCanvasClipVisitor(); 1588 virtual ~SkCanvasClipVisitor();
1601 virtual void clipRect(const SkRect&, SkRegion::Op, bool antialias) = 0; 1589 virtual void clipRect(const SkRect&, SkRegion::Op, bool antialias) = 0;
1602 virtual void clipRRect(const SkRRect&, SkRegion::Op, bool antialias) = 0; 1590 virtual void clipRRect(const SkRRect&, SkRegion::Op, bool antialias) = 0;
1603 virtual void clipPath(const SkPath&, SkRegion::Op, bool antialias) = 0; 1591 virtual void clipPath(const SkPath&, SkRegion::Op, bool antialias) = 0;
1604 }; 1592 };
1605 1593
1606 #endif 1594 #endif
OLDNEW
« no previous file with comments | « gyp/skia_for_android_framework_defines.gypi ('k') | samplecode/SampleApp.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698