X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fmodules%2Fexample%2Ffilledrect.cpp;h=329012f3330cb731b99c7a4c18ccc354419440cb;hb=4be650adcbea49129f3869d8596255ace7f987b1;hp=0c165edaf2daefd67d57d7261a7878d136984aaa;hpb=1ba01d62f55407997aca33ed89d171ea7e5979d1;p=synfig.git diff --git a/synfig-core/trunk/src/modules/example/filledrect.cpp b/synfig-core/trunk/src/modules/example/filledrect.cpp index 0c165ed..329012f 100644 --- a/synfig-core/trunk/src/modules/example/filledrect.cpp +++ b/synfig-core/trunk/src/modules/example/filledrect.cpp @@ -119,6 +119,7 @@ FilledRect::get_param_vocab()const ret.push_back(ParamDesc("point1") .set_local_name(_("Point 1")) + .set_box("point2") ); ret.push_back(ParamDesc("point2") @@ -144,6 +145,26 @@ FilledRect::get_param_vocab()const return ret; } +synfig::Layer::Handle +FilledRect::hit_check(synfig::Context context, const synfig::Point &point)const +{ + Color clr; + Real amt; + + if (!get_color(point,clr,amt)) + return context.hit_check(point); + + synfig::Layer::Handle tmp; + + if (get_blend_method()==Color::BLEND_BEHIND && (tmp=context.hit_check(point))) + return tmp; + + if (Color::is_onto(get_blend_method()) && !(context.hit_check(point))) + return 0; + + return const_cast(this); +} + bool FilledRect::get_color(const Point &pos, Color &out, Real &outamount) const {