/**
* @brief Called to signal that caret (cursor position) has been moved.
*/
- virtual void CursorMoved(unsigned int position) = 0;
+ virtual void CursorPositionChanged(unsigned int oldPosition, unsigned int newPosition) = 0;
/**
* @brief Called to signal that text has been inserted or deleted.
* @brief Add a decoration.
*
* @param[in] decoration The actor displaying a decoration.
+ * @param[in] type Whether this decoration is a layer or not, which layer it is.
* @param[in] needsClipping Whether the actor needs clipping.
*/
- virtual void AddDecoration(Actor& actor, bool needsClipping) = 0;
+ virtual void AddDecoration(Actor& actor, DecorationType type, bool needsClipping) = 0;
/**
* @brief Gets the color of the control.
* @param[in] editable The editable status.
*/
virtual void SetEditable(bool editable) = 0;
+
+ /**
+ * @brief Called to copy the selected text.
+ * @return The copied text.
+ */
+ virtual string CopyText() = 0;
+
+ /**
+ * @brief Called to cut the selected text.
+ * @return The cut text.
+ */
+ virtual string CutText() = 0;
+
+ /**
+ * @brief Called to paste the most recent clipboard text item into the control.
+ */
+ virtual void PasteText() = 0;
};
} // namespace Text