Flutter Engine
 
Loading...
Searching...
No Matches
dl_radial_gradient_color_source.cc
Go to the documentation of this file.
1// Copyright 2013 The Flutter Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
6
7namespace flutter {
8
9DlRadialGradientColorSource::DlRadialGradientColorSource(
10 const DlRadialGradientColorSource* source)
11 : DlGradientColorSourceBase(source->stop_count(),
12 source->tile_mode(),
13 source->matrix_ptr()),
14 center_(source->center()),
15 radius_(source->radius()) {
16 store_color_stops(this + 1, source->colors(), source->stops());
17}
18
19std::shared_ptr<DlColorSource> DlRadialGradientColorSource::shared() const {
20 return MakeRadial(center_, radius_, stop_count(), colors(), stops(),
21 tile_mode(), matrix_ptr());
22}
23
24bool DlRadialGradientColorSource::equals_(DlColorSource const& other) const {
25 FML_DCHECK(other.type() == DlColorSourceType::kRadialGradient);
26 auto that = static_cast<DlRadialGradientColorSource const*>(&other);
27 return (center_ == that->center_ && radius_ == that->radius_ &&
28 base_equals_(that));
29}
30
31} // namespace flutter
virtual T type() const =0
#define FML_DCHECK(condition)
Definition logging.h:122