efl/src/lib/eio/efl_io_model.eo

58 lines
1.5 KiB
Plaintext
Raw Normal View History

2017-10-25 18:04:31 -07:00
import eina_types;
function @beta EflIoFilter {
2017-10-25 18:04:31 -07:00
[[EflIoFilter function]]
params {
efl_model : rename all efl_model based classes. Summary: As the result of discussion in T7458, we need to rename all efl_model based classes with efl_XXX_Model sequence. I've run few vote for this, see V42, V43 few classes are totally renamed as our consideration of misnaming. | Efl.Model_Loop | Efl.Loop_Model | | Efl.Model_Item | Efl.Generic_Model | | Efl.Model_Container | Efl.Container_Model | | Efl.Model_Container_Item | Efl.Container_Model_Item | | Efl.Model_Composite | Efl.Composite_Model | | Efl.Model_Composite_Boolean | Efl.Boolean_Model | | Efl.Model_Composite_Boolean_Chlidren | Efl.Boolean_Model_Item | | Efl.Model_Composite_Selection | Efl.Select_Model | | Efl.Model_Composite_Selection_Chlidren | Efl.Select_Model_Item | | Efl.Model_View | Efl.View_Model | | Eio.Model | Efl.Io.Model | | Efl.Ui.Model_State | Efl.Ui.State_Model | | Efl.Ui.Model_Size | Efl.Ui.Size_Model | | Efl.Ui.Model_Exact | Efl.Ui.Exact_Model | | Efl.Ui.Model_Average | Efl.Ui.Average_Model | | Efl.Ui.Model_Homogeneous | Efl.Ui.Homogeneous_Model | I worried about Efl.Io.Model changes, cause it is widely used, but as I tested, there is no issue found yet. Eldbus.Model also may can changed Efl.Dbus.Model, but I cannot found any class who using Efl.Dbus namespace, so I left it future work. Test Plan: Run the Make Test, it works well except Efl test about selection. there are class inheritance problem exist in select_model, I reported it and will fix it in another patch. Reviewers: cedric, felipealmeida, woohyun, Hermet Reviewed By: cedric Subscribers: lauromoura Tags: #efl, #do_not_merge Differential Revision: https://phab.enlightenment.org/D7533
2019-01-30 20:35:34 -08:00
@in model: Efl.Io.Model;
@in entry: ptr(Eina.File_Direct_Info);
2017-10-25 18:04:31 -07:00
}
return: int;
};
class @beta Efl.Io.Model extends Efl.Loop_Model
2015-04-05 06:19:45 -07:00
{
[[Efl Io model class
Model is populated asynchronously from a monitoring thread, so values
won't be correct immediately.
]]
2015-04-05 06:19:45 -07:00
methods {
children_filter_set {
[[Set children filter callback.
This function sets, along with user's private data userdata,
the Eio's Eio_Filter_Direct_Cb which is a mid-step before
receiving the real data. Once in filter callback we can decide,
by returning either EINA_FALSE, to abort the notification or
EINA_TRUE to keep it.
See also @Efl.Model.children_slice_get.
]]
params {
2017-10-25 18:04:31 -07:00
filter: EflIoFilter; [[Filter callback]]
}
2015-04-05 06:19:45 -07:00
}
2017-10-25 18:04:31 -07:00
@property path {
[[ Define the root path of a model.
]]
set { [[ Only possible during construction. ]] }
get { }
values {
2017-10-25 18:04:31 -07:00
path: string; [[ Root path of the model. ]]
2015-04-05 06:19:45 -07:00
}
}
}
implements {
2017-10-25 18:04:31 -07:00
Efl.Object.finalize;
Efl.Object.invalidate;
Efl.Object.destructor;
Efl.Model.properties { get; }
2017-10-25 18:04:31 -07:00
Efl.Model.property { set; get; }
Efl.Model.child_add;
Efl.Model.child_del;
Efl.Model.children_slice_get;
2017-10-25 18:04:31 -07:00
Efl.Model.children_count { get; }
2015-04-05 06:19:45 -07:00
}
}