-/** Copyright (c) 2017 Samsung Electronics Co., Ltd.
-*
-* Licensed under the Apache License, Version 2.0 (the "License");
-* you may not use this file except in compliance with the License.
-* You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing, software
-* distributed under the License is distributed on an "AS IS" BASIS,
-* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-* See the License for the specific language governing permissions and
-* limitations under the License.
-*
-*/
+/*
+ * Copyright(c) 2017 Samsung Electronics Co., Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
extern alias TizenSystemSettings;
using TizenSystemSettings.Tizen.System;
+
+using System;
+using System.Runtime.InteropServices;
+using System.Globalization;
+using System.ComponentModel;
+
namespace Tizen.NUI.BaseComponents
{
-
- using System;
- using System.Runtime.InteropServices;
- using System.Globalization;
/// <summary>
- /// A control which provides a single-line editable text field.
+ /// A control which provides a single line editable text field.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public class TextField : View
{
private global::System.Runtime.InteropServices.HandleRef swigCPtr;
}
/// <summary>
- /// Dispose
+ /// Dispose.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
protected override void Dispose(DisposeTypes type)
{
if (disposed)
return;
}
- if(type == DisposeTypes.Explicit)
+ if (type == DisposeTypes.Explicit)
{
//Called by User
//Release your own managed resources here.
//Release your own unmanaged resources here.
//You should not access any managed member here except static instance.
//because the execution order of Finalizes is non-deterministic.
+ if (this != null)
+ {
+ if (_textFieldMaxLengthReachedCallbackDelegate != null)
+ {
+ this.MaxLengthReachedSignal().Disconnect(_textFieldMaxLengthReachedCallbackDelegate);
+ }
+
+ if (_textFieldTextChangedCallbackDelegate != null)
+ {
+ TextChangedSignal().Disconnect(_textFieldTextChangedCallbackDelegate);
+ }
+ }
if (swigCPtr.Handle != global::System.IntPtr.Zero)
{
}
/// <summary>
- /// Text changed event arguments.
+ /// The TextChanged event arguments.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public class TextChangedEventArgs : EventArgs
{
private TextField _textField;
/// <summary>
/// TextField.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public TextField TextField
{
get
}
/// <summary>
- /// MaxLengthReached event arguments.
+ /// The MaxLengthReached event arguments.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public class MaxLengthReachedEventArgs : EventArgs
{
private TextField _textField;
/// <summary>
/// TextField.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public TextField TextField
{
get
private MaxLengthReachedCallbackDelegate _textFieldMaxLengthReachedCallbackDelegate;
/// <summary>
- /// TextChanged event.
+ /// The TextChanged event.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public event EventHandler<TextChangedEventArgs> TextChanged
{
add
}
/// <summary>
- /// MaxLengthReached event.
+ /// The MaxLengthReached event.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public event EventHandler<MaxLengthReachedEventArgs> MaxLengthReached
{
add
}
- internal class Property
+ internal new class Property
{
internal static readonly int RENDERING_BACKEND = NDalicPINVOKE.TextField_Property_RENDERING_BACKEND_get();
internal static readonly int TEXT = NDalicPINVOKE.TextField_Property_TEXT_get();
internal static readonly int PIXEL_SIZE = NDalicManualPINVOKE.TextField_Property_PIXEL_SIZE_get();
internal static readonly int ENABLE_SELECTION = NDalicManualPINVOKE.TextField_Property_ENABLE_SELECTION_get();
internal static readonly int PLACEHOLDER = NDalicManualPINVOKE.TextField_Property_PLACEHOLDER_get();
-
+ internal static readonly int ELLIPSIS = NDalicManualPINVOKE.TextField_Property_ELLIPSIS_get();
+ internal static readonly int ENABLE_SHIFT_SELECTION = NDalicManualPINVOKE.TextField_Property_ENABLE_SHIFT_SELECTION_get();
}
internal class InputStyle
/// <summary>
/// Creates the TextField control.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public TextField() : this(NDalicPINVOKE.TextField_New(), true)
{
if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
}
- [Obsolete("Please do not use! this will be deprecated")]
- public new static TextField DownCast(BaseHandle handle)
- {
- TextField ret = Registry.GetManagedBaseHandleFromNativePtr(handle) as TextField;
- if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
- return ret;
- }
-
internal TextFieldSignal TextChangedSignal()
{
TextFieldSignal ret = new TextFieldSignal(NDalicPINVOKE.TextField_TextChangedSignal(swigCPtr), false);
}
/// <summary>
- /// TranslatableText property.<br>
- /// The text can be set SID value.<br>
+ /// The TranslatableText property.<br />
+ /// The text can set the SID value.<br />
/// </summary>
/// <exception cref='ArgumentNullException'>
- /// ResourceManager about multilingual is null
+ /// ResourceManager about multilingual is null.
/// </exception>
+ /// <since_tizen> 4 </since_tizen>
public string TranslatableText
{
get
}
}
/// <summary>
- /// TranslatablePlaceholderText property.<br>
- /// The text can be set SID value.<br>
+ /// The TranslatablePlaceholderText property.<br />
+ /// The text can set the SID value.<br />
/// </summary>
/// <exception cref='ArgumentNullException'>
- /// ResourceManager about multilingual is null
+ /// ResourceManager about multilingual is null.
/// </exception>
+ /// <since_tizen> 4 </since_tizen>
public string TranslatablePlaceholderText
{
get
PlaceholderText = NUIApplication.MultilingualResourceManager?.GetString(textFieldPlaceHolderTextSid, new CultureInfo(e.Value.Replace("_", "-")));
}
}
- /// Text property.
+ /// <summary>
+ /// The Text property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string Text
{
get
}
/// <summary>
- /// PlaceholderText property.
+ /// The PlaceholderText property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string PlaceholderText
{
get
}
/// <summary>
- /// PlaceholderTextFocused property.
+ /// The PlaceholderTextFocused property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string PlaceholderTextFocused
{
get
}
/// <summary>
- /// FontFamily property.
+ /// The FontFamily property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string FontFamily
{
get
}
/// <summary>
- /// FontStyle property.
+ /// The FontStyle property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap FontStyle
{
get
}
/// <summary>
- /// PointSize property.
+ /// The PointSize property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public float PointSize
{
get
}
/// <summary>
- /// MaxLength property.
+ /// The MaxLength property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public int MaxLength
{
get
}
/// <summary>
- /// ExceedPolicy property.
+ /// The ExceedPolicy property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public int ExceedPolicy
{
get
}
/// <summary>
- /// HorizontalAlignment property.
+ /// The HorizontalAlignment property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public HorizontalAlignment HorizontalAlignment
{
get
}
/// <summary>
- /// VerticalAlignment property.
+ /// The VerticalAlignment property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public VerticalAlignment VerticalAlignment
{
get
}
/// <summary>
- /// TextColor property.
+ /// The TextColor property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public Color TextColor
{
get
}
/// <summary>
- /// PlaceholderTextColor property.
+ /// The PlaceholderTextColor property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public Vector4 PlaceholderTextColor
{
get
}
/// <summary>
- /// ShadowOffset property.
+ /// The ShadowOffset property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public Vector2 ShadowOffset
{
get
}
/// <summary>
- /// ShadowColor property.
+ /// The ShadowColor property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public Vector4 ShadowColor
{
get
}
/// <summary>
- /// PrimaryCursorColor property.
+ /// The PrimaryCursorColor property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public Vector4 PrimaryCursorColor
{
get
}
/// <summary>
- /// SecondaryCursorColor property.
+ /// The SecondaryCursorColor property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public Vector4 SecondaryCursorColor
{
get
}
/// <summary>
- /// EnableCursorBlink property.
+ /// The EnableCursorBlink property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public bool EnableCursorBlink
{
get
}
/// <summary>
- /// CursorBlinkInterval property.
+ /// The CursorBlinkInterval property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public float CursorBlinkInterval
{
get
}
/// <summary>
- /// CursorBlinkDuration property.
+ /// The CursorBlinkDuration property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public float CursorBlinkDuration
{
get
}
/// <summary>
- /// CursorWidth property.
+ /// The CursorWidth property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public int CursorWidth
{
get
}
/// <summary>
- /// GrabHandleImage property.
+ /// The GrabHandleImage property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string GrabHandleImage
{
get
}
/// <summary>
- /// GrabHandlePressedImage property.
+ /// The GrabHandlePressedImage property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string GrabHandlePressedImage
{
get
}
/// <summary>
- /// ScrollThreshold property.
+ /// The ScrollThreshold property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public float ScrollThreshold
{
get
}
/// <summary>
- /// ScrollSpeed property.
+ /// The ScrollSpeed property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public float ScrollSpeed
{
get
}
/// <summary>
- /// SelectionHandleImageLeft property.
+ /// The SelectionHandleImageLeft property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap SelectionHandleImageLeft
{
get
}
/// <summary>
- /// SelectionHandleImageRight property.
+ /// The SelectionHandleImageRight property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap SelectionHandleImageRight
{
get
}
/// <summary>
- /// SelectionHandlePressedImageLeft property.
+ /// The SelectionHandlePressedImageLeft property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap SelectionHandlePressedImageLeft
{
get
}
/// <summary>
- /// SelectionHandlePressedImageRight property.
+ /// The SelectionHandlePressedImageRight property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap SelectionHandlePressedImageRight
{
get
}
/// <summary>
- /// SelectionHandleMarkerImageLeft property.
+ /// The SelectionHandleMarkerImageLeft property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap SelectionHandleMarkerImageLeft
{
get
}
/// <summary>
- /// SelectionHandleMarkerImageRight property.
+ /// The SelectionHandleMarkerImageRight property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap SelectionHandleMarkerImageRight
{
get
}
/// <summary>
- /// SelectionHighlightColor property.
+ /// The SelectionHighlightColor property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public Vector4 SelectionHighlightColor
{
get
}
/// <summary>
- /// DecorationBoundingBox property.
+ /// The DecorationBoundingBox property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public Rectangle DecorationBoundingBox
{
get
}
/// <summary>
- /// InputMethodSettings property.
+ /// The InputMethodSettings property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap InputMethodSettings
{
get
}
/// <summary>
- /// InputColor property.
+ /// The InputColor property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public Vector4 InputColor
{
get
}
/// <summary>
- /// EnableMarkup property.
+ /// The EnableMarkup property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public bool EnableMarkup
{
get
}
/// <summary>
- /// InputFontFamily property.
+ /// The InputFontFamily property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string InputFontFamily
{
get
}
/// <summary>
- /// InputFontStyle property.
+ /// The InputFontStyle property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap InputFontStyle
{
get
}
/// <summary>
- /// InputPointSize property.
+ /// The InputPointSize property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public float InputPointSize
{
get
}
/// <summary>
- /// Underline property.
+ /// The Underline property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap Underline
{
get
}
/// <summary>
- /// InputUnderline property.
+ /// The InputUnderline property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string InputUnderline
{
get
}
/// <summary>
- /// Shadow property.
+ /// The Shadow property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public PropertyMap Shadow
{
get
}
/// <summary>
- /// InputShadow property.
+ /// The InputShadow property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string InputShadow
{
get
}
/// <summary>
- /// Emboss property.
+ /// The Emboss property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string Emboss
{
get
}
/// <summary>
- /// InputEmboss property.
+ /// The InputEmboss property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string InputEmboss
{
get
}
/// <summary>
- /// Outline property.
+ /// The Outline property.
/// </summary>
- public string Outline
+ /// <since_tizen> 3 </since_tizen>
+ public PropertyMap Outline
{
get
{
- string temp;
- GetProperty(TextField.Property.OUTLINE).Get(out temp);
+ PropertyMap temp = new PropertyMap();
+ GetProperty(TextField.Property.OUTLINE).Get(temp);
return temp;
}
set
}
/// <summary>
- /// InputOutline property.
+ /// The InputOutline property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public string InputOutline
{
get
}
/// <summary>
- /// HiddenInputSettings property.
+ /// The HiddenInputSettings property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public Tizen.NUI.PropertyMap HiddenInputSettings
{
get
}
/// <summary>
- /// PixelSize property.
+ /// The PixelSize property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public float PixelSize
{
get
}
/// <summary>
- /// Enable selection property.
+ /// The Enable selection property.
/// </summary>
+ /// <since_tizen> 3 </since_tizen>
public bool EnableSelection
{
get
}
/// <summary>
- /// Placeholder property.
- /// Gets/Sets the placeholder : text, color, font family, font style, point size, and pixel size.
+ /// The Placeholder property.
+ /// Gets or sets the placeholder: text, color, font family, font style, point size, and pixel size.
/// </summary>
/// <example>
- /// The following example demonstrates how to set the placeholder property.
+ /// The following example demonstrates how to set the Placeholder property.
/// <code>
/// PropertyMap propertyMap = new PropertyMap();
- /// propertyMap.Add("placeholderText", new PropertyValue("Setting Placeholder Text"));
- /// propertyMap.Add("placeholderColor", new PropertyValue(Color.Red));
- /// propertyMap.Add("placeholderFontFamily", new PropertyValue("Arial"));
- /// propertyMap.Add("placeholderPointSize", new PropertyValue(12.0f));
+ /// propertyMap.Add("text", new PropertyValue("Setting Placeholder Text"));
+ /// propertyMap.Add("textFocused", new PropertyValue("Setting Placeholder Text Focused"));
+ /// propertyMap.Add("color", new PropertyValue(Color.Red));
+ /// propertyMap.Add("fontFamily", new PropertyValue("Arial"));
+ /// propertyMap.Add("pointSize", new PropertyValue(12.0f));
///
/// PropertyMap fontStyleMap = new PropertyMap();
/// fontStyleMap.Add("weight", new PropertyValue("bold"));
/// fontStyleMap.Add("width", new PropertyValue("condensed"));
/// fontStyleMap.Add("slant", new PropertyValue("italic"));
- /// propertyMap.Add("placeholderFontStyle", new PropertyValue(fontStyleMap));
+ /// propertyMap.Add("fontStyle", new PropertyValue(fontStyleMap));
///
/// TextField field = new TextField();
/// field.Placeholder = propertyMap;
/// </code>
/// </example>
+ /// <since_tizen> 3 </since_tizen>
public Tizen.NUI.PropertyMap Placeholder
{
get
}
}
- }
+ /// <summary>
+ /// The Ellipsis property.<br />
+ /// Enable or disable the ellipsis.<br />
+ /// Placeholder PropertyMap is used to add ellipsis to placeholder text.
+ /// </summary>
+ /// <since_tizen> 4 </since_tizen>
+ public bool Ellipsis
+ {
+ get
+ {
+ bool temp = false;
+ GetProperty(TextField.Property.ELLIPSIS).Get(out temp);
+ return temp;
+ }
+ set
+ {
+ SetProperty(TextField.Property.ELLIPSIS, new Tizen.NUI.PropertyValue(value));
+ }
+ }
+
+ /// <summary>
+ /// Enables Text selection using Shift key.
+ /// </summary>
+ /// <since_tizen> 5 </since_tizen>
+ public bool EnableShiftSelection
+ {
+ get
+ {
+ // mShiftSelectionFlag( true )
+ bool temp = true;
+ GetProperty(TextField.Property.ENABLE_SHIFT_SELECTION).Get(out temp);
+ return temp;
+ }
+ set
+ {
+ SetProperty(TextField.Property.ENABLE_SHIFT_SELECTION, new Tizen.NUI.PropertyValue(value));
+ }
+ }
+
+
+ }
}