summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Hollerbach <mail@marcel-hollerbach.de>2019-01-24 12:47:38 +0100
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2019-01-26 11:42:04 +0100
commit68d1579faad59d2f062b98ae4b4cdbbd1dd4cabf (patch)
treea026b6900f6f676dfd611e911329cf971a3700cc
parentc440ee442d98cffe8d5f613990bf7497be7ed726 (diff)
downloadefl-68d1579faad59d2f062b98ae4b4cdbbd1dd4cabf.tar.gz
efl: introduce efl_ui_direction_readonly
the readonly mixin implement the efl_ui_direction interface and prints a error in case it is written. ref T5719 Reviewed-by: Cedric BAIL <cedric.bail@free.fr> Reviewed-by: Xavi Artigas <xavierartigas@yahoo.es> Differential Revision: https://phab.enlightenment.org/D7755
-rw-r--r--src/Makefile_Efl.am2
-rw-r--r--src/lib/edje/efl_canvas_layout_part_box.eo2
-rw-r--r--src/lib/edje/efl_canvas_layout_part_invalid.eo2
-rw-r--r--src/lib/efl/Efl.h1
-rw-r--r--src/lib/efl/interfaces/efl_ui_direction_readonly.c17
-rw-r--r--src/lib/efl/interfaces/efl_ui_direction_readonly.eo6
-rw-r--r--src/lib/efl/interfaces/meson.build2
-rw-r--r--src/lib/elementary/efl_ui_layout_part_box.eo2
8 files changed, 31 insertions, 3 deletions
diff --git a/src/Makefile_Efl.am b/src/Makefile_Efl.am
index 88284dcde0..2d65f20a46 100644
--- a/src/Makefile_Efl.am
+++ b/src/Makefile_Efl.am
@@ -57,6 +57,7 @@ efl_eolian_files = \
lib/efl/interfaces/efl_pack_table.eo \
lib/efl/interfaces/efl_ui_i18n.eo \
lib/efl/interfaces/efl_ui_direction.eo \
+ lib/efl/interfaces/efl_ui_direction_readonly.eo \
lib/efl/interfaces/efl_ui_drag.eo \
lib/efl/interfaces/efl_ui_range_display.eo \
lib/efl/interfaces/efl_ui_range_interactive.eo \
@@ -132,6 +133,7 @@ lib/efl/interfaces/efl_file.c \
lib/efl/interfaces/efl_ui_format.c \
lib/efl/interfaces/efl_gfx_color.c \
lib/efl/interfaces/efl_text_markup_util.c \
+lib/efl/interfaces/efl_ui_direction_readonly.c \
$(NULL)
lib_efl_libefl_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl -I$(top_srcdir)/src/lib/efl @EFL_CFLAGS@ -DEFL_GFX_FILTER_BETA
diff --git a/src/lib/edje/efl_canvas_layout_part_box.eo b/src/lib/edje/efl_canvas_layout_part_box.eo
index 0173bab7db..4db959292e 100644
--- a/src/lib/edje/efl_canvas_layout_part_box.eo
+++ b/src/lib/edje/efl_canvas_layout_part_box.eo
@@ -1,5 +1,5 @@
class Efl.Canvas.Layout_Part_Box extends Efl.Canvas.Layout_Part implements Efl.Pack_Linear,
- Efl.Ui.Direction
+ Efl.Ui.Direction_Readonly
{
[[Represents a Box created as part of a layout.
diff --git a/src/lib/edje/efl_canvas_layout_part_invalid.eo b/src/lib/edje/efl_canvas_layout_part_invalid.eo
index ceb3177031..6c8f3fee5d 100644
--- a/src/lib/edje/efl_canvas_layout_part_invalid.eo
+++ b/src/lib/edje/efl_canvas_layout_part_invalid.eo
@@ -1,5 +1,5 @@
class Efl.Canvas.Layout_Part_Invalid extends Efl.Canvas.Layout_Part implements Efl.Content,
- Efl.Pack_Linear, Efl.Ui.Direction,
+ Efl.Pack_Linear, Efl.Ui.Direction_Readonly,
Efl.Pack_Table, Efl.Text,
Efl.Text_Markup
{
diff --git a/src/lib/efl/Efl.h b/src/lib/efl/Efl.h
index 1066d00449..46bd09b4ee 100644
--- a/src/lib/efl/Efl.h
+++ b/src/lib/efl/Efl.h
@@ -96,6 +96,7 @@ typedef Efl_Gfx_Path_Command_Type Efl_Gfx_Path_Command;
#include "interfaces/efl_orientation.eo.h"
#include "interfaces/efl_ui_i18n.eo.h"
#include "interfaces/efl_ui_direction.eo.h"
+#include "interfaces/efl_ui_direction_readonly.eo.h"
#include "interfaces/efl_ui_drag.eo.h"
#include "interfaces/efl_ui_range_display.eo.h"
#include "interfaces/efl_ui_range_interactive.eo.h"
diff --git a/src/lib/efl/interfaces/efl_ui_direction_readonly.c b/src/lib/efl/interfaces/efl_ui_direction_readonly.c
new file mode 100644
index 0000000000..7126a8a50d
--- /dev/null
+++ b/src/lib/efl/interfaces/efl_ui_direction_readonly.c
@@ -0,0 +1,17 @@
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <Efl.h>
+
+typedef struct {
+
+} Efl_Ui_Direction_Readonly_Data;
+
+EOLIAN static void
+_efl_ui_direction_readonly_efl_ui_direction_direction_set(Eo *obj EINA_UNUSED, Efl_Ui_Direction_Readonly_Data *pd EINA_UNUSED, Efl_Ui_Dir dir EINA_UNUSED)
+{
+ EINA_LOG_ERR("This object does not allow setting of a direction");
+}
+
+#include "efl_ui_direction_readonly.eo.c"
diff --git a/src/lib/efl/interfaces/efl_ui_direction_readonly.eo b/src/lib/efl/interfaces/efl_ui_direction_readonly.eo
new file mode 100644
index 0000000000..900b990c49
--- /dev/null
+++ b/src/lib/efl/interfaces/efl_ui_direction_readonly.eo
@@ -0,0 +1,6 @@
+mixin Efl.Ui.Direction_Readonly extends Efl.Ui.Direction
+{
+ implements {
+ Efl.Ui.Direction.direction { set; [[This will always print and error that this is a readonly object]]}
+ }
+}
diff --git a/src/lib/efl/interfaces/meson.build b/src/lib/efl/interfaces/meson.build
index b28ed0ff84..871375776a 100644
--- a/src/lib/efl/interfaces/meson.build
+++ b/src/lib/efl/interfaces/meson.build
@@ -83,6 +83,7 @@ pub_eo_files = [
'efl_pack_table.eo',
'efl_ui_i18n.eo',
'efl_ui_direction.eo',
+ 'efl_ui_direction_readonly.eo',
'efl_ui_drag.eo',
'efl_ui_range_display.eo',
'efl_ui_range_interactive.eo',
@@ -172,6 +173,7 @@ efl_src += files([
'efl_observer.c',
'efl_file.c',
'efl_ui_format.c',
+ 'efl_ui_direction_readonly.c',
'efl_text_markup_util.c',
])
diff --git a/src/lib/elementary/efl_ui_layout_part_box.eo b/src/lib/elementary/efl_ui_layout_part_box.eo
index 59ecc649ea..799fc7c752 100644
--- a/src/lib/elementary/efl_ui_layout_part_box.eo
+++ b/src/lib/elementary/efl_ui_layout_part_box.eo
@@ -1,5 +1,5 @@
class Efl.Ui.Layout_Part_Box extends Efl.Object implements Efl.Pack_Linear,
- Efl.Ui.Direction
+ Efl.Ui.Direction_Readonly
{
[[Represents a Box created as part of a layout.