2019-03-08 06:55:43 -08:00
struct @beta Efl.Ui.Factory_Item_Created_Event {
2018-12-07 15:51:09 -08:00
[[EFL Ui Factory event structure provided when an item was just created.]]
model: Efl.Model; [[The model already set on the new item.]]
item: Efl.Gfx.Entity; [[The item that was just created.]]
}
2019-02-14 08:37:02 -08:00
interface @beta Efl.Ui.Factory extends Efl.Ui.Property_Bind, Efl.Ui.Factory_Bind
2017-01-31 12:17:58 -08:00
{
2017-02-09 05:43:37 -08:00
[[Efl UI factory interface]]
2017-01-31 12:17:58 -08:00
methods {
2019-08-16 16:17:57 -07:00
create @protected {
2019-08-16 15:59:36 -07:00
[[Create a UI object from the necessary properties in the specified model.
Note: This is the function you need to implement for a custom factory, but if you want to use a factory, you should rely on @Efl.Ui.View_Factory.create_with_event.]]
2017-01-31 12:17:58 -08:00
params {
2019-08-15 20:45:09 -07:00
models: iterator<Efl.Model>; [[Efl iterator providing the model to be associated to the new item. It should remain valid until the end of the function call.]]
2018-04-05 01:47:26 -07:00
parent: Efl.Gfx.Entity; [[Efl canvas]]
2017-01-31 12:17:58 -08:00
}
2018-12-07 02:26:54 -08:00
return: future<Efl.Gfx.Entity>; [[Created UI object]]
2017-01-31 12:17:58 -08:00
}
release {
2017-02-09 05:43:37 -08:00
[[Release a UI object and disconnect from models.]]
2017-01-31 12:17:58 -08:00
params {
2018-04-05 01:47:26 -07:00
ui_view: Efl.Gfx.Entity; [[Efl canvas]]
2017-01-31 12:17:58 -08:00
}
}
2019-08-16 11:40:38 -07:00
building @const {
[[This function is called during the creation of an UI object between the @Efl.Object.constructor and @Efl.Object.finalize call.
Note: if the @Efl.Ui.Factory does keep a cache of object, this won't be called when object are pulled out of the cache.]]
params {
ui_view: Efl.Gfx.Entity; [[The UI object being created.]]
}
}
2017-01-31 12:17:58 -08:00
}
2018-12-07 15:51:09 -08:00
events {
created: Efl.Ui.Factory_Item_Created_Event; [[Event triggered when an item has been successfully created.]]
}
2017-01-31 12:17:58 -08:00
}