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-editor.h;h=8108e586bc42fc005e071a5c816c71655a36d74e;hp=1de373027bc64b01f0ac943478ccde99adb58a38;hb=049a2eb5fc5f2fbd180ab85a72da8ca923fbf6b5;hpb=479693b4fd773eb8888ae401d02b49188293e231 diff --git a/dali-toolkit/public-api/controls/text-controls/text-editor.h b/dali-toolkit/public-api/controls/text-controls/text-editor.h index 1de3730..8108e58 100644 --- a/dali-toolkit/public-api/controls/text-controls/text-editor.h +++ b/dali-toolkit/public-api/controls/text-controls/text-editor.h @@ -40,9 +40,10 @@ class TextEditor; * @brief A control which provides a multi-line editable text editor. * * * Signals - * | %Signal Name | Method | - * |----------------------|-----------------------------------------------------| - * | textChanged | @ref TextChangedSignal() | + * | %Signal Name | Method | | + * |----------------------|--------------------------------|--------------------| + * | textChanged | @ref TextChangedSignal() | @SINCE_1_1.37 | + * | inputStyleChanged | @ref InputStyleChangedSignal() | @SINCE_1_2_2 | * */ class DALI_IMPORT_API TextEditor : public Control @@ -51,6 +52,7 @@ public: /** * @brief The start and end property ranges for this control. + * @SINCE_1_1.37 */ enum PropertyRange { @@ -60,16 +62,21 @@ public: /** * @brief An enumeration of properties belonging to the TextEditor class. + * @SINCE_1_1.37 */ struct Property { + /** + * @brief An enumeration of properties belonging to the TextEditor class. + * @SINCE_1_1.37 + */ enum { RENDERING_BACKEND = PROPERTY_START_INDEX, ///< name "renderingBackend", The type or rendering e.g. bitmap-based, type INT @SINCE_1_1.37 TEXT, ///< name "text", The text to display in UTF-8 format, type STRING @SINCE_1_1.37 TEXT_COLOR, ///< name "textColor", The text color, type VECTOR4 @SINCE_1_1.37 FONT_FAMILY, ///< name "fontFamily", The requested font family, type STRING @SINCE_1_1.37 - FONT_STYLE, ///< name "fontStyle", The requested font style, type STRING @SINCE_1_1.37 + 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_1.37 HORIZONTAL_ALIGNMENT, ///< name "horizontalAlignment", The text horizontal alignment, type STRING, values "BEGIN", "CENTER", "END" @SINCE_1_1.37 SCROLL_THRESHOLD, ///< name "scrollThreshold" Vertical scrolling will occur if the cursor is this close to the control border, type FLOAT @SINCE_1_1.37 @@ -93,40 +100,81 @@ public: ENABLE_MARKUP, ///< name "enableMarkup", Whether the mark-up processing is enabled. type BOOLEAN @SINCE_1_1.37 INPUT_COLOR, ///< name "inputColor", The color of the new input text, type VECTOR4 @SINCE_1_1.37 INPUT_FONT_FAMILY, ///< name "inputFontFamily", The font's family of the new input text, type STRING @SINCE_1_1.37 - INPUT_FONT_STYLE, ///< name "inputFontStyle", The font's style of the new input text, type STRING @SINCE_1_1.37 + 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_1.37 LINE_SPACING, ///< name "lineSpacing", The default extra space between lines in points, type FLOAT @SINCE_1_1.37 INPUT_LINE_SPACING, ///< name "inputLineSpacing" The extra space between lines in points. It affects the whole paragraph where the new input text is inserted, type FLOAT @SINCE_1_1.37 - 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 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 + LINE_SPACING = 0x0010, ///< @SINCE_1_2_2 + UNDERLINE = 0x0020, ///< @SINCE_1_2_2 + SHADOW = 0x0040, ///< @SINCE_1_2_2 + EMBOSS = 0x0080, ///< @SINCE_1_2_2 + OUTLINE = 0x0100 ///< @SINCE_1_2_2 }; }; // Type Defs - /// @brief Text changed signal type. + /** + * @brief Text changed signal type. + * @SINCE_1_1.37 + */ typedef Signal TextChangedSignalType; /** + * @brief Input Style changed signal type. + * @SINCE_1_2_2 + */ + typedef Signal InputStyleChangedSignalType; + + /** * @brief Create the TextEditor control. + * + * @SINCE_1_1.37 * @return A handle to the TextEditor control. */ static TextEditor New(); /** * @brief Creates an empty handle. + * + * @SINCE_1_1.37 */ TextEditor(); /** * @brief Copy constructor. * + * @SINCE_1_1.37 * @param[in] handle The handle to copy from. */ TextEditor( const TextEditor& handle ); @@ -134,6 +182,7 @@ public: /** * @brief Assignment operator. * + * @SINCE_1_1.37 * @param[in] handle The handle to copy from. * @return A reference to this. */ @@ -143,6 +192,7 @@ public: * @brief Destructor. * * This is non-virtual since derived Handle types must not contain data or virtual methods. + * @SINCE_1_1.37 */ ~TextEditor(); @@ -152,6 +202,7 @@ public: * If the BaseHandle points is a TextEditor the downcast returns a valid handle. * If not the returned handle is left empty. * + * @SINCE_1_1.37 * @param[in] handle Handle to an object. * @return handle to a TextEditor or an empty handle. */ @@ -166,15 +217,33 @@ public: * @code * void YourCallbackName( TextEditor textEditor ); * @endcode + * + * @SINCE_1_1.37 * @return The signal to connect to. */ TextChangedSignalType& TextChangedSignal(); + /** + * @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( TextEditor textEditor, TextEditor::InputStyle::Mask mask ); + * @endcode + * + * @SINCE_1_2_2 + * @return The signal to connect to. + */ + InputStyleChangedSignalType& InputStyleChangedSignal(); + public: // Not intended for application developers + /// @cond internal /** * @brief Creates a handle using the Toolkit::Internal implementation. * + * @SINCE_1_1.37 * @param[in] implementation The Control implementation. */ DALI_INTERNAL TextEditor( Internal::TextEditor& implementation ); @@ -182,9 +251,11 @@ public: // Not intended for application developers /** * @brief Allows the creation of this Control from an Internal::CustomActor pointer. * + * @SINCE_1_1.37 * @param[in] internal A pointer to the internal CustomActor. */ explicit DALI_INTERNAL TextEditor( Dali::Internal::CustomActor* internal ); + /// @endcond }; /**