Revert "efl_add_ref - fis to use efl_add properly with a parent."
This reverts commit 2fb5cc3ad09f6aaf82b5d1131ac5ed22ed848bd4. Most of this change where wrong as they didn't affect the destruction of the object. efl_add_ref allow for manual handling of the lifecycle of the object and make sure it is still alive during destructor. efl_add will not allow you to access an object after invalidate also efl.parent.get will always return NULL once the object is invalidated. Differential Revision: https://phab.enlightenment.org/D6062
This commit is contained in:
parent
7ce001084a
commit
73876dcbc9
|
@ -56,9 +56,9 @@ main(int argc, const char *argv[])
|
|||
|
||||
ecore_app_args_set(argc, argv);
|
||||
|
||||
out = efl_add(ECORE_AUDIO_OBJ_OUT_PULSE_CLASS, efl_main_loop_get());
|
||||
out = efl_add_ref(ECORE_AUDIO_OBJ_OUT_PULSE_CLASS, NULL);
|
||||
|
||||
in = efl_add(ECORE_AUDIO_OBJ_IN_CLASS, efl_main_loop_get());
|
||||
in = efl_add_ref(ECORE_AUDIO_OBJ_IN_CLASS, NULL);
|
||||
if (!in)
|
||||
{
|
||||
printf("error when creating ecore audio source.\n");
|
||||
|
|
|
@ -201,7 +201,7 @@ static void _play_finished(void *data EINA_UNUSED, const Efl_Event *event)
|
|||
|
||||
inputs = eina_list_remove(inputs, event->object);
|
||||
ret = ecore_audio_obj_out_input_detach(out, event->object);
|
||||
efl_del(event->object);
|
||||
efl_unref(event->object);
|
||||
|
||||
if (!ret)
|
||||
printf("Could not detach input %s\n", name);
|
||||
|
@ -252,7 +252,7 @@ main(int argc, const char *argv[])
|
|||
{
|
||||
if (!strncmp(argv[i], "tone:", 5))
|
||||
{
|
||||
in = efl_add(ECORE_AUDIO_OBJ_IN_TONE_CLASS, efl_main_loop_get());
|
||||
in = efl_add_ref(ECORE_AUDIO_OBJ_IN_TONE_CLASS, NULL);
|
||||
if (!in)
|
||||
{
|
||||
printf("error when creating ecore audio source.\n");
|
||||
|
@ -276,7 +276,7 @@ main(int argc, const char *argv[])
|
|||
}
|
||||
else
|
||||
{
|
||||
in = efl_add(ECORE_AUDIO_OBJ_IN_SNDFILE_CLASS, efl_main_loop_get());
|
||||
in = efl_add_ref(ECORE_AUDIO_OBJ_IN_SNDFILE_CLASS, NULL);
|
||||
if (!in)
|
||||
{
|
||||
printf("error when creating ecore audio source.\n");
|
||||
|
@ -307,7 +307,7 @@ main(int argc, const char *argv[])
|
|||
|
||||
printf("Start: %s (%0.2fs)\n", name, length);
|
||||
|
||||
out = efl_add(ECORE_AUDIO_OBJ_OUT_PULSE_CLASS, efl_main_loop_get());
|
||||
out = efl_add_ref(ECORE_AUDIO_OBJ_OUT_PULSE_CLASS, NULL);
|
||||
ret = ecore_audio_obj_out_input_attach(out, in);
|
||||
if (!ret)
|
||||
printf("Could not attach input %s\n", name);
|
||||
|
|
|
@ -24,8 +24,8 @@ static void _play_finished(void *data EINA_UNUSED, const Efl_Event *event)
|
|||
printf("Done: %s\n", name);
|
||||
|
||||
ecore_audio_obj_in_output_get(event->object, &out);
|
||||
efl_del(event->object);
|
||||
efl_del(out);
|
||||
efl_unref(event->object);
|
||||
efl_unref(out);
|
||||
|
||||
ecore_main_loop_quit();
|
||||
|
||||
|
@ -49,31 +49,31 @@ main(int argc, char *argv[])
|
|||
ecore_audio_init();
|
||||
|
||||
|
||||
in = efl_add(ECORE_AUDIO_OBJ_IN_SNDFILE_CLASS, efl_main_loop_get());
|
||||
in = efl_add_ref(ECORE_AUDIO_OBJ_IN_SNDFILE_CLASS, NULL);
|
||||
efl_name_set(in, basename(argv[1]));
|
||||
ret = ecore_audio_obj_source_set(in, argv[1]);
|
||||
if (!ret) {
|
||||
printf("Could not set %s as input\n", argv[1]);
|
||||
efl_del(in);
|
||||
efl_unref(in);
|
||||
return 1;
|
||||
}
|
||||
|
||||
efl_event_callback_add(in, ECORE_AUDIO_EV_IN_STOPPED, _play_finished, NULL);
|
||||
|
||||
out = efl_add(ECORE_AUDIO_OBJ_OUT_SNDFILE_CLASS, efl_main_loop_get());
|
||||
out = efl_add_ref(ECORE_AUDIO_OBJ_OUT_SNDFILE_CLASS, NULL);
|
||||
ret = ecore_audio_obj_source_set(out, argv[2]);
|
||||
if (!ret) {
|
||||
printf("Could not set %s as output\n", argv[2]);
|
||||
efl_del(in);
|
||||
efl_del(out);
|
||||
efl_unref(in);
|
||||
efl_unref(out);
|
||||
return 1;
|
||||
}
|
||||
|
||||
ret = ecore_audio_obj_out_input_attach(out, in);
|
||||
if (!ret) {
|
||||
printf("Could not attach input\n");
|
||||
efl_del(out);
|
||||
efl_del(in);
|
||||
efl_unref(out);
|
||||
efl_unref(in);
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
|
|
@ -110,7 +110,7 @@ main(void)
|
|||
ctxt.enterer = ecore_idle_enterer_add(_enterer_cb, &ctxt);
|
||||
ctxt.exiter = ecore_idle_exiter_add(_exiter_cb, &ctxt);
|
||||
ctxt.idler = ecore_idler_add(_idler_cb, &ctxt);
|
||||
// ctxt.idler = efl_add(ECORE_IDLER_CLASS, efl_main_loop_get(), ecore_idler_constructor(efl_added, _idler_cb, &ctxt));
|
||||
// ctxt.idler = efl_add_ref(ECORE_IDLER_CLASS, NULL, ecore_idler_constructor(efl_added, _idler_cb, &ctxt));
|
||||
ctxt.handler = ecore_event_handler_add(_event_type,
|
||||
_event_handler_cb,
|
||||
&ctxt);
|
||||
|
|
|
@ -48,9 +48,9 @@ main(void)
|
|||
poller2 = ecore_poller_add(ECORE_POLLER_CORE, 8, _poller_print_cb, str2);
|
||||
poller3 = ecore_poller_add(ECORE_POLLER_CORE, 30, _poller_quit_cb, str3);
|
||||
|
||||
// poller1 = efl_add(ECORE_POLLER_CLASS, efl_main_loop_get(), // ecore_poller_constructor(efl_added, ECORE_POLLER_CORE, 4, _poller_print_cb, str1));
|
||||
// poller2 = efl_add(ECORE_POLLER_CLASS, efl_main_loop_get(), // ecore_poller_constructor(efl_added, ECORE_POLLER_CORE, 8, _poller_print_cb, str2));
|
||||
// poller3 = efl_add(ECORE_POLLER_CLASS, efl_main_loop_get(), // ecore_poller_constructor(efl_added, ECORE_POLLER_CORE, 20, _poller_quit_cb, str3));
|
||||
// poller1 = efl_add_ref(ECORE_POLLER_CLASS, NULL, // ecore_poller_constructor(efl_added, ECORE_POLLER_CORE, 4, _poller_print_cb, str1));
|
||||
// poller2 = efl_add_ref(ECORE_POLLER_CLASS, NULL, // ecore_poller_constructor(efl_added, ECORE_POLLER_CORE, 8, _poller_print_cb, str2));
|
||||
// poller3 = efl_add_ref(ECORE_POLLER_CLASS, NULL, // ecore_poller_constructor(efl_added, ECORE_POLLER_CORE, 20, _poller_quit_cb, str3));
|
||||
|
||||
|
||||
ecore_main_loop_begin();
|
||||
|
@ -61,9 +61,9 @@ main(void)
|
|||
// ecore_poller_interval_set(poller2, 16, NULL);
|
||||
ecore_main_loop_begin();
|
||||
|
||||
// efl_del(poller1);
|
||||
// efl_del(poller2);
|
||||
// efl_del(poller3);
|
||||
// efl_unref(poller1);
|
||||
// efl_unref(poller2);
|
||||
// efl_unref(poller3);
|
||||
ecore_poller_del(poller1);
|
||||
ecore_poller_del(poller2);
|
||||
ecore_poller_del(poller3);
|
||||
|
|
|
@ -452,7 +452,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
|
||||
if (strcmp(input_fname, ":stdin:") == 0)
|
||||
{
|
||||
input = efl_add(EFL_IO_STDIN_CLASS, ev->object,
|
||||
input = efl_add_ref(EFL_IO_STDIN_CLASS, NULL,
|
||||
efl_event_callback_array_add(efl_added, input_cbs(), NULL));
|
||||
if (!input)
|
||||
{
|
||||
|
@ -662,7 +662,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
else
|
||||
{
|
||||
/* regular file, open with flags: read-only and close-on-exec */
|
||||
input = efl_add(EFL_IO_FILE_CLASS, ev->object,
|
||||
input = efl_add_ref(EFL_IO_FILE_CLASS, NULL,
|
||||
efl_file_set(efl_added, input_fname, NULL), /* mandatory */
|
||||
efl_io_file_flags_set(efl_added, O_RDONLY), /* default */
|
||||
efl_io_closer_close_on_exec_set(efl_added, EINA_TRUE), /* recommended, set *after* flags, or include O_CLOEXEC in flags -- be careful with _WIN32 that doesn't support it. */
|
||||
|
@ -679,7 +679,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
|
||||
if (strcmp(output_fname, ":stdout:") == 0)
|
||||
{
|
||||
output = efl_add(EFL_IO_STDOUT_CLASS, ev->object,
|
||||
output = efl_add_ref(EFL_IO_STDOUT_CLASS, NULL,
|
||||
efl_event_callback_array_add(efl_added, output_cbs(), NULL) /* optional */
|
||||
);
|
||||
if (!output)
|
||||
|
@ -691,7 +691,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
}
|
||||
else if (strcmp(output_fname, ":stderr:") == 0)
|
||||
{
|
||||
output = efl_add(EFL_IO_STDERR_CLASS, ev->object,
|
||||
output = efl_add_ref(EFL_IO_STDERR_CLASS, NULL,
|
||||
efl_event_callback_array_add(efl_added, output_cbs(), NULL) /* optional */
|
||||
);
|
||||
if (!output)
|
||||
|
@ -718,7 +718,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
* When finished get the efl_io_buffer_slice_get(), see
|
||||
* _copier_done().
|
||||
*/
|
||||
output = efl_add(EFL_IO_BUFFER_CLASS, ev->object,
|
||||
output = efl_add_ref(EFL_IO_BUFFER_CLASS, NULL,
|
||||
efl_event_callback_array_add(efl_added, output_cbs(), NULL), /* optional */
|
||||
efl_event_callback_array_add(efl_added, output_buffer_cbs(), NULL) /* optional */
|
||||
);
|
||||
|
@ -938,7 +938,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
/* regular file, open with flags: write-only, close-on-exec,
|
||||
* create if did not exist and truncate if exist.
|
||||
*/
|
||||
output = efl_add(EFL_IO_FILE_CLASS, ev->object,
|
||||
output = efl_add_ref(EFL_IO_FILE_CLASS, NULL,
|
||||
efl_file_set(efl_added, output_fname, NULL), /* mandatory */
|
||||
efl_io_file_flags_set(efl_added, O_WRONLY | O_CREAT | O_TRUNC), /* mandatory for write */
|
||||
efl_io_closer_close_on_exec_set(efl_added, EINA_TRUE), /* recommended, set *after* flags, or include O_CLOEXEC in flags -- be careful with _WIN32 that doesn't support it. */
|
||||
|
|
|
@ -258,7 +258,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
* the line_delimiter, then wait for a reply from the server, then
|
||||
* write another.
|
||||
*/
|
||||
send_queue = efl_add(EFL_IO_QUEUE_CLASS, ev->object,
|
||||
send_queue = efl_add_ref(EFL_IO_QUEUE_CLASS, NULL,
|
||||
efl_name_set(efl_added, "send_queue"),
|
||||
efl_io_queue_limit_set(efl_added, buffer_limit));
|
||||
if (!send_queue)
|
||||
|
@ -279,7 +279,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
* Our example's usage is to peek its data with slice_get() then
|
||||
* clear().
|
||||
*/
|
||||
receive_queue = efl_add(EFL_IO_QUEUE_CLASS, ev->object,
|
||||
receive_queue = efl_add_ref(EFL_IO_QUEUE_CLASS, NULL,
|
||||
efl_name_set(efl_added, "receive_queue"),
|
||||
efl_io_queue_limit_set(efl_added, buffer_limit),
|
||||
efl_event_callback_add(efl_added, EFL_IO_QUEUE_EVENT_SLICE_CHANGED, _receiver_data, NULL));
|
||||
|
@ -359,9 +359,9 @@ efl_main(void *data EINA_UNUSED,
|
|||
error_sender:
|
||||
efl_del(dialer);
|
||||
error_dialer:
|
||||
efl_del(receive_queue);
|
||||
efl_unref(receive_queue);
|
||||
error_receive_queue:
|
||||
efl_del(send_queue);
|
||||
efl_unref(send_queue);
|
||||
end:
|
||||
EINA_LIST_FREE(commands, cmd)
|
||||
{
|
||||
|
|
|
@ -350,11 +350,11 @@ _server_client_add(void *data EINA_UNUSED, const Efl_Event *event)
|
|||
return;
|
||||
}
|
||||
|
||||
send_buffer = efl_add(EFL_IO_BUFFER_CLASS, efl_main_loop_get(),
|
||||
send_buffer = efl_add_ref(EFL_IO_BUFFER_CLASS, NULL,
|
||||
efl_io_buffer_adopt_readonly(efl_added, hello_world_slice));
|
||||
|
||||
/* Unlimited buffer to store the received data. */
|
||||
recv_buffer = efl_add(EFL_IO_BUFFER_CLASS, efl_main_loop_get());
|
||||
recv_buffer = efl_add_ref(EFL_IO_BUFFER_CLASS, NULL);
|
||||
|
||||
/* an input copier that takes data from send_buffer and pushes to client */
|
||||
d->send_copier = efl_add(EFL_IO_COPIER_CLASS, efl_parent_get(client),
|
||||
|
@ -712,7 +712,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
cipher = EFL_NET_SSL_CIPHER_TLSV1_2;
|
||||
}
|
||||
|
||||
ssl_ctx = efl_add(EFL_NET_SSL_CONTEXT_CLASS, efl_main_loop_get(),
|
||||
ssl_ctx = efl_add_ref(EFL_NET_SSL_CONTEXT_CLASS, NULL,
|
||||
efl_net_ssl_context_certificates_set(efl_added, eina_list_iterator_new(certificates)),
|
||||
efl_net_ssl_context_private_keys_set(efl_added, eina_list_iterator_new(private_keys)),
|
||||
efl_net_ssl_context_certificate_revocation_lists_set(efl_added, eina_list_iterator_new(crls)),
|
||||
|
|
|
@ -520,7 +520,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
cipher = EFL_NET_SSL_CIPHER_TLSV1_2;
|
||||
}
|
||||
|
||||
ssl_ctx = efl_add(EFL_NET_SSL_CONTEXT_CLASS, ev->object,
|
||||
ssl_ctx = efl_add_ref(EFL_NET_SSL_CONTEXT_CLASS, NULL,
|
||||
efl_net_ssl_context_certificates_set(efl_added, eina_list_iterator_new(certificates)),
|
||||
efl_net_ssl_context_private_keys_set(efl_added, eina_list_iterator_new(private_keys)),
|
||||
efl_net_ssl_context_certificate_revocation_lists_set(efl_added, eina_list_iterator_new(crls)),
|
||||
|
|
|
@ -311,7 +311,7 @@ efl_terminate(void *data EINA_UNUSED,
|
|||
efl_del(dialer);
|
||||
dialer = NULL;
|
||||
|
||||
efl_del(ssl_ctx);
|
||||
efl_unref(ssl_ctx);
|
||||
ssl_ctx = NULL;
|
||||
|
||||
EINA_LIST_FREE(pending_send, str) free(str);
|
||||
|
@ -456,7 +456,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
/* create a new SSL context with command line configurations.
|
||||
* another option would be to use the default dialer context */
|
||||
#ifndef USE_DEFAULT_CONTEXT
|
||||
ssl_ctx = efl_add(EFL_NET_SSL_CONTEXT_CLASS, ev->object,
|
||||
ssl_ctx = efl_add_ref(EFL_NET_SSL_CONTEXT_CLASS, NULL,
|
||||
efl_net_ssl_context_certificates_set(efl_added, eina_list_iterator_new(certificates)),
|
||||
efl_net_ssl_context_private_keys_set(efl_added, eina_list_iterator_new(private_keys)),
|
||||
efl_net_ssl_context_certificate_revocation_lists_set(efl_added, eina_list_iterator_new(crls)),
|
||||
|
@ -528,7 +528,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
efl_io_closer_close(dialer); /* just del won't do as ssl has an extra ref */
|
||||
efl_del(dialer);
|
||||
no_ssl_ctx:
|
||||
efl_del(ssl_ctx);
|
||||
efl_unref(ssl_ctx);
|
||||
|
||||
end:
|
||||
EINA_LIST_FREE(pending_send, str) free(str);
|
||||
|
|
|
@ -227,7 +227,7 @@ efl_terminate(void *data EINA_UNUSED,
|
|||
efl_del(server);
|
||||
server = NULL;
|
||||
|
||||
efl_del(ssl_ctx);
|
||||
efl_unref(ssl_ctx);
|
||||
ssl_ctx = NULL;
|
||||
|
||||
EINA_LIST_FREE(certificates, str) free(str);
|
||||
|
@ -301,7 +301,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
cipher = EFL_NET_SSL_CIPHER_TLSV1_2;
|
||||
}
|
||||
|
||||
ssl_ctx = efl_add(EFL_NET_SSL_CONTEXT_CLASS, ev->object,
|
||||
ssl_ctx = efl_add_ref(EFL_NET_SSL_CONTEXT_CLASS, NULL,
|
||||
efl_net_ssl_context_certificates_set(efl_added, eina_list_iterator_new(certificates)),
|
||||
efl_net_ssl_context_private_keys_set(efl_added, eina_list_iterator_new(private_keys)),
|
||||
efl_net_ssl_context_certificate_revocation_lists_set(efl_added, eina_list_iterator_new(crls)),
|
||||
|
@ -363,7 +363,7 @@ efl_main(void *data EINA_UNUSED,
|
|||
efl_del(server);
|
||||
server = NULL;
|
||||
end_ctx:
|
||||
efl_del(ssl_ctx);
|
||||
efl_unref(ssl_ctx);
|
||||
|
||||
end:
|
||||
EINA_LIST_FREE(certificates, str) free(str);
|
||||
|
|
|
@ -27,7 +27,7 @@ void
|
|||
monitor_stuff(void *data)
|
||||
{
|
||||
const char *path = data;
|
||||
Eio_Sentry *sentry = efl_add(EIO_SENTRY_CLASS, efl_main_loop_get());
|
||||
Eio_Sentry *sentry = efl_add_ref(EIO_SENTRY_CLASS, NULL);
|
||||
efl_event_callback_add(sentry, EIO_SENTRY_EVENT_FILE_CREATED, (Efl_Event_Cb)&sentry_cb, NULL);
|
||||
|
||||
printf("Starting monitoring path %s\n", path);
|
||||
|
|
|
@ -15,8 +15,8 @@ efl_main(void *data EINA_UNUSED, const Efl_Event *ev)
|
|||
elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);
|
||||
elm_app_info_set(efl_main, "elementary", "images/plant_01.jpg");
|
||||
|
||||
win = efl_add(EFL_UI_WIN_CLASS, efl_main_loop_get(), "TEST", ELM_WIN_BASIC,
|
||||
efl_ui_win_autodel_set(efl_added, EINA_TRUE));
|
||||
win = efl_add_ref(EFL_UI_WIN_CLASS, NULL, "TEST", ELM_WIN_BASIC,
|
||||
efl_ui_win_autodel_set(efl_added, EINA_TRUE));
|
||||
efl_gfx_entity_size_set(win, EINA_SIZE2D(300, 400));
|
||||
|
||||
scroller = efl_add(EFL_UI_SCROLLER_CLASS, win);
|
||||
|
|
|
@ -49,7 +49,7 @@ _make_model()
|
|||
unsigned int i, s;
|
||||
char buf[256];
|
||||
|
||||
model = efl_add(EFL_MODEL_ITEM_CLASS, efl_main_loop_get());
|
||||
model = efl_add_ref(EFL_MODEL_ITEM_CLASS, NULL);
|
||||
eina_value_setup(&vtext, EINA_VALUE_TYPE_STRING);
|
||||
|
||||
for (i = 0; i < (NUM_ITEMS); i++)
|
||||
|
|
|
@ -43,7 +43,7 @@ elm_main(int argc, char **argv)
|
|||
if (argv[1] != NULL) dirname = argv[1];
|
||||
else dirname = EFL_MODEL_TEST_FILENAME_PATH;
|
||||
|
||||
model = efl_add(EIO_MODEL_CLASS, efl_main_loop_get(), eio_model_path_set(efl_added, dirname));
|
||||
model = efl_add_ref(EIO_MODEL_CLASS, NULL, eio_model_path_set(efl_added, dirname));
|
||||
factory = efl_add(EFL_UI_LAYOUT_FACTORY_CLASS, win);
|
||||
efl_ui_model_connect(factory, "efl.text", "filename");
|
||||
efl_ui_layout_factory_theme_config(factory, "list_item", NULL, "default");
|
||||
|
|
|
@ -173,7 +173,7 @@ _make_model()
|
|||
Efl_Model_Item *model, *child;
|
||||
unsigned int i, len;
|
||||
|
||||
model = efl_add(EFL_MODEL_ITEM_CLASS, efl_main_loop_get());
|
||||
model = efl_add_ref(EFL_MODEL_ITEM_CLASS, NULL);
|
||||
eina_value_setup(&vtext, EINA_VALUE_TYPE_STRING);
|
||||
eina_value_setup(&value, EINA_VALUE_TYPE_UCHAR);
|
||||
|
||||
|
|
|
@ -35,7 +35,6 @@ _cleanup_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, void
|
|||
efl_unref(priv->fileview);
|
||||
efl_unref(priv->treeview);
|
||||
efl_unref(priv->formview);
|
||||
efl_unref(priv->treemodel);
|
||||
}
|
||||
|
||||
static int
|
||||
|
@ -125,12 +124,12 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED)
|
|||
else dirname = EFL_MODEL_TEST_FILENAME_PATH;
|
||||
|
||||
//treemodel
|
||||
priv.treemodel = efl_add(EIO_MODEL_CLASS, efl_main_loop_get(), eio_model_path_set(efl_added, dirname));
|
||||
priv.treemodel = efl_add(EIO_MODEL_CLASS, win, eio_model_path_set(efl_added, dirname));
|
||||
eio_model_children_filter_set(priv.treemodel, NULL, _filter_cb, NULL);
|
||||
|
||||
//treeview
|
||||
genlist = elm_genlist_add(win);
|
||||
priv.treeview = efl_add(ELM_VIEW_LIST_CLASS, efl_main_loop_get(), elm_view_list_genlist_set(efl_added, genlist, ELM_GENLIST_ITEM_TREE, NULL));
|
||||
priv.treeview = efl_add_ref(ELM_VIEW_LIST_CLASS, NULL, elm_view_list_genlist_set(efl_added, genlist, ELM_GENLIST_ITEM_TREE, NULL));
|
||||
elm_view_list_property_connect(priv.treeview, "filename", "elm.text");
|
||||
elm_view_list_property_connect(priv.treeview, "icon", "elm.swallow.icon");
|
||||
elm_view_list_model_set(priv.treeview, priv.treemodel);
|
||||
|
@ -145,7 +144,7 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED)
|
|||
|
||||
//listview
|
||||
genlist = elm_genlist_add(win);
|
||||
priv.fileview = efl_add(ELM_VIEW_LIST_CLASS, efl_main_loop_get(), elm_view_list_genlist_set(efl_added, genlist, ELM_GENLIST_ITEM_NONE, "double_label"));
|
||||
priv.fileview = efl_add_ref(ELM_VIEW_LIST_CLASS, NULL, elm_view_list_genlist_set(efl_added, genlist, ELM_GENLIST_ITEM_NONE, "double_label"));
|
||||
elm_view_list_property_connect(priv.fileview, "filename", "elm.text");
|
||||
elm_view_list_property_connect(priv.fileview, "mime_type", "elm.text.sub");
|
||||
|
||||
|
@ -159,7 +158,7 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED)
|
|||
bxr = elm_box_add(win);
|
||||
_widget_init(bxr);
|
||||
elm_object_part_content_set(vpanes, "right", bxr);
|
||||
priv.formview = efl_add(ELM_VIEW_FORM_CLASS, efl_main_loop_get());
|
||||
priv.formview = efl_add_ref(ELM_VIEW_FORM_CLASS, NULL);
|
||||
|
||||
/*Label widget */
|
||||
elm_view_form_widget_add(priv.formview, "filename", _label_init(win, bxr, "File Name"));
|
||||
|
|
|
@ -54,8 +54,8 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED)
|
|||
evas_object_size_hint_weight_set(genlist, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
|
||||
evas_object_show(genlist);
|
||||
|
||||
priv.filemodel = efl_add(EIO_MODEL_CLASS, efl_main_loop_get(), eio_model_path_set(efl_added, dirname));
|
||||
priv.fileview = efl_add(ELM_VIEW_LIST_CLASS, efl_main_loop_get(), elm_view_list_genlist_set(efl_added, genlist, ELM_GENLIST_ITEM_TREE, "double_label"));
|
||||
priv.filemodel = efl_add_ref(EIO_MODEL_CLASS, NULL, eio_model_path_set(efl_added, dirname));
|
||||
priv.fileview = efl_add_ref(ELM_VIEW_LIST_CLASS, NULL, elm_view_list_genlist_set(efl_added, genlist, ELM_GENLIST_ITEM_TREE, "double_label"));
|
||||
elm_view_list_model_set(priv.fileview, priv.filemodel);
|
||||
evas_object_event_callback_add(win, EVAS_CALLBACK_DEL, _cleanup_cb, &priv);
|
||||
|
||||
|
|
|
@ -111,10 +111,10 @@ elm_main(int argc EINA_UNUSED, char **argv EINA_UNUSED)
|
|||
if (argv[1] != NULL) dirname = argv[1];
|
||||
else dirname = EFL_MODEL_TEST_FILENAME_PATH;
|
||||
|
||||
priv->model = efl_add(EIO_MODEL_CLASS, efl_main_loop_get(), eio_model_path_set(efl_added, dirname));
|
||||
priv->model = efl_add_ref(EIO_MODEL_CLASS, NULL, eio_model_path_set(efl_added, dirname));
|
||||
|
||||
genlist = elm_genlist_add(win);
|
||||
priv->fileview = efl_add(ELM_VIEW_LIST_CLASS, efl_main_loop_get(), elm_view_list_genlist_set(efl_added, genlist, ELM_GENLIST_ITEM_NONE, NULL));
|
||||
priv->fileview = efl_add_ref(ELM_VIEW_LIST_CLASS, NULL, elm_view_list_genlist_set(efl_added, genlist, ELM_GENLIST_ITEM_NONE, NULL));
|
||||
elm_view_list_property_connect(priv->fileview, "filename", "elm.text");
|
||||
elm_view_list_model_set(priv->fileview, priv->model);
|
||||
_widget_init(genlist);
|
||||
|
|
Loading…
Reference in New Issue