2 #pragma warning disable CS1591
4 using System.Runtime.InteropServices;
5 using System.Collections.Generic;
7 using System.Threading;
8 using System.ComponentModel;
13 /// <summary>API common to all UI container objects.</summary>
14 /// <remarks>This is a <b>BETA</b> class. It can be modified or removed in the future. Do not use it for product development.</remarks>
15 [Efl.Gfx.IArrangementConcrete.NativeMethods]
16 [Efl.Eo.BindingEntity]
17 public interface IArrangement :
18 Efl.Eo.IWrapper, IDisposable
20 /// <summary>Alignment of the container within its bounds</summary>
21 /// <param name="align_horiz">Horizontal alignment</param>
22 /// <param name="align_vert">Vertical alignment</param>
23 void GetContentAlign(out double align_horiz, out double align_vert);
24 /// <summary>Alignment of the container within its bounds</summary>
25 /// <param name="align_horiz">Horizontal alignment</param>
26 /// <param name="align_vert">Vertical alignment</param>
27 void SetContentAlign(double align_horiz, double align_vert);
28 /// <summary>Padding between items contained in this object.</summary>
29 /// <param name="pad_horiz">Horizontal padding</param>
30 /// <param name="pad_vert">Vertical padding</param>
31 /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
32 void GetContentPadding(out double pad_horiz, out double pad_vert, out bool scalable);
33 /// <summary>Padding between items contained in this object.</summary>
34 /// <param name="pad_horiz">Horizontal padding</param>
35 /// <param name="pad_vert">Vertical padding</param>
36 /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
37 void SetContentPadding(double pad_horiz, double pad_vert, bool scalable);
38 /// <summary>Alignment of the container within its bounds</summary>
39 /// <value>Horizontal alignment</value>
40 (double, double) ContentAlign {
44 /// <summary>Padding between items contained in this object.</summary>
45 /// <value>Horizontal padding</value>
46 (double, double, bool) ContentPadding {
51 /// <summary>API common to all UI container objects.</summary>
52 /// <remarks>This is a <b>BETA</b> class. It can be modified or removed in the future. Do not use it for product development.</remarks>
53 sealed public class IArrangementConcrete :
58 /// <summary>Pointer to the native class description.</summary>
59 public override System.IntPtr NativeClass
63 if (((object)this).GetType() == typeof(IArrangementConcrete))
65 return GetEflClassStatic();
69 return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
74 /// <summary>Subclasses should override this constructor if they are expected to be instantiated from native code.
75 /// Do not call this constructor directly.</summary>
76 /// <param name="ch">Tag struct storing the native handle of the object being constructed.</param>
77 private IArrangementConcrete(ConstructingHandle ch) : base(ch)
81 [System.Runtime.InteropServices.DllImport("libefl.so.1")] internal static extern System.IntPtr
82 efl_gfx_arrangement_interface_get();
83 /// <summary>Initializes a new instance of the <see cref="IArrangement"/> class.
84 /// Internal usage: This is used when interacting with C code and should not be used directly.</summary>
85 /// <param name="wh">The native pointer to be wrapped.</param>
86 private IArrangementConcrete(Efl.Eo.Globals.WrappingHandle wh) : base(wh)
90 /// <summary>Alignment of the container within its bounds</summary>
91 /// <param name="align_horiz">Horizontal alignment</param>
92 /// <param name="align_vert">Vertical alignment</param>
93 public void GetContentAlign(out double align_horiz, out double align_vert) {
94 Efl.Gfx.IArrangementConcrete.NativeMethods.efl_gfx_arrangement_content_align_get_ptr.Value.Delegate(this.NativeHandle,out align_horiz, out align_vert);
95 Eina.Error.RaiseIfUnhandledException();
97 /// <summary>Alignment of the container within its bounds</summary>
98 /// <param name="align_horiz">Horizontal alignment</param>
99 /// <param name="align_vert">Vertical alignment</param>
100 public void SetContentAlign(double align_horiz, double align_vert) {
101 Efl.Gfx.IArrangementConcrete.NativeMethods.efl_gfx_arrangement_content_align_set_ptr.Value.Delegate(this.NativeHandle,align_horiz, align_vert);
102 Eina.Error.RaiseIfUnhandledException();
104 /// <summary>Padding between items contained in this object.</summary>
105 /// <param name="pad_horiz">Horizontal padding</param>
106 /// <param name="pad_vert">Vertical padding</param>
107 /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
108 public void GetContentPadding(out double pad_horiz, out double pad_vert, out bool scalable) {
109 Efl.Gfx.IArrangementConcrete.NativeMethods.efl_gfx_arrangement_content_padding_get_ptr.Value.Delegate(this.NativeHandle,out pad_horiz, out pad_vert, out scalable);
110 Eina.Error.RaiseIfUnhandledException();
112 /// <summary>Padding between items contained in this object.</summary>
113 /// <param name="pad_horiz">Horizontal padding</param>
114 /// <param name="pad_vert">Vertical padding</param>
115 /// <param name="scalable"><c>true</c> if scalable, <c>false</c> otherwise</param>
116 public void SetContentPadding(double pad_horiz, double pad_vert, bool scalable) {
117 Efl.Gfx.IArrangementConcrete.NativeMethods.efl_gfx_arrangement_content_padding_set_ptr.Value.Delegate(this.NativeHandle,pad_horiz, pad_vert, scalable);
118 Eina.Error.RaiseIfUnhandledException();
120 /// <summary>Alignment of the container within its bounds</summary>
121 /// <value>Horizontal alignment</value>
122 public (double, double) ContentAlign {
124 double _out_align_horiz = default(double);
125 double _out_align_vert = default(double);
126 GetContentAlign(out _out_align_horiz,out _out_align_vert);
127 return (_out_align_horiz,_out_align_vert);
129 set { SetContentAlign( value.Item1, value.Item2); }
131 /// <summary>Padding between items contained in this object.</summary>
132 /// <value>Horizontal padding</value>
133 public (double, double, bool) ContentPadding {
135 double _out_pad_horiz = default(double);
136 double _out_pad_vert = default(double);
137 bool _out_scalable = default(bool);
138 GetContentPadding(out _out_pad_horiz,out _out_pad_vert,out _out_scalable);
139 return (_out_pad_horiz,_out_pad_vert,_out_scalable);
141 set { SetContentPadding( value.Item1, value.Item2, value.Item3); }
143 private static IntPtr GetEflClassStatic()
145 return Efl.Gfx.IArrangementConcrete.efl_gfx_arrangement_interface_get();
147 /// <summary>Wrapper for native methods and virtual method delegates.
148 /// For internal use by generated code only.</summary>
149 public new class NativeMethods : Efl.Eo.EoWrapper.NativeMethods
151 private static Efl.Eo.NativeModule Module = new Efl.Eo.NativeModule( efl.Libs.Efl);
152 /// <summary>Gets the list of Eo operations to override.</summary>
153 /// <returns>The list of Eo operations to be overload.</returns>
154 public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
156 var descs = new System.Collections.Generic.List<Efl_Op_Description>();
157 var methods = Efl.Eo.Globals.GetUserMethods(type);
159 if (efl_gfx_arrangement_content_align_get_static_delegate == null)
161 efl_gfx_arrangement_content_align_get_static_delegate = new efl_gfx_arrangement_content_align_get_delegate(content_align_get);
164 if (methods.FirstOrDefault(m => m.Name == "GetContentAlign") != null)
166 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_gfx_arrangement_content_align_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_arrangement_content_align_get_static_delegate) });
169 if (efl_gfx_arrangement_content_align_set_static_delegate == null)
171 efl_gfx_arrangement_content_align_set_static_delegate = new efl_gfx_arrangement_content_align_set_delegate(content_align_set);
174 if (methods.FirstOrDefault(m => m.Name == "SetContentAlign") != null)
176 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_gfx_arrangement_content_align_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_arrangement_content_align_set_static_delegate) });
179 if (efl_gfx_arrangement_content_padding_get_static_delegate == null)
181 efl_gfx_arrangement_content_padding_get_static_delegate = new efl_gfx_arrangement_content_padding_get_delegate(content_padding_get);
184 if (methods.FirstOrDefault(m => m.Name == "GetContentPadding") != null)
186 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_gfx_arrangement_content_padding_get"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_arrangement_content_padding_get_static_delegate) });
189 if (efl_gfx_arrangement_content_padding_set_static_delegate == null)
191 efl_gfx_arrangement_content_padding_set_static_delegate = new efl_gfx_arrangement_content_padding_set_delegate(content_padding_set);
194 if (methods.FirstOrDefault(m => m.Name == "SetContentPadding") != null)
196 descs.Add(new Efl_Op_Description() {api_func = Efl.Eo.FunctionInterop.LoadFunctionPointer(Module.Module, "efl_gfx_arrangement_content_padding_set"), func = Marshal.GetFunctionPointerForDelegate(efl_gfx_arrangement_content_padding_set_static_delegate) });
201 /// <summary>Returns the Eo class for the native methods of this class.</summary>
202 /// <returns>The native class pointer.</returns>
203 public override IntPtr GetEflClass()
205 return Efl.Gfx.IArrangementConcrete.efl_gfx_arrangement_interface_get();
208 #pragma warning disable CA1707, CS1591, SA1300, SA1600
211 private delegate void efl_gfx_arrangement_content_align_get_delegate(System.IntPtr obj, System.IntPtr pd, out double align_horiz, out double align_vert);
214 public delegate void efl_gfx_arrangement_content_align_get_api_delegate(System.IntPtr obj, out double align_horiz, out double align_vert);
216 public static Efl.Eo.FunctionWrapper<efl_gfx_arrangement_content_align_get_api_delegate> efl_gfx_arrangement_content_align_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_arrangement_content_align_get_api_delegate>(Module, "efl_gfx_arrangement_content_align_get");
218 private static void content_align_get(System.IntPtr obj, System.IntPtr pd, out double align_horiz, out double align_vert)
220 Eina.Log.Debug("function efl_gfx_arrangement_content_align_get was called");
221 var ws = Efl.Eo.Globals.GetWrapperSupervisor(obj);
224 align_horiz = default(double); align_vert = default(double);
227 ((IArrangement)ws.Target).GetContentAlign(out align_horiz, out align_vert);
231 Eina.Log.Warning($"Callback error: {e.ToString()}");
232 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
239 efl_gfx_arrangement_content_align_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), out align_horiz, out align_vert);
243 private static efl_gfx_arrangement_content_align_get_delegate efl_gfx_arrangement_content_align_get_static_delegate;
246 private delegate void efl_gfx_arrangement_content_align_set_delegate(System.IntPtr obj, System.IntPtr pd, double align_horiz, double align_vert);
249 public delegate void efl_gfx_arrangement_content_align_set_api_delegate(System.IntPtr obj, double align_horiz, double align_vert);
251 public static Efl.Eo.FunctionWrapper<efl_gfx_arrangement_content_align_set_api_delegate> efl_gfx_arrangement_content_align_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_arrangement_content_align_set_api_delegate>(Module, "efl_gfx_arrangement_content_align_set");
253 private static void content_align_set(System.IntPtr obj, System.IntPtr pd, double align_horiz, double align_vert)
255 Eina.Log.Debug("function efl_gfx_arrangement_content_align_set was called");
256 var ws = Efl.Eo.Globals.GetWrapperSupervisor(obj);
262 ((IArrangement)ws.Target).SetContentAlign(align_horiz, align_vert);
266 Eina.Log.Warning($"Callback error: {e.ToString()}");
267 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
274 efl_gfx_arrangement_content_align_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), align_horiz, align_vert);
278 private static efl_gfx_arrangement_content_align_set_delegate efl_gfx_arrangement_content_align_set_static_delegate;
281 private delegate void efl_gfx_arrangement_content_padding_get_delegate(System.IntPtr obj, System.IntPtr pd, out double pad_horiz, out double pad_vert, [MarshalAs(UnmanagedType.U1)] out bool scalable);
284 public delegate void efl_gfx_arrangement_content_padding_get_api_delegate(System.IntPtr obj, out double pad_horiz, out double pad_vert, [MarshalAs(UnmanagedType.U1)] out bool scalable);
286 public static Efl.Eo.FunctionWrapper<efl_gfx_arrangement_content_padding_get_api_delegate> efl_gfx_arrangement_content_padding_get_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_arrangement_content_padding_get_api_delegate>(Module, "efl_gfx_arrangement_content_padding_get");
288 private static void content_padding_get(System.IntPtr obj, System.IntPtr pd, out double pad_horiz, out double pad_vert, out bool scalable)
290 Eina.Log.Debug("function efl_gfx_arrangement_content_padding_get was called");
291 var ws = Efl.Eo.Globals.GetWrapperSupervisor(obj);
294 pad_horiz = default(double); pad_vert = default(double); scalable = default(bool);
297 ((IArrangement)ws.Target).GetContentPadding(out pad_horiz, out pad_vert, out scalable);
301 Eina.Log.Warning($"Callback error: {e.ToString()}");
302 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
309 efl_gfx_arrangement_content_padding_get_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), out pad_horiz, out pad_vert, out scalable);
313 private static efl_gfx_arrangement_content_padding_get_delegate efl_gfx_arrangement_content_padding_get_static_delegate;
316 private delegate void efl_gfx_arrangement_content_padding_set_delegate(System.IntPtr obj, System.IntPtr pd, double pad_horiz, double pad_vert, [MarshalAs(UnmanagedType.U1)] bool scalable);
319 public delegate void efl_gfx_arrangement_content_padding_set_api_delegate(System.IntPtr obj, double pad_horiz, double pad_vert, [MarshalAs(UnmanagedType.U1)] bool scalable);
321 public static Efl.Eo.FunctionWrapper<efl_gfx_arrangement_content_padding_set_api_delegate> efl_gfx_arrangement_content_padding_set_ptr = new Efl.Eo.FunctionWrapper<efl_gfx_arrangement_content_padding_set_api_delegate>(Module, "efl_gfx_arrangement_content_padding_set");
323 private static void content_padding_set(System.IntPtr obj, System.IntPtr pd, double pad_horiz, double pad_vert, bool scalable)
325 Eina.Log.Debug("function efl_gfx_arrangement_content_padding_set was called");
326 var ws = Efl.Eo.Globals.GetWrapperSupervisor(obj);
332 ((IArrangement)ws.Target).SetContentPadding(pad_horiz, pad_vert, scalable);
336 Eina.Log.Warning($"Callback error: {e.ToString()}");
337 Eina.Error.Set(Eina.Error.UNHANDLED_EXCEPTION);
344 efl_gfx_arrangement_content_padding_set_ptr.Value.Delegate(Efl.Eo.Globals.efl_super(obj, Efl.Eo.Globals.efl_class_get(obj)), pad_horiz, pad_vert, scalable);
348 private static efl_gfx_arrangement_content_padding_set_delegate efl_gfx_arrangement_content_padding_set_static_delegate;
350 #pragma warning restore CA1707, CS1591, SA1300, SA1600
359 #pragma warning disable CS1591
360 public static class Efl_GfxIArrangementConcrete_ExtensionMethods {
364 #pragma warning restore CS1591