| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * Copyright 2012 The Android Open Source Project | 2  * Copyright 2012 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 SkOffsetImageFilter_DEFINED | 8 #ifndef SkOffsetImageFilter_DEFINED | 
| 9 #define SkOffsetImageFilter_DEFINED | 9 #define SkOffsetImageFilter_DEFINED | 
| 10 | 10 | 
| 11 #include "SkImageFilter.h" | 11 #include "SkImageFilter.h" | 
| 12 #include "SkPoint.h" | 12 #include "SkPoint.h" | 
| 13 | 13 | 
| 14 class SK_API SkOffsetImageFilter : public SkImageFilter { | 14 class SK_API SkOffsetImageFilter : public SkImageFilter { | 
| 15     typedef SkImageFilter INHERITED; |  | 
| 16 |  | 
| 17 public: | 15 public: | 
| 18     static SkOffsetImageFilter* Create(SkScalar dx, SkScalar dy, SkImageFilter* 
    input = NULL, | 16     static SkImageFilter* Create(SkScalar dx, SkScalar dy, SkImageFilter* input 
    = NULL, | 
| 19                                        const CropRect* cropRect = NULL) { | 17                                  const CropRect* cropRect = NULL) { | 
| 20         if (!SkScalarIsFinite(dx) || !SkScalarIsFinite(dy)) { | 18         if (!SkScalarIsFinite(dx) || !SkScalarIsFinite(dy)) { | 
| 21             return NULL; | 19             return NULL; | 
| 22         } | 20         } | 
| 23         return new SkOffsetImageFilter(dx, dy, input, cropRect); | 21         return new SkOffsetImageFilter(dx, dy, input, cropRect); | 
| 24     } | 22     } | 
|  | 23 | 
| 25     void computeFastBounds(const SkRect& src, SkRect* dst) const override; | 24     void computeFastBounds(const SkRect& src, SkRect* dst) const override; | 
|  | 25 | 
| 26     SK_TO_STRING_OVERRIDE() | 26     SK_TO_STRING_OVERRIDE() | 
| 27     SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkOffsetImageFilter) | 27     SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkOffsetImageFilter) | 
| 28 | 28 | 
| 29 protected: | 29 protected: | 
| 30     SkOffsetImageFilter(SkScalar dx, SkScalar dy, SkImageFilter* input, const Cr
    opRect* cropRect); |  | 
| 31     void flatten(SkWriteBuffer&) const override; | 30     void flatten(SkWriteBuffer&) const override; | 
| 32 | 31     bool onFilterImage(Proxy*, const SkBitmap& src, const Context&, SkBitmap* re
    sult, | 
| 33     virtual bool onFilterImage(Proxy*, const SkBitmap& src, const Context&, | 32                        SkIPoint* loc) const override; | 
| 34                                SkBitmap* result, SkIPoint* loc) const override; |  | 
| 35     bool onFilterBounds(const SkIRect&, const SkMatrix&, SkIRect*) const overrid
    e; | 33     bool onFilterBounds(const SkIRect&, const SkMatrix&, SkIRect*) const overrid
    e; | 
| 36 | 34 | 
| 37 private: | 35 private: | 
|  | 36     SkOffsetImageFilter(SkScalar dx, SkScalar dy, SkImageFilter* input, const Cr
    opRect*); | 
|  | 37 | 
| 38     SkVector fOffset; | 38     SkVector fOffset; | 
|  | 39 | 
|  | 40     typedef SkImageFilter INHERITED; | 
| 39 }; | 41 }; | 
| 40 | 42 | 
| 41 #endif | 43 #endif | 
| OLD | NEW | 
|---|