diff --git a/src/bin/eolian_mono/eolian/mono/function_definition.hh b/src/bin/eolian_mono/eolian/mono/function_definition.hh index eff586b157..fcc8a88f15 100644 --- a/src/bin/eolian_mono/eolian/mono/function_definition.hh +++ b/src/bin/eolian_mono/eolian/mono/function_definition.hh @@ -428,6 +428,10 @@ struct property_wrapper_definition_generator if (is_interface && (!is_get_public && !is_set_public)) return true; + // Do not generate set-only proeprty + if (property.setter.is_engaged() && !property.getter.is_engaged()) + return true; + // C# interface members are declared automatically as public if (is_interface) { diff --git a/src/tests/efl_mono/Eo.cs b/src/tests/efl_mono/Eo.cs index 7c580480ad..70e9d29c16 100644 --- a/src/tests/efl_mono/Eo.cs +++ b/src/tests/efl_mono/Eo.cs @@ -407,7 +407,7 @@ class TestCsharpProperties var obj = new Dummy.TestObject(); int val = -1984; - obj.SetterOnly = val; + obj.SetSetterOnly(val); Test.AssertEquals(val, obj.GetSetterOnly()); obj.Dispose(); } diff --git a/src/tests/efl_mono/Events.cs b/src/tests/efl_mono/Events.cs index 5f8cc0fa52..c10c37911e 100644 --- a/src/tests/efl_mono/Events.cs +++ b/src/tests/efl_mono/Events.cs @@ -320,7 +320,7 @@ class TestEventWithDeadWrappers EventHandler cb) { var obj = new Dummy.TestObject(); - manager.Emitter = obj; + manager.SetEmitter(obj); obj.EvtWithIntEvent += cb; return new WeakReference(obj);