virtual void SelectNone() = 0;
/**
+ * @brief Called to set the selection postions in the texts.
+ * @param start start selection position.
+ * @param end end selection position.
+ */
+ virtual void SelectText(const uint32_t start, const uint32_t end) = 0;
+
+ /**
* @brief Retrive Selected text.
* @return The seletced text.
*/
virtual string GetSelectedText() const = 0;
+
+ /**
+ * @brief Called when the selection has been changed.
+ *
+ * @param oldStart the selection handles start position before the change.
+ * @param oldEnd the selection handles end position before the change.
+ * @param newStart the selection handles start position after the change.
+ * @param newEnd the selection handles end position after the change.
+ */
+ virtual void SelectionChanged(uint32_t oldStart, uint32_t oldEnd, uint32_t newStart, uint32_t newEnd) = 0;
};
} // namespace Text