X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=dali-toolkit%2Fpublic-api%2Fcontrols%2Ftext-controls%2Ftext-field.h;h=1dd97cfe715a7eb11d0f865e4029370efab85851;hp=fc29af44a90bb743da1814990056a9d07d4a7464;hb=a3b69d118ee5f918a827b23ea76813a7aefad845;hpb=aeef40d5dd70c7d878c7664986913ef2c6675a03 diff --git a/dali-toolkit/public-api/controls/text-controls/text-field.h b/dali-toolkit/public-api/controls/text-controls/text-field.h index fc29af4..1dd97cf 100644 --- a/dali-toolkit/public-api/controls/text-controls/text-field.h +++ b/dali-toolkit/public-api/controls/text-controls/text-field.h @@ -2,7 +2,7 @@ #define __DALI_TOOLKIT_TEXT_FIELD_H__ /* - * Copyright (c) 2015 Samsung Electronics Co., Ltd. + * Copyright (c) 2016 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. @@ -39,13 +39,12 @@ class TextField; /** * @brief A control which provides a single-line editable text field. * - * * Signals - * | %Signal Name | Method | - * |----------------------|-----------------------------------------------------| - * | textChanged | @ref TextChangedSignal() | - * | maxLengthReached | @ref MaxLengthReachedSignal() | - * - * @SINCE_1_0.0 + * Signals + * | %Signal Name | Method | | + * |----------------------|--------------------------------|--------------------| + * | textChanged | @ref TextChangedSignal() | @SINCE_1_0.0 | + * | maxLengthReached | @ref MaxLengthReachedSignal() | @SINCE_1_0.0 | + * | inputStyleChanged | @ref InputStyleChangedSignal() | @SINCE_1_2_2 | */ class DALI_IMPORT_API TextField : public Control { @@ -62,11 +61,15 @@ public: }; /** - * @brief An enumeration of properties belonging to the TextField class. + * @brief Enumeration for the instance of properties belonging to the TextField class. * @SINCE_1_0.0 */ struct Property { + /** + * @brief Enumeration for the instance of properties belonging to the TextField class. + * @SINCE_1_0.0 + */ enum { RENDERING_BACKEND = PROPERTY_START_INDEX, ///< name "renderingBackend", The type or rendering e.g. bitmap-based, type INT @SINCE_1_0.0 @@ -74,7 +77,7 @@ public: PLACEHOLDER_TEXT, ///< name "placeholderText", The text to display when the TextField is empty and inactive, type STRING @SINCE_1_0.0 PLACEHOLDER_TEXT_FOCUSED, ///< name "placeholderTextFocused", The text to display when the TextField is empty with key-input focus, type STRING @SINCE_1_0.0 FONT_FAMILY, ///< name "fontFamily", The requested font family, type STRING @SINCE_1_0.0 - FONT_STYLE, ///< name "fontStyle", The requested font style, type STRING @SINCE_1_0.0 + FONT_STYLE, ///< name "fontStyle", The requested font style, type STRING or MAP @SINCE_1_2.13 POINT_SIZE, ///< name "pointSize", The size of font in points, type FLOAT @SINCE_1_0.0 MAX_LENGTH, ///< name "maxLength" The maximum number of characters that can be inserted, type INTEGER @SINCE_1_0.0 EXCEED_POLICY, ///< name "exceedPolicy" Specifies how the text is truncated when it does not fit, type INTEGER @SINCE_1_0.0 @@ -106,21 +109,21 @@ public: INPUT_COLOR, ///< name "inputColor", The color of the new input text, type VECTOR4 @SINCE_1_0.0 ENABLE_MARKUP, ///< name "enableMarkup", Whether the mark-up processing is enabled. type BOOLEAN @SINCE_1_0.0 INPUT_FONT_FAMILY, ///< name "inputFontFamily", The font's family of the new input text, type STRING @SINCE_1_0.0 - INPUT_FONT_STYLE, ///< name "inputFontStyle", The font's style of the new input text, type STRING @SINCE_1_0.0 + INPUT_FONT_STYLE, ///< name "inputFontStyle", The font's style of the new input text, type STRING or MAP @SINCE_1_2.13 INPUT_POINT_SIZE, ///< name "inputPointSize", The font's size of the new input text in points, type FLOAT @SINCE_1_0.0 - UNDERLINE, ///< name "underline" The default underline parameters, type STRING @SINCE_1_1.37 - INPUT_UNDERLINE, ///< name "inputUnderline" The underline parameters of the new input text, type STRING @SINCE_1_1.37 - SHADOW, ///< name "shadow" The default shadow parameters, type STRING @SINCE_1_1.37 - INPUT_SHADOW, ///< name "inputShadow" The shadow parameters of the new input text, type STRING @SINCE_1_1.37 - EMBOSS, ///< name "emboss" The default emboss parameters, type STRING @SINCE_1_1.37 - INPUT_EMBOSS, ///< name "inputEmboss" The emboss parameters of the new input text, type STRING @SINCE_1_1.37 - OUTLINE, ///< name "outline" The default outline parameters, type STRING @SINCE_1_1.37 - INPUT_OUTLINE, ///< name "inputOutline" The outline parameters of the new input text, type STRING @SINCE_1_1.37 + UNDERLINE, ///< name "underline" The default underline parameters, type STRING or MAP @SINCE_1_2.13 + INPUT_UNDERLINE, ///< name "inputUnderline" The underline parameters of the new input text, type STRING or MAP @SINCE_1_2.13 + SHADOW, ///< name "shadow" The default shadow parameters, type STRING or MAP @SINCE_1_2.13 + INPUT_SHADOW, ///< name "inputShadow" The shadow parameters of the new input text, type STRING or MAP @SINCE_1_2.13 + EMBOSS, ///< name "emboss" The default emboss parameters, type STRING or MAP @SINCE_1_2.13 + INPUT_EMBOSS, ///< name "inputEmboss" The emboss parameters of the new input text, type STRING or MAP @SINCE_1_2.13 + OUTLINE, ///< name "outline" The default outline parameters, type STRING or MAP @SINCE_1_2.13 + INPUT_OUTLINE, ///< name "inputOutline" The outline parameters of the new input text, type STRING or MAP @SINCE_1_2.13 }; }; /** - * @brief Specifies how the text is truncated when it does not fit + * @brief Enumeration for specifying how the text is truncated when it does not fit. * * The default value is \e EXCEED_POLICY_CLIP. * @SINCE_1_0.0 @@ -131,17 +134,56 @@ public: EXCEED_POLICY_CLIP ///< The end of text will be clipped to fit within the TextField. @SINCE_1_0.0 }; + /** + * @brief Mask used by the signal InputStyleChangedSignal(). Notifies which parameters of the input style have changed. + * + * @SINCE_1_2_2 + */ + struct InputStyle + { + /** + * @brief Mask used by the signal InputStyleChangedSignal(). + * + * @SINCE_1_2_2 + */ + enum Mask + { + NONE = 0x0000, ///< @SINCE_1_2_2 + COLOR = 0x0001, ///< @SINCE_1_2_2 + FONT_FAMILY = 0x0002, ///< @SINCE_1_2_2 + POINT_SIZE = 0x0004, ///< @SINCE_1_2_2 + FONT_STYLE = 0x0008, ///< @SINCE_1_2_2 + UNDERLINE = 0x0010, ///< @SINCE_1_2_2 + SHADOW = 0x0020, ///< @SINCE_1_2_2 + EMBOSS = 0x0040, ///< @SINCE_1_2_2 + OUTLINE = 0x0080 ///< @SINCE_1_2_2 + }; + }; + // Type Defs - /// @brief Text changed signal type. + /** + * @brief Text changed signal type. + * @SINCE_1_0.0 + */ typedef Signal TextChangedSignalType; - /// @brief Max Characters Exceed signal type. + + /** + * @brief Max Characters Exceed signal type. + * @SINCE_1_0.0 + */ typedef Signal MaxLengthReachedSignalType; /** - * @brief Create the TextField control. + * @brief Input Style changed signal type. + * @SINCE_1_2_2 + */ + typedef Signal InputStyleChangedSignalType; + + /** + * @brief Creates the TextField control. * @SINCE_1_0.0 - * @return A handle to the TextField control. + * @return A handle to the TextField control */ static TextField New(); @@ -155,7 +197,7 @@ public: * @brief Copy constructor. * * @SINCE_1_0.0 - * @param[in] handle The handle to copy from. + * @param[in] handle The handle to copy from */ TextField( const TextField& handle ); @@ -163,8 +205,8 @@ public: * @brief Assignment operator. * * @SINCE_1_0.0 - * @param[in] handle The handle to copy from. - * @return A reference to this. + * @param[in] handle The handle to copy from + * @return A reference to this */ TextField& operator=( const TextField& handle ); @@ -177,14 +219,14 @@ public: ~TextField(); /** - * @brief Downcast a handle to TextField. + * @brief Downcasts a handle to TextField. * - * If the BaseHandle points is a TextField the downcast returns a valid handle. - * If not the returned handle is left empty. + * If the BaseHandle points is a TextField, the downcast returns a valid handle. + * If not, the returned handle is left empty. * * @SINCE_1_0.0 - * @param[in] handle Handle to an object. - * @return handle to a TextField or an empty handle. + * @param[in] handle Handle to an object + * @return Handle to a TextField or an empty handle */ static TextField DownCast( BaseHandle handle ); @@ -210,17 +252,31 @@ public: * void YourCallbackName( TextField textField ); * @endcode * @SINCE_1_0.0 - * @return The signal to connect to. + * @return The signal to connect to */ MaxLengthReachedSignalType& MaxLengthReachedSignal(); + /** + * @brief This signal is emitted when the input style is updated as a consequence of a change in the cursor position. + * i.e. The signal is not emitted when the input style is updated through the property system. + * + * A callback of the following type may be connected. The @p mask parameter notifies which parts of the style have changed. + * @code + * void YourCallbackName( TextField textField, TextField::InputStyle::Mask mask ); + * @endcode + * + * @SINCE_1_2_2 + * @return The signal to connect to + */ + InputStyleChangedSignalType& InputStyleChangedSignal(); + public: // Not intended for application developers /** * @brief Creates a handle using the Toolkit::Internal implementation. * * @SINCE_1_0.0 - * @param[in] implementation The Control implementation. + * @param[in] implementation The Control implementation */ DALI_INTERNAL TextField( Internal::TextField& implementation ); @@ -228,7 +284,7 @@ public: // Not intended for application developers * @brief Allows the creation of this Control from an Internal::CustomActor pointer. * * @SINCE_1_0.0 - * @param[in] internal A pointer to the internal CustomActor. + * @param[in] internal A pointer to the internal CustomActor */ explicit DALI_INTERNAL TextField( Dali::Internal::CustomActor* internal ); };