Skip to main content

engage/generated/unity_engine/ui/
button.rs

1// @generated by il2cpp-bindgen — do not edit by hand.
2
3#[cfg(feature = "unity_engine-ui-button-types")]
4mod __types {
5    #[allow(unused_imports)] use ::unity::prelude::*;
6
7    use super::*;
8    use crate::{
9        system::object::{IObject, Object},
10        unity_engine::{
11            behaviour::{Behaviour, IBehaviour},
12            component::{Component, IComponent},
13            event_systems::uibehaviour::{IUIBehaviour, UIBehaviour},
14            events::{
15                unityevent::{IUnityEvent, UnityEvent},
16                unityeventbase::{IUnityEventBase, UnityEventBase},
17            },
18            monobehaviour::{IMonoBehaviour, MonoBehaviour},
19            object_2::{IObject_2, Object_2},
20            ui::selectable::{ISelectable, Selectable},
21        },
22    };
23
24    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/ui/button/Button_ButtonClickedEvent.md"))]
25    #[::unity::class(namespace = "UnityEngine.UI", name = "Button.ButtonClickedEvent")]
26    #[parent(crate::unity_engine::events::unityevent::UnityEvent)]
27    pub struct Button_ButtonClickedEvent {}
28
29    #[doc=include_str!(concat!(env!("CARGO_MANIFEST_DIR"),"/","docs/unity_engine/ui/button/Button.md"))]
30    #[::unity::class(namespace = "UnityEngine.UI", name = "Button")]
31    #[parent(crate::unity_engine::ui::selectable::Selectable)]
32    pub struct Button {
33        #[offset(248)]
34        #[rename(name = "m_OnClick")]
35        pub m_on_click: crate::unity_engine::ui::button::Button_ButtonClickedEvent,
36    }
37}
38
39#[cfg(feature = "unity_engine-ui-button-types")]
40pub use __types::*;
41
42#[cfg(feature = "unity_engine-ui-button")]
43pub trait IButton_ButtonClickedEventMethods: IButton_ButtonClickedEvent {
44    #[doc = "`.ctor()` overload"]
45    fn ctor(self) -> () {
46        unsafe {
47            let __receiver =
48                <Button_ButtonClickedEvent as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
49            ::unity::il2cpp_call!((::unity::module_base()+0x3c0be40usize)as*mut u8,();
50(Button_ButtonClickedEvent)__receiver)
51        }
52    }
53}
54
55#[cfg(feature = "unity_engine-ui-button")]
56impl<__T: IButton_ButtonClickedEvent> IButton_ButtonClickedEventMethods for __T {}
57
58#[cfg(feature = "unity_engine-ui-button")]
59impl Button_ButtonClickedEvent {
60    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
61        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
62    }
63}
64
65#[cfg(feature = "unity_engine-ui-button")]
66impl Button_ButtonClickedEvent {
67    #[doc = "`.ctor()` — no args"]
68    pub fn new() -> Self {
69        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
70            panic!(
71                "{}
72::{}
73 failed to instantiate",
74                ::core::stringify!(Button_ButtonClickedEvent),
75                ::core::stringify!(new),
76            )
77        });
78        <Self as IButton_ButtonClickedEventMethods>::ctor(this);
79        this
80    }
81}
82
83#[cfg(feature = "unity_engine-ui-button")]
84pub trait IButtonMethods: IButton {
85    #[doc = "`.ctor()` overload"]
86    fn ctor(self) -> () {
87        unsafe {
88            let __receiver = <Button as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
89            ::unity::il2cpp_call!((::unity::module_base()+0x317c240usize)as*mut u8,();
90(Button)__receiver)
91        }
92    }
93    #[doc = "`get_onClick()` overload"]
94    fn get_on_click(self) -> crate::unity_engine::ui::button::Button_ButtonClickedEvent {
95        unsafe {
96            let __receiver = <Button as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
97            ::unity::il2cpp_call!((::unity::module_base()+0x317c2f0usize)as*mut u8,crate::unity_engine::ui::button::Button_ButtonClickedEvent;
98(Button)__receiver)
99        }
100    }
101    #[doc = "`set_onClick(crate::unity_engine::ui::button::Button_ButtonClickedEvent)` overload"]
102    fn set_on_click(self, value: impl ::core::convert::Into<crate::unity_engine::ui::button::Button_ButtonClickedEvent>) -> () {
103        unsafe {
104            let __receiver = <Button as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
105            ::unity::il2cpp_call!((::unity::module_base()+0x317c300usize)as*mut u8,();
106(Button)__receiver,(crate::unity_engine::ui::button::Button_ButtonClickedEvent)::core::convert::Into::into(value))
107        }
108    }
109    #[doc = "`Press()` overload"]
110    fn press(self) -> () {
111        unsafe {
112            let __receiver = <Button as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
113            ::unity::il2cpp_call!((::unity::module_base()+0x317c310usize)as*mut u8,();
114(Button)__receiver)
115        }
116    }
117    #[doc = "`OnPointerClick(crate::unity_engine::event_systems::pointereventdata::PointerEventData)` overload"]
118    fn on_pointer_click(self, event_data: impl ::core::convert::Into<crate::unity_engine::event_systems::pointereventdata::PointerEventData>) -> () {
119        unsafe {
120            let __receiver = <Button as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
121            {
122                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
123                let __vi = *__vt.get(41usize).unwrap_or_else(|| {
124                    panic!(
125                        "unity: virtual slot {}
126 out of range (vtable len {}
127) on the runtime class behind {}
128 (method `{}
129`)",
130                        41usize,
131                        __vt.len(),
132                        <Button as ::unity::ClassIdentity>::NAME,
133                        "OnPointerClick",
134                    )
135                });
136                let __inner: extern "C" fn(
137                    Button,
138                    crate::unity_engine::event_systems::pointereventdata::PointerEventData,
139                    ::unity::OptionalMethod,
140                ) -> () = ::core::mem::transmute(__vi.method_ptr);
141                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
142                __inner(__receiver, ::core::convert::Into::into(event_data), __mi)
143            }
144        }
145    }
146    #[doc = "`OnSubmit(crate::unity_engine::event_systems::baseeventdata::BaseEventData)` overload"]
147    fn on_submit(self, event_data: impl ::core::convert::Into<crate::unity_engine::event_systems::baseeventdata::BaseEventData>) -> () {
148        unsafe {
149            let __receiver = <Button as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
150            {
151                let __vt = ::unity::Cast::get_class(__receiver).raw().get_vtable();
152                let __vi = *__vt.get(42usize).unwrap_or_else(|| {
153                    panic!(
154                        "unity: virtual slot {}
155 out of range (vtable len {}
156) on the runtime class behind {}
157 (method `{}
158`)",
159                        42usize,
160                        __vt.len(),
161                        <Button as ::unity::ClassIdentity>::NAME,
162                        "OnSubmit",
163                    )
164                });
165                let __inner: extern "C" fn(Button, crate::unity_engine::event_systems::baseeventdata::BaseEventData, ::unity::OptionalMethod) -> () =
166                    ::core::mem::transmute(__vi.method_ptr);
167                let __mi: ::unity::OptionalMethod = ::core::option::Option::Some(&*(__vi.method_info as *const ::unity::MethodInfo as *const ()));
168                __inner(__receiver, ::core::convert::Into::into(event_data), __mi)
169            }
170        }
171    }
172    #[doc = "`OnFinishSubmit()` overload"]
173    fn on_finish_submit(self) -> crate::system::collections::ienumerator::IEnumerator {
174        unsafe {
175            let __receiver = <Button as ::unity::FromIlInstance>::from_il_instance(<Self as ::unity::SystemObject>::as_instance(self));
176            ::unity::il2cpp_call!((::unity::module_base()+0x317c5a0usize)as*mut u8,crate::system::collections::ienumerator::IEnumerator;
177(Button)__receiver)
178        }
179    }
180}
181
182#[cfg(feature = "unity_engine-ui-button")]
183impl<__T: IButton> IButtonMethods for __T {}
184
185#[cfg(feature = "unity_engine-ui-button")]
186impl Button {
187    pub fn ctor_method_info() -> &'static ::unity::il2cpp::MethodInfo {
188        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[0]
189    }
190
191    pub fn get_on_click_method_info() -> &'static ::unity::il2cpp::MethodInfo {
192        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[1]
193    }
194
195    pub fn set_on_click_method_info() -> &'static ::unity::il2cpp::MethodInfo {
196        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[2]
197    }
198
199    pub fn press_method_info() -> &'static ::unity::il2cpp::MethodInfo {
200        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[3]
201    }
202
203    pub fn on_pointer_click_method_info() -> &'static ::unity::il2cpp::MethodInfo {
204        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[4]
205    }
206
207    pub fn on_submit_method_info() -> &'static ::unity::il2cpp::MethodInfo {
208        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[5]
209    }
210
211    pub fn on_finish_submit_method_info() -> &'static ::unity::il2cpp::MethodInfo {
212        <Self as ::unity::ClassIdentity>::class().raw().get_methods()[6]
213    }
214}
215
216#[cfg(feature = "unity_engine-ui-button")]
217impl Button {
218    #[doc = "Direct (non-virtual) call to `Button`'s own `OnPointerClick`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
219    pub unsafe fn on_pointer_click(
220        this: impl ::core::convert::Into<::unity::IlInstance>,
221        event_data: crate::unity_engine::event_systems::pointereventdata::PointerEventData,
222    ) -> () {
223        let __mi = Self::on_pointer_click_method_info();
224        let __inner: extern "C" fn(
225            ::unity::IlInstance,
226            crate::unity_engine::event_systems::pointereventdata::PointerEventData,
227            ::unity::OptionalMethod,
228        ) -> () = ::core::mem::transmute(__mi.method_ptr);
229        __inner(this.into(), event_data, ::core::option::Option::None)
230    }
231
232    #[doc = "Direct (non-virtual) call to `Button`'s own `OnSubmit`. Bypasses the vtable, so it won't hit an override/patch — use it for base calls."]
233    pub unsafe fn on_submit(
234        this: impl ::core::convert::Into<::unity::IlInstance>,
235        event_data: crate::unity_engine::event_systems::baseeventdata::BaseEventData,
236    ) -> () {
237        let __mi = Self::on_submit_method_info();
238        let __inner: extern "C" fn(
239            ::unity::IlInstance,
240            crate::unity_engine::event_systems::baseeventdata::BaseEventData,
241            ::unity::OptionalMethod,
242        ) -> () = ::core::mem::transmute(__mi.method_ptr);
243        __inner(this.into(), event_data, ::core::option::Option::None)
244    }
245}
246
247#[cfg(feature = "unity_engine-ui-button")]
248impl Button {
249    #[doc = "`.ctor()` — no args"]
250    pub fn new() -> Self {
251        let this = <Self as ::unity::FromIlInstance>::instantiate().unwrap_or_else(|| {
252            panic!(
253                "{}
254::{}
255 failed to instantiate",
256                ::core::stringify!(Button),
257                ::core::stringify!(new),
258            )
259        });
260        <Self as IButtonMethods>::ctor(this);
261        this
262    }
263}
264
265#[cfg(feature = "unity_engine-ui-button")]
266#[doc(hidden)]
267pub mod prelude {
268    pub use super::{Button, Button_ButtonClickedEvent, IButton, IButtonMethods, IButton_ButtonClickedEvent, IButton_ButtonClickedEventMethods};
269    #[cfg(feature = "system-object")]
270    pub use crate::system::object::IObjectMethods;
271    #[cfg(feature = "unity_engine-behaviour")]
272    pub use crate::unity_engine::behaviour::IBehaviourMethods;
273    #[cfg(feature = "unity_engine-component")]
274    pub use crate::unity_engine::component::IComponentMethods;
275    #[cfg(feature = "unity_engine-event_systems-uibehaviour")]
276    pub use crate::unity_engine::event_systems::uibehaviour::IUIBehaviourMethods;
277    #[cfg(feature = "unity_engine-events-unityevent")]
278    pub use crate::unity_engine::events::unityevent::IUnityEventMethods;
279    #[cfg(feature = "unity_engine-events-unityeventbase")]
280    pub use crate::unity_engine::events::unityeventbase::IUnityEventBaseMethods;
281    #[cfg(feature = "unity_engine-monobehaviour")]
282    pub use crate::unity_engine::monobehaviour::IMonoBehaviourMethods;
283    #[cfg(feature = "unity_engine-object_2")]
284    pub use crate::unity_engine::object_2::IObject_2Methods;
285    #[cfg(feature = "unity_engine-ui-selectable")]
286    pub use crate::unity_engine::ui::selectable::ISelectableMethods;
287    pub use crate::{
288        system::object::IObject,
289        unity_engine::{
290            behaviour::IBehaviour,
291            component::IComponent,
292            event_systems::uibehaviour::IUIBehaviour,
293            events::{unityevent::IUnityEvent, unityeventbase::IUnityEventBase},
294            monobehaviour::IMonoBehaviour,
295            object_2::IObject_2,
296            ui::selectable::ISelectable,
297        },
298    };
299}