~~Title: Efl.Ui.Widget.provider_find~~ ====== Efl.Ui.Widget.provider_find ====== ===== Description ===== %%Searches upwards in the object tree for a provider which knows the given class/interface.%% %%The object from the provider will then be returned. The base implementation calls the provider_find function on the object parent, and returns its result. If no parent is present %%''NULL''%% is returned. Each implementation has to support this function by overriding it and returning itself if the interface matches the parameter. If this is not done the class cannot be found up in the object tree.%% //Since 1.22// {{page>:develop:api-include:efl:ui:widget:method:provider_find:description&nouser&nolink&nodate}} //Overridden from [[:develop:api:efl:canvas:object:method:provider_find|Efl.Object.provider_find]].//===== Signature ===== provider_find @const { params { @in klass: const(Efl.Class); } return: Efl.Object; } ===== C signature ===== Efl_Object *efl_provider_find(const Eo *obj, const Efl_Class *klass); ===== Parameters ===== * **klass** //(in)// - %%The class identifier to search for.%% ===== Implemented by ===== * [[:develop:api:efl:object:method:provider_find|Efl.Object.provider_find]] * [[:develop:api:efl:canvas:object:method:provider_find|Efl.Canvas.Object.provider_find]] * [[:develop:api:efl:ui:widget:method:provider_find|Efl.Ui.Widget.provider_find]] * [[:develop:api:efl:ui:win:method:provider_find|Efl.Ui.Win.provider_find]] * [[:develop:api:efl:ui:focus:manager_calc:method:provider_find|Efl.Ui.Focus.Manager_Calc.provider_find]] * [[:develop:api:evas:canvas3d:object:method:provider_find|Evas.Canvas3D.Object.provider_find]]