summaryrefslogtreecommitdiff
path: root/src/lib/edje
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2017-07-14 16:55:10 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2017-08-04 10:24:03 +0900
commit569ad0bac4590e8a18800741ea2345174c3683f3 (patch)
tree3c5853579dd35760b89bf397ad2e7e2675b4d7db /src/lib/edje
parentc4769ff8989bab2b745017b843f073e5737e91e0 (diff)
evas/edje/elm: Override debug_name in core classes
This is really only a demonstration of what kind of information we can print with efl_debug_name_get(). Hopefully this can help debugging with printf/ERR logs and even help with live debugging inside gdb. This shouldn't be used for other purposes than debugging, as the exact string format is not defined. @feature
Diffstat (limited to 'src/lib/edje')
-rw-r--r--src/lib/edje/edje_object.eo1
-rw-r--r--src/lib/edje/edje_smart.c11
2 files changed, 12 insertions, 0 deletions
diff --git a/src/lib/edje/edje_object.eo b/src/lib/edje/edje_object.eo
index 42314c3555..c294d43f66 100644
--- a/src/lib/edje/edje_object.eo
+++ b/src/lib/edje/edje_object.eo
@@ -1176,6 +1176,7 @@ class Edje.Object (Efl.Canvas.Group.Clipped, Efl.File, Efl.Container, Efl.Part,
1176 Efl.Gfx.size { set; } 1176 Efl.Gfx.size { set; }
1177 Efl.Object.constructor; 1177 Efl.Object.constructor;
1178 Efl.Object.destructor; 1178 Efl.Object.destructor;
1179 Efl.Object.debug_name_override { get; }
1179 Efl.Canvas.Object.no_render { set; } 1180 Efl.Canvas.Object.no_render { set; }
1180 Efl.Canvas.Object.paragraph_direction { set; } 1181 Efl.Canvas.Object.paragraph_direction { set; }
1181 Efl.Canvas.Group.group_calculate; 1182 Efl.Canvas.Group.group_calculate;
diff --git a/src/lib/edje/edje_smart.c b/src/lib/edje/edje_smart.c
index 8c6800fded..4f105ff595 100644
--- a/src/lib/edje/edje_smart.c
+++ b/src/lib/edje/edje_smart.c
@@ -60,6 +60,17 @@ _edje_object_efl_object_destructor(Eo *obj, Edje *class_data)
60 efl_data_unref(obj, class_data->base); 60 efl_data_unref(obj, class_data->base);
61} 61}
62 62
63EOLIAN static const char *
64_edje_object_efl_object_debug_name_override_get(Eo *obj, Edje *ed)
65{
66 const char *base;
67
68 base = efl_debug_name_get(efl_super(obj, MY_CLASS));
69 return eina_slstr_printf("%s:file='%s':group='%s'", base,
70 ed->file ? eina_file_filename_get(ed->file->f) : NULL,
71 ed->group);
72}
73
63EOLIAN static void 74EOLIAN static void
64_edje_object_efl_object_dbg_info_get(Eo *eo_obj, Edje *_pd EINA_UNUSED, Efl_Dbg_Info *root) EINA_ARG_NONNULL(3) 75_edje_object_efl_object_dbg_info_get(Eo *eo_obj, Edje *_pd EINA_UNUSED, Efl_Dbg_Info *root) EINA_ARG_NONNULL(3)
65{ 76{