Created
November 21, 2017 13:31
-
-
Save 1vanK/c59c9417c9422d700c3984d24f0832c3 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// | |
// Copyright (c) 2008-2017 the Urho3D project. | |
// | |
// Permission is hereby granted, free of charge, to any person obtaining a copy | |
// of this software and associated documentation files (the "Software"), to deal | |
// in the Software without restriction, including without limitation the rights | |
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | |
// copies of the Software, and to permit persons to whom the Software is | |
// furnished to do so, subject to the following conditions: | |
// | |
// The above copyright notice and this permission notice shall be included in | |
// all copies or substantial portions of the Software. | |
// | |
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | |
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | |
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | |
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | |
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | |
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN | |
// THE SOFTWARE. | |
// | |
#pragma once | |
#include "../UI/BorderImage.h" | |
namespace Urho3D | |
{ | |
/// Push button %UI element. | |
class URHO3D_API Button : public BorderImage | |
{ | |
URHO3D_OBJECT(Button, BorderImage); | |
public: | |
/// Construct. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// Button(Context* context); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = , ИМЯ = Button, ПАРАМЕТРЫ = Context* context | |
// C++ | |
URHO3D_API Button* Button_Button(Context* nativeContext) | |
{ | |
return new Button(Context* nativeContext); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern IntPtr Button_Button(IntPtr nativeContext); | |
/// Destruct. | |
virtual ~Button() override; | |
/// Register object factory. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// static void RegisterObject(Context* context); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = static void, ИМЯ = RegisterObject, ПАРАМЕТРЫ = Context* context | |
// C++ | |
URHO3D_API static void Button_RegisterObject(Button* nativeInstance, Context* nativeContext) | |
{ | |
nativeInstance->RegisterObject(nativeContext); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern static void Button_RegisterObject(IntPtr nativeInstance, IntPtr nativeContext); | |
/// Perform UI element update. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// virtual void Update(float timeStep) override; | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = virtual void, ИМЯ = Update, ПАРАМЕТРЫ = float timeStep | |
// C++ | |
URHO3D_API virtual void Button_Update(Button* nativeInstance, float timeStep) | |
{ | |
nativeInstance->Update(timeStep); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern virtual void Button_Update(IntPtr nativeInstance, float timeStep); | |
/// Return UI rendering batches. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// virtual void GetBatches(PODVector<UIBatch>& batches, PODVector<float>& vertexData, const IntRect& currentScissor) override; | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = virtual void, ИМЯ = GetBatches, ПАРАМЕТРЫ = PODVector<UIBatch>& batches, PODVector<float>& vertexData, const IntRect& currentScissor | |
// C++ | |
URHO3D_API virtual void Button_GetBatches(Button* nativeInstance, PODVector<UIBatch>& batches, PODVector<float>& vertexData, const IntRect& currentScissor) | |
{ | |
nativeInstance->GetBatches(batches, vertexData, currentScissor); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern virtual void Button_GetBatches(IntPtr nativeInstance, PODVector<UIBatch>& batches, PODVector<float>& vertexData, const IntRect& currentScissor); | |
/// React to mouse click begin. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// virtual void OnClickBegin (const IntVector2& position, const IntVector2& screenPosition, int button, int buttons, int qualifiers, Cursor* cursor) override; | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = virtual void, ИМЯ = OnClickBegin, ПАРАМЕТРЫ = const IntVector2& position, const IntVector2& screenPosition, int button, int buttons, int qualifiers, Cursor* cursor | |
// C++ | |
URHO3D_API virtual void Button_OnClickBegin(Button* nativeInstance, const IntVector2& position, const IntVector2& screenPosition, int button, int buttons, int qualifiers, Cursor* cursor) | |
{ | |
nativeInstance->OnClickBegin(position, screenPosition, button, buttons, qualifiers, cursor); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern virtual void Button_OnClickBegin(IntPtr nativeInstance, const IntVector2& position, const IntVector2& screenPosition, int button, int buttons, int qualifiers, IntPtr cursor); | |
/// React to mouse click end. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// virtual void OnClickEnd (const IntVector2& position, const IntVector2& screenPosition, int button, int buttons, int qualifiers, Cursor* cursor, UIElement* beginElement) override; | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = virtual void, ИМЯ = OnClickEnd, ПАРАМЕТРЫ = const IntVector2& position, const IntVector2& screenPosition, int button, int buttons, int qualifiers, Cursor* cursor, UIElement* beginElement | |
// C++ | |
URHO3D_API virtual void Button_OnClickEnd(Button* nativeInstance, const IntVector2& position, const IntVector2& screenPosition, int button, int buttons, int qualifiers, Cursor* cursor, UIElement* beginElement) | |
{ | |
nativeInstance->OnClickEnd(position, screenPosition, button, buttons, qualifiers, cursor, beginElement); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern virtual void Button_OnClickEnd(IntPtr nativeInstance, const IntVector2& position, const IntVector2& screenPosition, int button, int buttons, int qualifiers, IntPtr cursor, IntPtr beginElement); | |
/// React to mouse drag motion. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// virtual void OnDragMove (const IntVector2& position, const IntVector2& screenPosition, const IntVector2& deltaPos, int buttons, int qualifiers, Cursor* cursor) override; | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = virtual void, ИМЯ = OnDragMove, ПАРАМЕТРЫ = const IntVector2& position, const IntVector2& screenPosition, const IntVector2& deltaPos, int buttons, int qualifiers, Cursor* cursor | |
// C++ | |
URHO3D_API virtual void Button_OnDragMove(Button* nativeInstance, const IntVector2& position, const IntVector2& screenPosition, const IntVector2& deltaPos, int buttons, int qualifiers, Cursor* cursor) | |
{ | |
nativeInstance->OnDragMove(position, screenPosition, deltaPos, buttons, qualifiers, cursor); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern virtual void Button_OnDragMove(IntPtr nativeInstance, const IntVector2& position, const IntVector2& screenPosition, const IntVector2& deltaPos, int buttons, int qualifiers, IntPtr cursor); | |
/// React to a key press. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// virtual void OnKey(int key, int buttons, int qualifiers) override; | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = virtual void, ИМЯ = OnKey, ПАРАМЕТРЫ = int key, int buttons, int qualifiers | |
// C++ | |
URHO3D_API virtual void Button_OnKey(Button* nativeInstance, int key, int buttons, int qualifiers) | |
{ | |
nativeInstance->OnKey(key, buttons, qualifiers); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern virtual void Button_OnKey(IntPtr nativeInstance, int key, int buttons, int qualifiers); | |
/// Set offset to image rectangle used when pressed. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// void SetPressedOffset(const IntVector2& offset); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = void, ИМЯ = SetPressedOffset, ПАРАМЕТРЫ = const IntVector2& offset | |
// C++ | |
URHO3D_API void Button_SetPressedOffset(Button* nativeInstance, const IntVector2& offset) | |
{ | |
nativeInstance->SetPressedOffset(offset); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern void Button_SetPressedOffset(IntPtr nativeInstance, const IntVector2& offset); | |
/// Set offset to image rectangle used when pressed. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// void SetPressedOffset(int x, int y); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = void, ИМЯ = SetPressedOffset, ПАРАМЕТРЫ = int x, int y | |
// C++ | |
URHO3D_API void Button_SetPressedOffset(Button* nativeInstance, int x, int y) | |
{ | |
nativeInstance->SetPressedOffset(x, y); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern void Button_SetPressedOffset(IntPtr nativeInstance, int x, int y); | |
/// Set offset to image rectangle used when disabled. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// void SetDisabledOffset(const IntVector2& offset); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = void, ИМЯ = SetDisabledOffset, ПАРАМЕТРЫ = const IntVector2& offset | |
// C++ | |
URHO3D_API void Button_SetDisabledOffset(Button* nativeInstance, const IntVector2& offset) | |
{ | |
nativeInstance->SetDisabledOffset(offset); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern void Button_SetDisabledOffset(IntPtr nativeInstance, const IntVector2& offset); | |
/// Set offset to image rectangle used when disabled. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// void SetDisabledOffset(int x, int y); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = void, ИМЯ = SetDisabledOffset, ПАРАМЕТРЫ = int x, int y | |
// C++ | |
URHO3D_API void Button_SetDisabledOffset(Button* nativeInstance, int x, int y) | |
{ | |
nativeInstance->SetDisabledOffset(x, y); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern void Button_SetDisabledOffset(IntPtr nativeInstance, int x, int y); | |
/// Set offset of child elements when pressed. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// void SetPressedChildOffset(const IntVector2& offset); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = void, ИМЯ = SetPressedChildOffset, ПАРАМЕТРЫ = const IntVector2& offset | |
// C++ | |
URHO3D_API void Button_SetPressedChildOffset(Button* nativeInstance, const IntVector2& offset) | |
{ | |
nativeInstance->SetPressedChildOffset(offset); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern void Button_SetPressedChildOffset(IntPtr nativeInstance, const IntVector2& offset); | |
/// Set offset of child elements when pressed. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// void SetPressedChildOffset(int x, int y); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = void, ИМЯ = SetPressedChildOffset, ПАРАМЕТРЫ = int x, int y | |
// C++ | |
URHO3D_API void Button_SetPressedChildOffset(Button* nativeInstance, int x, int y) | |
{ | |
nativeInstance->SetPressedChildOffset(x, y); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern void Button_SetPressedChildOffset(IntPtr nativeInstance, int x, int y); | |
/// Set repeat properties. Rate 0 (default) disables repeat. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// void SetRepeat(float delay, float rate); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = void, ИМЯ = SetRepeat, ПАРАМЕТРЫ = float delay, float rate | |
// C++ | |
URHO3D_API void Button_SetRepeat(Button* nativeInstance, float delay, float rate) | |
{ | |
nativeInstance->SetRepeat(delay, rate); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern void Button_SetRepeat(IntPtr nativeInstance, float delay, float rate); | |
/// Set repeat delay. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// void SetRepeatDelay(float delay); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = void, ИМЯ = SetRepeatDelay, ПАРАМЕТРЫ = float delay | |
// C++ | |
URHO3D_API void Button_SetRepeatDelay(Button* nativeInstance, float delay) | |
{ | |
nativeInstance->SetRepeatDelay(delay); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern void Button_SetRepeatDelay(IntPtr nativeInstance, float delay); | |
/// Set repeat rate. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// void SetRepeatRate(float rate); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = void, ИМЯ = SetRepeatRate, ПАРАМЕТРЫ = float rate | |
// C++ | |
URHO3D_API void Button_SetRepeatRate(Button* nativeInstance, float rate) | |
{ | |
nativeInstance->SetRepeatRate(rate); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern void Button_SetRepeatRate(IntPtr nativeInstance, float rate); | |
/// Return pressed image offset. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// const IntVector2& GetPressedOffset() const { return pressedOffset_; } | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = const IntVector2&, ИМЯ = GetPressedOffset, ПАРАМЕТРЫ = | |
// C++ | |
URHO3D_API const IntVector2& Button_GetPressedOffset(Button* nativeInstance) | |
{ | |
return nativeInstance->GetPressedOffset(); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern const IntVector2& Button_GetPressedOffset(IntPtr nativeInstance); | |
/// Return disabled image offset. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// const IntVector2& GetDisabledOffset() const { return disabledOffset_; } | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = const IntVector2&, ИМЯ = GetDisabledOffset, ПАРАМЕТРЫ = | |
// C++ | |
URHO3D_API const IntVector2& Button_GetDisabledOffset(Button* nativeInstance) | |
{ | |
return nativeInstance->GetDisabledOffset(); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern const IntVector2& Button_GetDisabledOffset(IntPtr nativeInstance); | |
/// Return offset of child elements when pressed. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// const IntVector2& GetPressedChildOffset() const { return pressedChildOffset_; } | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = const IntVector2&, ИМЯ = GetPressedChildOffset, ПАРАМЕТРЫ = | |
// C++ | |
URHO3D_API const IntVector2& Button_GetPressedChildOffset(Button* nativeInstance) | |
{ | |
return nativeInstance->GetPressedChildOffset(); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern const IntVector2& Button_GetPressedChildOffset(IntPtr nativeInstance); | |
/// Return repeat delay. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// float GetRepeatDelay() const { return repeatDelay_; } | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = float, ИМЯ = GetRepeatDelay, ПАРАМЕТРЫ = | |
// C++ | |
URHO3D_API float Button_GetRepeatDelay(Button* nativeInstance) | |
{ | |
return nativeInstance->GetRepeatDelay(); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern float Button_GetRepeatDelay(IntPtr nativeInstance); | |
/// Return repeat rate. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// float GetRepeatRate() const { return repeatRate_; } | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = float, ИМЯ = GetRepeatRate, ПАРАМЕТРЫ = | |
// C++ | |
URHO3D_API float Button_GetRepeatRate(Button* nativeInstance) | |
{ | |
return nativeInstance->GetRepeatRate(); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern float Button_GetRepeatRate(IntPtr nativeInstance); | |
/// Return whether is currently pressed. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// bool IsPressed() const { return pressed_; } | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = bool, ИМЯ = IsPressed, ПАРАМЕТРЫ = | |
// C++ | |
URHO3D_API bool Button_IsPressed(Button* nativeInstance) | |
{ | |
return nativeInstance->IsPressed(); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern bool Button_IsPressed(IntPtr nativeInstance); | |
protected: | |
/// Set new pressed state. | |
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | |
// void SetPressed(bool enable); | |
// КЛАСС = Button, ВОЗВРАЩАЕМЫЙ ТИП = void, ИМЯ = SetPressed, ПАРАМЕТРЫ = bool enable | |
// C++ | |
URHO3D_API void Button_SetPressed(Button* nativeInstance, bool enable) | |
{ | |
nativeInstance->SetPressed(enable); | |
} | |
// C# | |
[DllImport(Consts.NativeLibName, CallingConvention = CallingConvention.Cdecl)] | |
private static extern void Button_SetPressed(IntPtr nativeInstance, bool enable); | |
/// Pressed image offset. | |
IntVector2 pressedOffset_; | |
/// Disabled image offset. | |
IntVector2 disabledOffset_; | |
/// Pressed label offset. | |
IntVector2 pressedChildOffset_; | |
/// Repeat delay. | |
float repeatDelay_; | |
/// Repeat rate. | |
float repeatRate_; | |
/// Repeat timer. | |
float repeatTimer_; | |
/// Current pressed state. | |
bool pressed_; | |
}; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment