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

Side by Side Diff: include/effects/SkDropShadowImageFilter.h

Issue 182983003: Factory methods for heap-allocated SkImageFilter objects. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Rebase Created 6 years, 9 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 | « include/effects/SkDisplacementMapEffect.h ('k') | include/effects/SkMagnifierImageFilter.h » ('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 2013 Google Inc. 2 * Copyright 2013 Google Inc.
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 #include "SkColor.h" 8 #include "SkColor.h"
9 #include "SkImageFilter.h" 9 #include "SkImageFilter.h"
10 #include "SkScalar.h" 10 #include "SkScalar.h"
11 11
12 class SK_API SkDropShadowImageFilter : public SkImageFilter { 12 class SK_API SkDropShadowImageFilter : public SkImageFilter {
13 public: 13 public:
14 SkDropShadowImageFilter(SkScalar dx, SkScalar dy, SkScalar sigma, SkColor, S kImageFilter* input = NULL); 14 static SkDropShadowImageFilter* Create(SkScalar dx, SkScalar dy, SkScalar si gma,
15 SkDropShadowImageFilter(SkScalar dx, SkScalar dy, SkScalar sigmaX, SkScalar sigmaY, SkColor, SkImageFilter* input = NULL, const CropRect* cropRect = NULL); 15 SkColor color, SkImageFilter* input = NULL) {
16 return SkNEW_ARGS(SkDropShadowImageFilter, (dx, dy, sigma, color, input) );
17 }
18 static SkDropShadowImageFilter* Create(SkScalar dx, SkScalar dy,
19 SkScalar sigmaX, SkScalar sigmaY, SkC olor color,
20 SkImageFilter* input = NULL,
21 const CropRect* cropRect = NULL) {
22 return SkNEW_ARGS(SkDropShadowImageFilter, (dx, dy, sigmaX, sigmaY,
23 color, input, cropRect));
24 }
16 virtual void computeFastBounds(const SkRect&, SkRect*) const SK_OVERRIDE; 25 virtual void computeFastBounds(const SkRect&, SkRect*) const SK_OVERRIDE;
17 SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkDropShadowImageFilter) 26 SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkDropShadowImageFilter)
18 27
19 protected: 28 protected:
20 explicit SkDropShadowImageFilter(SkReadBuffer&); 29 explicit SkDropShadowImageFilter(SkReadBuffer&);
21 virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE; 30 virtual void flatten(SkWriteBuffer&) const SK_OVERRIDE;
22 virtual bool onFilterImage(Proxy*, const SkBitmap& source, const SkMatrix&, SkBitmap* result, SkIPoint* loc) const SK_OVERRIDE; 31 virtual bool onFilterImage(Proxy*, const SkBitmap& source, const SkMatrix&, SkBitmap* result, SkIPoint* loc) const SK_OVERRIDE;
23 virtual bool onFilterBounds(const SkIRect& src, const SkMatrix&, 32 virtual bool onFilterBounds(const SkIRect& src, const SkMatrix&,
24 SkIRect* dst) const SK_OVERRIDE; 33 SkIRect* dst) const SK_OVERRIDE;
25 34
26 35 #ifdef SK_SUPPORT_LEGACY_PUBLICEFFECTCONSTRUCTORS
36 public:
37 #endif
38 SkDropShadowImageFilter(SkScalar dx, SkScalar dy, SkScalar sigma, SkColor,
39 SkImageFilter* input = NULL);
40 SkDropShadowImageFilter(SkScalar dx, SkScalar dy, SkScalar sigmaX, SkScalar sigmaY, SkColor,
41 SkImageFilter* input = NULL, const CropRect* cropRec t = NULL);
27 42
28 private: 43 private:
29 SkScalar fDx, fDy, fSigmaX, fSigmaY; 44 SkScalar fDx, fDy, fSigmaX, fSigmaY;
30 SkColor fColor; 45 SkColor fColor;
31 typedef SkImageFilter INHERITED; 46 typedef SkImageFilter INHERITED;
32 }; 47 };
OLDNEW
« no previous file with comments | « include/effects/SkDisplacementMapEffect.h ('k') | include/effects/SkMagnifierImageFilter.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698