using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using BansheeEngine;
namespace BansheeEditor
{
/** @addtogroup GUIEditor
* @{
*/
///
/// A composite GUI object representing an editor field. Editor fields are a combination of a label and an input field.
/// Label is optional. This specific implementation displays an input field for a floating point distribution.
///
public partial class GUIFloatDistributionField : GUIElement
{
private GUIFloatDistributionField(bool __dummy0) { }
protected GUIFloatDistributionField() { }
/// Creates a new GUI editor field with a label.
/// Content to display in the editor field label.
/// Width of the label in pixels.
///
/// Optional style to use for the element. Style will be retrieved from GUISkin of the GUIWidget the element is used on.
/// If not specified default style is used.
///
public GUIFloatDistributionField(GUIContent labelContent, uint labelWidth, string style = "")
{
Internal_create(this, ref labelContent, labelWidth, style);
}
/// Creates a new GUI editor field with a label.
/// Content to display in the editor field label.
///
/// Optional style to use for the element. Style will be retrieved from GUISkin of the GUIWidget the element is used on.
/// If not specified default style is used.
///
public GUIFloatDistributionField(GUIContent labelContent, string style = "")
{
Internal_create0(this, ref labelContent, style);
}
/// Creates a new GUI editor field with a label.
/// String to display in the editor field label.
/// Width of the label in pixels.
///
/// Optional style to use for the element. Style will be retrieved from GUISkin of the GUIWidget the element is used on.
/// If not specified default style is used.
///
public GUIFloatDistributionField(LocString labelText, uint labelWidth, string style = "")
{
Internal_create1(this, labelText, labelWidth, style);
}
/// Creates a new GUI editor field with a label.
/// String to display in the editor field label.
///
/// Optional style to use for the element. Style will be retrieved from GUISkin of the GUIWidget the element is used on.
/// If not specified default style is used.
///
public GUIFloatDistributionField(LocString labelText, string style = "")
{
Internal_create2(this, labelText, style);
}
/// Creates a new GUI editor field without a label.
///
/// Optional style to use for the element. Style will be retrieved from GUISkin of the GUIWidget the element is used on.
/// If not specified default style is used.
///
public GUIFloatDistributionField(string style = "")
{
Internal_create3(this, style);
}
/// Changes the value of the field.
public FloatDistribution Value
{
get { return Internal_getValue(mCachedPtr); }
set { Internal_setValue(mCachedPtr, value); }
}
///
/// Checks if any of the float input fields currently have input focus. Only relevant for non-curve distributions.
///
public bool HasInputFocus
{
get { return Internal_hasInputFocus(mCachedPtr); }
}
///
/// Triggered when the user clicks on the curve display. Only relevant if the distribution is a curve distribution.
///
partial void OnClicked();
///
/// Triggered when the user modifies either of the non-curve (constant) values of the distribution. Only relevant if the
/// distribution is not a curve distribution.
///
partial void OnConstantModified();
///
/// Triggered when the user confirms inputs in either of the non-curve (constant) values of the distribution. Only
/// relevant if the distribution is not a curve distribution.
///
partial void OnConstantConfirmed();
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern FloatDistribution Internal_getValue(IntPtr thisPtr);
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern void Internal_setValue(IntPtr thisPtr, FloatDistribution value);
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern bool Internal_hasInputFocus(IntPtr thisPtr);
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern void Internal_create(GUIFloatDistributionField managedInstance, ref GUIContent labelContent, uint labelWidth, string style);
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern void Internal_create0(GUIFloatDistributionField managedInstance, ref GUIContent labelContent, string style);
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern void Internal_create1(GUIFloatDistributionField managedInstance, LocString labelText, uint labelWidth, string style);
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern void Internal_create2(GUIFloatDistributionField managedInstance, LocString labelText, string style);
[MethodImpl(MethodImplOptions.InternalCall)]
private static extern void Internal_create3(GUIFloatDistributionField managedInstance, string style);
private void Internal_onClicked()
{
OnClicked();
}
private void Internal_onConstantModified()
{
OnConstantModified();
}
private void Internal_onConstantConfirmed()
{
OnConstantConfirmed();
}
}
/** @} */
}