40 virtual i_gradient_sampler
const&
sampler(i_gradient
const& aGradient) = 0;
41 virtual i_gradient_filter
const&
filter(i_gradient
const& aGradient) = 0;
47 do_find_gradient(aId, result);
53 do_create_gradient(result);
59 do_create_gradient(aOther, result);
65 do_create_gradient(aCssDeclaration, result);
71 do_create_gradient(aColor, result);
77 do_create_gradient(aColor, aDirection, result);
83 do_create_gradient(aColor1, aColor2, aDirection, result);
89 do_create_gradient(aColorStops, aDirection, result);
95 do_create_gradient(aColorStops, aAlphaStops, aDirection, result);
101 do_create_gradient(aOther, aColorStops, result);
107 do_create_gradient(aOther, aColorStops, aAlphaStops, result);
113 do_create_gradient(aColors, aDirection, result);
131 virtual void do_create_gradient(i_gradient
const& aOther, i_gradient::color_stop_list
const& aColorStops,
neolib::i_ref_ptr<i_gradient>& aResult) = 0;
132 virtual void do_create_gradient(i_gradient
const& aOther, i_gradient::color_stop_list
const& aColorStops, i_gradient::alpha_stop_list
const& aAlphaStops,
neolib::i_ref_ptr<i_gradient>& aResult) = 0;
135 static uuid const&
iid() {
static uuid const sIid{ 0x15d5c3b1, 0x195e, 0x4e90, 0x9b65, { 0x46, 0x70, 0x7e, 0xb9, 0x6e, 0xd5 } };
return sIid; }
virtual i_gradient_sampler const & sampler(i_gradient const &aGradient)=0
neolib::ref_ptr< i_gradient > create_gradient()
neolib::ref_ptr< i_gradient > create_gradient(i_gradient const &aOther)
neolib::ref_ptr< i_gradient > create_gradient(sRGB_color const &aColor1, sRGB_color const &aColor2, gradient_direction aDirection=gradient_direction::Vertical)
neolib::ref_ptr< i_gradient > create_gradient(std::initializer_list< sRGB_color > const &aColors, gradient_direction aDirection=gradient_direction::Vertical)
friend class gradient_object
virtual void clear_gradients()=0
virtual i_gradient_filter const & filter(i_gradient const &aGradient)=0
static uuid const & iid()
neolib::ref_ptr< i_gradient > create_gradient(i_gradient::color_stop_list const &aColorStops, gradient_direction aDirection=gradient_direction::Vertical)
neolib::ref_ptr< i_gradient > find_gradient(gradient_id aId) const
neolib::ref_ptr< i_gradient > create_gradient(neolib::i_vector< sRGB_color::abstract_type > const &aColors, gradient_direction aDirection=gradient_direction::Vertical)
neolib::ref_ptr< i_gradient > create_gradient(i_string const &aCssDeclaration)
neolib::ref_ptr< i_gradient > create_gradient(i_gradient const &aOther, i_gradient::color_stop_list const &aColorStops)
neolib::ref_ptr< i_gradient > create_gradient(i_gradient::color_stop_list const &aColorStops, i_gradient::alpha_stop_list const &aAlphaStops, gradient_direction aDirection=gradient_direction::Vertical)
i_gradient_manager abstract_type
neolib::ref_ptr< i_gradient > create_gradient(sRGB_color const &aColor)
neolib::ref_ptr< i_gradient > create_gradient(i_gradient const &aOther, i_gradient::color_stop_list const &aColorStops, i_gradient::alpha_stop_list const &aAlphaStops)
neolib::ref_ptr< i_gradient > create_gradient(sRGB_color const &aColor, gradient_direction aDirection)