1 #pragma warning disable CS1591
3 using System.Runtime.InteropServices;
4 using System.Collections.Generic;
6 using System.ComponentModel;
7 namespace Efl { namespace Page {
8 /// <summary>Icon type page indicator
9 /// This class offers icon type indicator for <see cref="Efl.Ui.Pager"/>. This type of page indicator creates the same number of icons as pages and arrange them in a linear order. An icon has two states: default and selected.</summary>
10 [IndicatorIconNativeInherit]
11 public class IndicatorIcon : Efl.Page.Indicator, Efl.Eo.IWrapper
13 ///<summary>Pointer to the native class description.</summary>
14 public override System.IntPtr NativeClass {
16 if (((object)this).GetType() == typeof (IndicatorIcon))
17 return Efl.Page.IndicatorIconNativeInherit.GetEflClassStatic();
19 return Efl.Eo.ClassRegister.klassFromType[((object)this).GetType()];
22 [System.Runtime.InteropServices.DllImport(efl.Libs.Elementary)] internal static extern System.IntPtr
23 efl_page_indicator_icon_class_get();
24 ///<summary>Creates a new instance.</summary>
25 ///<param name="parent">Parent instance.</param>
26 public IndicatorIcon(Efl.Object parent= null
28 base(efl_page_indicator_icon_class_get(), typeof(IndicatorIcon), parent)
30 FinishInstantiation();
32 ///<summary>Internal usage: Constructs an instance from a native pointer. This is used when interacting with C code and should not be used directly.</summary>
33 protected IndicatorIcon(System.IntPtr raw) : base(raw)
35 RegisterEventProxies();
37 ///<summary>Internal usage: Constructor to forward the wrapper initialization to the root class that interfaces with native code. Should not be used directly.</summary>
38 protected IndicatorIcon(IntPtr base_klass, System.Type managed_type, Efl.Object parent) : base(base_klass, managed_type, parent) {}
39 ///<summary>Verifies if the given object is equal to this one.</summary>
40 public override bool Equals(object obj)
42 var other = obj as Efl.Object;
45 return this.NativeHandle == other.NativeHandle;
47 ///<summary>Gets the hash code for this object based on the native pointer it points to.</summary>
48 public override int GetHashCode()
50 return this.NativeHandle.ToInt32();
52 ///<summary>Turns the native pointer into a string representation.</summary>
53 public override String ToString()
55 return $"{this.GetType().Name}@[{this.NativeHandle.ToInt32():x}]";
57 ///<summary>Register the Eo event wrappers making the bridge to C# events. Internal usage only.</summary>
58 protected override void RegisterEventProxies()
60 base.RegisterEventProxies();
62 private static IntPtr GetEflClassStatic()
64 return Efl.Page.IndicatorIcon.efl_page_indicator_icon_class_get();
67 public class IndicatorIconNativeInherit : Efl.Page.IndicatorNativeInherit{
68 public new static Efl.Eo.NativeModule _Module = new Efl.Eo.NativeModule(efl.Libs.Elementary);
69 public override System.Collections.Generic.List<Efl_Op_Description> GetEoOps(System.Type type)
71 var descs = new System.Collections.Generic.List<Efl_Op_Description>();
72 var methods = Efl.Eo.Globals.GetUserMethods(type);
73 descs.AddRange(base.GetEoOps(type));
76 public override IntPtr GetEflClass()
78 return Efl.Page.IndicatorIcon.efl_page_indicator_icon_class_get();
80 public static new IntPtr GetEflClassStatic()
82 return Efl.Page.IndicatorIcon.efl_page_indicator_icon_class_get();