-
Notifications
You must be signed in to change notification settings - Fork 537
/
Copy pathAbsListView.cs
103 lines (89 loc) · 3.98 KB
/
AbsListView.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
using System;
using System.Collections.Generic;
using Java.Interop;
using Android.Runtime;
namespace Android.Widget {
partial class AbsListView {
static Delegate? cb_getAdapter;
#pragma warning disable 0169
static Delegate GetGetAdapterHandler ()
{
if (cb_getAdapter == null)
cb_getAdapter = JNINativeWrapper.CreateDelegate ((Func<IntPtr, IntPtr, IntPtr>) n_GetAdapter);
return cb_getAdapter;
}
static IntPtr id_getAdapter;
static IntPtr n_GetAdapter (IntPtr jnienv, IntPtr native__this)
{
var __this = global::Java.Lang.Object.GetObject<Android.Widget.AbsListView> (jnienv, native__this, JniHandleOwnership.DoNotTransfer)!;
return JNIEnv.ToLocalJniHandle (__this.Adapter);
}
static Delegate? cb_setAdapter_Landroid_widget_Adapter_;
#pragma warning disable 0169
static Delegate GetSetAdapter_Landroid_widget_ListAdapter_Handler ()
{
if (cb_setAdapter_Landroid_widget_Adapter_ == null)
cb_setAdapter_Landroid_widget_Adapter_ = JNINativeWrapper.CreateDelegate ((Action<IntPtr, IntPtr, IntPtr>) n_SetAdapter_Landroid_widget_ListAdapter_);
return cb_setAdapter_Landroid_widget_Adapter_;
}
static void n_SetAdapter_Landroid_widget_ListAdapter_ (IntPtr jnienv, IntPtr native__this, IntPtr native_adapter)
{
var __this = Java.Lang.Object.GetObject<Android.Widget.AbsListView> (jnienv, native__this, JniHandleOwnership.DoNotTransfer)!;
__this.Adapter = Java.Interop.JavaConvert.FromJniHandle<IListAdapter> (native_adapter, JniHandleOwnership.DoNotTransfer);
}
#pragma warning restore 0169
public abstract override IListAdapter? Adapter {
[Register ("getAdapter", "()Landroid/widget/ListAdapter;", "GetGetAdapterHandler")]
get;
[Register ("setAdapter", "(Landroid/widget/ListAdapter;)V", "GetSetAdapter_Landroid_widget_ListAdapter_Handler")]
set;
}
#if ANDROID_12
static IntPtr id_setAdapter_Landroid_widget_ListAdapter_;
[Obsolete ("Please use the Adapter property setter")]
[Register ("setAdapter", "(Landroid/widget/ListAdapter;)V", "GetSetAdapter_Landroid_widget_ListAdapter_Handler")]
public virtual void SetAdapter (Android.Widget.IListAdapter adapter)
{
if (id_setAdapter_Landroid_widget_ListAdapter_ == IntPtr.Zero)
id_setAdapter_Landroid_widget_ListAdapter_ = JNIEnv.GetMethodID (class_ref, "setAdapter", "(Landroid/widget/ListAdapter;)V");
if (GetType () == ThresholdType)
JNIEnv.CallVoidMethod (Handle, id_setAdapter_Landroid_widget_ListAdapter_, new JValue (adapter));
else
JNIEnv.CallNonvirtualVoidMethod (Handle, ThresholdClass, id_setAdapter_Landroid_widget_ListAdapter_, new JValue (adapter));
}
#endif
}
internal partial class AbsListViewInvoker {
public unsafe override IListAdapter? Adapter {
get {
IntPtr value;
#if JAVA_INTEROP
const string __id = "getAdapter.()Landroid/widget/Adapter;";
value = _members.InstanceMethods.InvokeVirtualObjectMethod (__id, this, null).Handle;
#else // !JAVA_INTEROP
if (id_getAdapter == IntPtr.Zero)
id_getAdapter = JNIEnv.GetMethodID (class_ref, "getAdapter", "()Landroid/widget/Adapter;");
value = JNIEnv.CallObjectMethod (Handle, id_getAdapter);
#endif // !JAVA_INTEROP
return Java.Lang.Object.GetObject<IListAdapter> (value, JniHandleOwnership.TransferLocalRef);
}
set {
#if JAVA_INTEROP
const string __id = "setAdapter.(Landroid/widget/Adapter;)V";
IntPtr native_value = JNIEnv.ToLocalJniHandle (value);
try {
JniArgumentValue* __args = stackalloc JniArgumentValue [1];
__args [0] = new JniArgumentValue (native_value);
_members.InstanceMethods.InvokeVirtualVoidMethod (__id, this, __args);
} finally {
JNIEnv.DeleteLocalRef (native_value);
}
#else // !JAVA_INTEROP
if (id_setAdapter_Landroid_widget_Adapter_ == IntPtr.Zero)
id_setAdapter_Landroid_widget_Adapter_ = JNIEnv.GetMethodID (class_ref, "setAdapter", "(Landroid/widget/ListAdapter;)V");
JNIEnv.CallVoidMethod (Handle, id_setAdapter_Landroid_widget_Adapter_, new JValue (JNIEnv.ToJniHandle (value)));
#endif // !JAVA_INTEROP
}
}
}
}