Skip to main content

engage/generated/app/
unititemmenuitem.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "app-unititemmenuitem-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        app::{
10            basicitemmenuitem::{BasicItemMenuItem, IBasicItemMenuItem},
11            basicmenuitem::{BasicMenuItem, IBasicMenuItem},
12        },
13        system::object::{IObject, Object},
14    };
15
16    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/app/unititemmenuitem/UnitItemMenuItem.md"))]
17    #[::unity::class(namespace = "App", name = "UnitItemMenuItem")]
18    #[parent(crate::app::basicitemmenuitem::BasicItemMenuItem)]
19    pub struct UnitItemMenuItem {
20        #[offset(100)]
21        #[rename(name = "m_OwnerItemIndex")]
22        pub m_owner_item_index: i32,
23        #[offset(104)]
24        #[rename(name = "m_SelectableBlank")]
25        pub m_selectable_blank: bool,
26        #[offset(112)]
27        #[rename(name = "m_SelectEventHandler")]
28        pub m_select_event_handler: crate::app::unititemmenu::UnitItemMenu_SelectEventHandler,
29        #[offset(120)]
30        #[rename(name = "m_DecideEventHandler")]
31        pub m_decide_event_handler: crate::app::unititemmenu::UnitItemMenu_DecideEventHandler,
32        #[offset(128)]
33        #[rename(name = "m_RequestCloseEventHandler")]
34        pub m_request_close_event_handler: crate::app::unititemmenu::UnitItemMenu_RequestCloseEventHandler,
35    }
36}
37
38#[cfg(feature = "app-unititemmenuitem-types")]
39pub use __types::*;
40
41#[cfg(feature = "app-unititemmenuitem")]
42pub trait IUnitItemMenuItemMethods: IUnitItemMenuItem {
43    #[doc = "`.ctor(i32, bool, crate::app::unititemmenu::UnitItemMenu_SelectEventHandler, crate::app::unititemmenu::UnitItemMenu_DecideEventHandler, crate::app::unititemmenu::UnitItemMenu_RequestCloseEventHandler)` overload"]
44    fn ctor(
45        self,
46        i: impl ::core::convert::Into<i32>,
47        selectable_blank: impl ::core::convert::Into<bool>,
48        select_event_handler: impl ::core::convert::Into<crate::app::unititemmenu::UnitItemMenu_SelectEventHandler>,
49        decide_event_handler: impl ::core::convert::Into<crate::app::unititemmenu::UnitItemMenu_DecideEventHandler>,
50        request_close_event_handler: impl ::core::convert::Into<crate::app::unititemmenu::UnitItemMenu_RequestCloseEventHandler>,
51    ) -> () {
52        unsafe {
53            let __receiver = <UnitItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
54            ::unity::il2cpp_call!((::unity::module_base()+0x1fb3270usize)as*mut u8,();
55(UnitItemMenuItem)__receiver,(i32)::core::convert::Into::into(i),(bool)::core::convert::Into::into(selectable_blank),(crate::app::unititemmenu::UnitItemMenu_SelectEventHandler)::core::convert::Into::into(select_event_handler),(crate::app::unititemmenu::UnitItemMenu_DecideEventHandler)::core::convert::Into::into(decide_event_handler),(crate::app::unititemmenu::UnitItemMenu_RequestCloseEventHandler)::core::convert::Into::into(request_close_event_handler))
56        }
57    }
58    #[doc = "`BuildAttribute()` overload"]
59    fn build_attribute(self) -> crate::app::basicmenuitem::BasicMenuItem_Attribute {
60        unsafe {
61            let __receiver = <UnitItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
62            {
63                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
64                let __vi = *__vt.get(8usize).unwrap_or_else(|| {
65                    panic!(
66                        "unity: virtual slot {}
67 out of range (vtable len {}
68) on the runtime class behind {}
69 (method `{}
70`)",
71                        8usize,
72                        __vt.len(),
73                        <UnitItemMenuItem as ::unity::ClassIdentity>::NAME,
74                        "BuildAttribute",
75                    )
76                });
77                let __inner: extern "C" fn(UnitItemMenuItem, ::unity::OptionalMethod) -> crate::app::basicmenuitem::BasicMenuItem_Attribute =
78                    ::core::mem::transmute(__vi.method_ptr);
79                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
80                __inner(__receiver, __mi)
81            }
82        }
83    }
84    #[doc = "`GetUnitItem()` overload"]
85    fn get_unit_item(self) -> crate::app::unititem::UnitItem {
86        unsafe {
87            let __receiver = <UnitItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
88            {
89                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
90                let __vi = *__vt.get(27usize).unwrap_or_else(|| {
91                    panic!(
92                        "unity: virtual slot {}
93 out of range (vtable len {}
94) on the runtime class behind {}
95 (method `{}
96`)",
97                        27usize,
98                        __vt.len(),
99                        <UnitItemMenuItem as ::unity::ClassIdentity>::NAME,
100                        "GetUnitItem",
101                    )
102                });
103                let __inner: extern "C" fn(UnitItemMenuItem, ::unity::OptionalMethod) -> crate::app::unititem::UnitItem =
104                    ::core::mem::transmute(__vi.method_ptr);
105                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
106                __inner(__receiver, __mi)
107            }
108        }
109    }
110    #[doc = "`GetUnit()` overload"]
111    fn get_unit(self) -> crate::app::unit::Unit {
112        unsafe {
113            let __receiver = <UnitItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
114            {
115                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
116                let __vi = *__vt.get(28usize).unwrap_or_else(|| {
117                    panic!(
118                        "unity: virtual slot {}
119 out of range (vtable len {}
120) on the runtime class behind {}
121 (method `{}
122`)",
123                        28usize,
124                        __vt.len(),
125                        <UnitItemMenuItem as ::unity::ClassIdentity>::NAME,
126                        "GetUnit",
127                    )
128                });
129                let __inner: extern "C" fn(UnitItemMenuItem, ::unity::OptionalMethod) -> crate::app::unit::Unit =
130                    ::core::mem::transmute(__vi.method_ptr);
131                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
132                __inner(__receiver, __mi)
133            }
134        }
135    }
136    #[doc = "`GetRecieverUnit()` overload"]
137    fn get_reciever_unit(self) -> crate::app::unit::Unit {
138        unsafe {
139            let __receiver = <UnitItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
140            {
141                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
142                let __vi = *__vt.get(29usize).unwrap_or_else(|| {
143                    panic!(
144                        "unity: virtual slot {}
145 out of range (vtable len {}
146) on the runtime class behind {}
147 (method `{}
148`)",
149                        29usize,
150                        __vt.len(),
151                        <UnitItemMenuItem as ::unity::ClassIdentity>::NAME,
152                        "GetRecieverUnit",
153                    )
154                });
155                let __inner: extern "C" fn(UnitItemMenuItem, ::unity::OptionalMethod) -> crate::app::unit::Unit =
156                    ::core::mem::transmute(__vi.method_ptr);
157                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
158                __inner(__receiver, __mi)
159            }
160        }
161    }
162    #[doc = "`IsVisibleItemIconOnBlank()` overload"]
163    fn is_visible_item_icon_on_blank(self) -> bool {
164        unsafe {
165            let __receiver = <UnitItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
166            {
167                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
168                let __vi = *__vt.get(31usize).unwrap_or_else(|| {
169                    panic!(
170                        "unity: virtual slot {}
171 out of range (vtable len {}
172) on the runtime class behind {}
173 (method `{}
174`)",
175                        31usize,
176                        __vt.len(),
177                        <UnitItemMenuItem as ::unity::ClassIdentity>::NAME,
178                        "IsVisibleItemIconOnBlank",
179                    )
180                });
181                let __inner: extern "C" fn(UnitItemMenuItem, ::unity::OptionalMethod) -> bool = ::core::mem::transmute(__vi.method_ptr);
182                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
183                __inner(__receiver, __mi)
184            }
185        }
186    }
187    #[doc = "`OnSelect()` overload"]
188    fn on_select(self) -> () {
189        unsafe {
190            let __receiver = <UnitItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
191            {
192                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
193                let __vi = *__vt.get(12usize).unwrap_or_else(|| {
194                    panic!(
195                        "unity: virtual slot {}
196 out of range (vtable len {}
197) on the runtime class behind {}
198 (method `{}
199`)",
200                        12usize,
201                        __vt.len(),
202                        <UnitItemMenuItem as ::unity::ClassIdentity>::NAME,
203                        "OnSelect",
204                    )
205                });
206                let __inner: extern "C" fn(UnitItemMenuItem, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__vi.method_ptr);
207                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
208                __inner(__receiver, __mi)
209            }
210        }
211    }
212    #[doc = "`ACall()` overload"]
213    fn a_call(self) -> crate::app::basicmenu::BasicMenu_Result {
214        unsafe {
215            let __receiver = <UnitItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
216            {
217                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
218                let __vi = *__vt.get(18usize).unwrap_or_else(|| {
219                    panic!(
220                        "unity: virtual slot {}
221 out of range (vtable len {}
222) on the runtime class behind {}
223 (method `{}
224`)",
225                        18usize,
226                        __vt.len(),
227                        <UnitItemMenuItem as ::unity::ClassIdentity>::NAME,
228                        "ACall",
229                    )
230                });
231                let __inner: extern "C" fn(UnitItemMenuItem, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
232                    ::core::mem::transmute(__vi.method_ptr);
233                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
234                __inner(__receiver, __mi)
235            }
236        }
237    }
238    #[doc = "`BCall()` overload"]
239    fn b_call(self) -> crate::app::basicmenu::BasicMenu_Result {
240        unsafe {
241            let __receiver = <UnitItemMenuItem as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
242            {
243                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
244                let __vi = *__vt.get(19usize).unwrap_or_else(|| {
245                    panic!(
246                        "unity: virtual slot {}
247 out of range (vtable len {}
248) on the runtime class behind {}
249 (method `{}
250`)",
251                        19usize,
252                        __vt.len(),
253                        <UnitItemMenuItem as ::unity::ClassIdentity>::NAME,
254                        "BCall",
255                    )
256                });
257                let __inner: extern "C" fn(UnitItemMenuItem, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
258                    ::core::mem::transmute(__vi.method_ptr);
259                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
260                __inner(__receiver, __mi)
261            }
262        }
263    }
264}
265
266#[cfg(feature = "app-unititemmenuitem")]
267impl<__T: IUnitItemMenuItem> IUnitItemMenuItemMethods for __T {}
268
269#[cfg(feature = "app-unititemmenuitem")]
270impl UnitItemMenuItem {
271    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
272        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
273    }
274
275    pub fn build_attribute_method_info() -> &'static ::unity::il2cpp::MethodInfo {
276        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
277    }
278
279    pub fn get_unit_item_method_info() -> &'static ::unity::il2cpp::MethodInfo {
280        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
281    }
282
283    pub fn get_unit_method_info() -> &'static ::unity::il2cpp::MethodInfo {
284        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
285    }
286
287    pub fn get_reciever_unit_method_info() -> &'static ::unity::il2cpp::MethodInfo {
288        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
289    }
290
291    pub fn is_visible_item_icon_on_blank_method_info() -> &'static ::unity::il2cpp::MethodInfo {
292        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
293    }
294
295    pub fn on_select_method_info() -> &'static ::unity::il2cpp::MethodInfo {
296        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
297    }
298
299    pub fn a_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
300        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[7]
301    }
302
303    pub fn b_call_method_info() -> &'static ::unity::il2cpp::MethodInfo {
304        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[8]
305    }
306}
307
308#[cfg(feature = "app-unititemmenuitem")]
309impl UnitItemMenuItem {
310    #[doc = "Direct (non-virtual) call to `UnitItemMenuItem`'s own `BuildAttribute`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
311    pub unsafe fn build_attribute(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenuitem::BasicMenuItem_Attribute {
312        let __mi = Self::build_attribute_method_info();
313        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenuitem::BasicMenuItem_Attribute =
314            ::core::mem::transmute(__mi.method_ptr);
315        __inner(this.into(), ::core::option::Option::None)
316    }
317
318    #[doc = "Direct (non-virtual) call to `UnitItemMenuItem`'s own `GetUnitItem`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
319    pub unsafe fn get_unit_item(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::unititem::UnitItem {
320        let __mi = Self::get_unit_item_method_info();
321        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::unititem::UnitItem =
322            ::core::mem::transmute(__mi.method_ptr);
323        __inner(this.into(), ::core::option::Option::None)
324    }
325
326    #[doc = "Direct (non-virtual) call to `UnitItemMenuItem`'s own `GetUnit`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
327    pub unsafe fn get_unit(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::unit::Unit {
328        let __mi = Self::get_unit_method_info();
329        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::unit::Unit = ::core::mem::transmute(__mi.method_ptr);
330        __inner(this.into(), ::core::option::Option::None)
331    }
332
333    #[doc = "Direct (non-virtual) call to `UnitItemMenuItem`'s own `GetRecieverUnit`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
334    pub unsafe fn get_reciever_unit(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::unit::Unit {
335        let __mi = Self::get_reciever_unit_method_info();
336        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::unit::Unit = ::core::mem::transmute(__mi.method_ptr);
337        __inner(this.into(), ::core::option::Option::None)
338    }
339
340    #[doc = "Direct (non-virtual) call to `UnitItemMenuItem`'s own `IsVisibleItemIconOnBlank`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
341    pub unsafe fn is_visible_item_icon_on_blank(this: impl ::core::convert::Into<::unity::IlInstance>) -> bool {
342        let __mi = Self::is_visible_item_icon_on_blank_method_info();
343        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> bool = ::core::mem::transmute(__mi.method_ptr);
344        __inner(this.into(), ::core::option::Option::None)
345    }
346
347    #[doc = "Direct (non-virtual) call to `UnitItemMenuItem`'s own `OnSelect`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
348    pub unsafe fn on_select(this: impl ::core::convert::Into<::unity::IlInstance>) -> () {
349        let __mi = Self::on_select_method_info();
350        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> () = ::core::mem::transmute(__mi.method_ptr);
351        __inner(this.into(), ::core::option::Option::None)
352    }
353
354    #[doc = "Direct (non-virtual) call to `UnitItemMenuItem`'s own `ACall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
355    pub unsafe fn a_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
356        let __mi = Self::a_call_method_info();
357        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
358            ::core::mem::transmute(__mi.method_ptr);
359        __inner(this.into(), ::core::option::Option::None)
360    }
361
362    #[doc = "Direct (non-virtual) call to `UnitItemMenuItem`'s own `BCall`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
363    pub unsafe fn b_call(this: impl ::core::convert::Into<::unity::IlInstance>) -> crate::app::basicmenu::BasicMenu_Result {
364        let __mi = Self::b_call_method_info();
365        let __inner: extern "C" fn(::unity::IlInstance, ::unity::OptionalMethod) -> crate::app::basicmenu::BasicMenu_Result =
366            ::core::mem::transmute(__mi.method_ptr);
367        __inner(this.into(), ::core::option::Option::None)
368    }
369}
370
371#[cfg(feature = "app-unititemmenuitem")]
372impl UnitItemMenuItem {
373    #[doc = "`.ctor(i32, bool, crate::app::unititemmenu::UnitItemMenu_SelectEventHandler, crate::app::unititemmenu::UnitItemMenu_DecideEventHandler, crate::app::unititemmenu::UnitItemMenu_RequestCloseEventHandler)` — overload selector"]
374    pub fn new(
375        i: i32,
376        selectable_blank: bool,
377        select_event_handler: crate::app::unititemmenu::UnitItemMenu_SelectEventHandler,
378        decide_event_handler: crate::app::unititemmenu::UnitItemMenu_DecideEventHandler,
379        request_close_event_handler: crate::app::unititemmenu::UnitItemMenu_RequestCloseEventHandler,
380    ) -> Self {
381        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
382            panic!(
383                "{}
384::{}
385 failed to instantiate",
386                ::core::stringify!(UnitItemMenuItem),
387                ::core::stringify!(new),
388            )
389        });
390        <Self as IUnitItemMenuItemMethods>::ctor(
391            this,
392            i,
393            selectable_blank,
394            select_event_handler,
395            decide_event_handler,
396            request_close_event_handler,
397        );
398        this
399    }
400}
401
402#[cfg(feature = "app-unititemmenuitem")]
403#[doc(hidden)]
404pub mod prelude {
405    pub use super::{IUnitItemMenuItem, IUnitItemMenuItemMethods, UnitItemMenuItem};
406    #[cfg(feature = "app-basicitemmenuitem")]
407    pub use crate::app::basicitemmenuitem::IBasicItemMenuItemMethods;
408    #[cfg(feature = "app-basicmenuitem")]
409    pub use crate::app::basicmenuitem::IBasicMenuItemMethods;
410    #[cfg(feature = "system-object")]
411    pub use crate::system::object::IObjectMethods;
412    pub use crate::{
413        app::{basicitemmenuitem::IBasicItemMenuItem, basicmenuitem::IBasicMenuItem},
414        system::object::IObject,
415    };
416}